WebGPU

WebGPU学习笔记:01认识WebGPU

2022-04-18  本文已影响0人  单炒饭

WebGPU入门

随着WebGPU日益成熟,本季度将赢来WebGPU正式版本的发布。关注WebGPU开发的小伙伴也越来越多。笔者也希望边学边记录分享给大家。

WebGPU 简介

由W3C组织定义的一个新的API标准,用于在Web上使用Javascript来控制GPU计算和绘制。该标准获得了目前所有主流厂商的支持,由大家一起参与WebGPU的发展。有望成为一个全平台支持的标准。

WebGPU拟补了过去WebGL的各种不足和背负的各种历史包袱,其主要接入现代图形API(Direct3D、Vulkman、Metal)。总之相比WebGL,其会更快、更强、更灵活,更符合Web现代的开发标准。

WebGL与WebGPU的那些事儿

WebGL相当于是在使用十几年前的OpenGL框架体系。而OpenGL本身就已经非常古老,有将近30年历史了。WebGL仅仅只实现了OpenGL ES 2.0和3.0的标准,已经无法满足现代GPU框架体系,也无法满足现在高性能的计算和渲染需求。苹果公司在2018年宣布抛弃OpenGL整个框架。在2015年前后,苹果、微软、Khronos分别推出了基于全新GPU框架的Metal(2014年)、Direct3D 12(2015年)、Vulkan(2016年),现在三者被大家统称为为现代图形学API。W3C在制定新的Web图形学标准也完全参考了新的三个图形学API,抛弃了OpenGL的整个框架。

了解WebGPU发展历程 @Intel 邵嘉炜

WebGPU支持现状

开发需求

工程搭建

接下来所有的代码操作入口将从 src/main.ts 开始

判断浏览器是否支持WebGPU

// 判断WebGPU是否可用,根据定义
const gpu = navigator.gpu;
if(gpu === undefined){
    throw new Error("浏览器不支持WebGPU");
};
上一篇 下一篇

猜你喜欢

热点阅读