自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 WebGPU 万能动画公式

要实现不同形态/形状之间的动态变换,核心算法很简单,就是通过来实现。在进行动态变换时,通常不同形态或形状之间的顶点数量会不相等。为了使两边的顶点能够一一对应起来,我们可以通过随机或插值的方式来补充顶点。这种方式不会破坏顶点数较少一边的造型,相当于某些点有了分身。通过对对应顶点的插值计算,就能够实现形态的变换。此万能动画公式的优点在于它的简单性和适用性。无论是对于简单的形状变换还是复杂的动态效果,都可以通过构造同等数量的顶点来实现。而且,运用不同的插值算法,还能灵活地控制形态变换的程度和速度。

2023-07-09 16:26:55 235

原创 wgpu 与 Android App 集成

大量非游戏类 App 也经常有使用图形 API 的需求(比如,图表、图片滤镜等),这些 App 需要用到大量的系统 UI 组件及交互,winit 这种接管整个 App 窗口的方式是不合适的。所以,将 wgpu 集成到现有的 iOS、Android App 且不使用 winit 将非常有用。

2022-12-30 14:20:00 386

原创 wgpu 与 iOS App 的集成

大量非游戏类 App 也经常有使用图形 API 的需求(比如,图表、图片滤镜等),这些 App 需要用到大量的系统 UI 组件及交互,winit 这种接管整个 App 窗口的方式是不合适的。所以,将 wgpu 集成到现有的 iOS、Android App 且不使用 winit 将非常有用。

2022-12-29 13:59:09 318

原创 WebGPU 计算管线

计算管线(ComputePipeline)是 WebGPU 中控制计算着色器阶段的管线,它适用于各种 GPU 通用计算场景,这是 WebGL 所不具备的。我们能通过绑定的存储缓冲区及存储纹理来获得管线计算输出。

2022-12-27 11:36:55 560 1

原创 WebGPU 着色器语言 WGSL 介绍及与 GLSL 的对比

WGSL 的目标不是要与 GLSL 兼容,它是对现代着色器语言的全新重新设计。2020 年 4 月 27 日,WGSL 标准有了第一次提交。自此开始,wgpu 和 dawn 都摆脱了对 shaderc 之类复杂繁重的着色器转译工具的依赖。wgpu 里使用的 WGSL 转译工具叫 naga, kvark 有一篇博客(Shader translation benchmark)对比了 naga 相比于其它转译工具的性能优化,总体来说,有 10 倍以上的性能优势。

2022-11-08 15:23:57 2361

原创 wgpu 中的窗口程序

在 wgpu 中调用窗口程序最简单的方式就是使用 winit 包(crate)。但这不是必须的,实现一个 wgpu 窗口程序只需要实现 raw-window-handle 里定义的两个抽象接口即可。如果有兴趣自己动手来为 wgpu 实现一个窗口程序,可以参考 wgpu-on-app,在我的 wgpu 教程中的 调试与集成 部分也有详情的介绍。

2022-11-01 11:31:01 647

原创 每一个大前端(Web + App)工程师都应该学习 wgpu

计算机图形学做为前端的底层技术, 我相信大部分前端(Web + App)工程师都有过学习图形学的想法。WebGPU做为面向下一个十年的跨平台图形 API, 可以为我们节省分别学习各平台图形 API 的时间精力。

2022-10-31 15:01:51 1066

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除