- 博客(15)
- 收藏
- 关注
原创 【WebGPU学习杂记】JS调用WebAssembly的延迟是多少?
本文通过AssemblyScript— 通过写ts编译到wasm的语言生成的wasm文件,用到了SIMD技术、Relaxed-SIMD技术。测试JS调用WebAssembly的延迟,然后看下wasm在mini计算下的大致性能(测试矩阵乘法)。
2025-07-26 05:27:11
1245
原创 【WebGPU学习杂记】WebAssembly中的relaxed_madd指令到底做了什么?
让我们用数学形式来表示这三个输入向量abc向量 $ \vec{a} = \begin{pmatrix} a_0 \ a_1 \ a_2 \ a_3 \end{pmatrix} $向量 $ \vec{b} = \begin{pmatrix} b_0 \ b_1 \ b_2 \ b_3 \end{pmatrix} $向量 $ \vec{c} = \begin{pmatrix} c_0 \ c_1 \ c_2 \ c_3 \end{pmatrix} $这里的a0a1c3a0a1。
2025-07-26 04:48:21
864
原创 【WebGPU学习杂记】数学基础拾遗(2)变换矩阵中的齐次坐标推导与几何理解
今天打算开始3D数学基础的复习,本文假设你了解以下概念:一次多项式、矩阵、向量。基于以上拓展的概念 归一化、2~3阶矩阵的几何意义。
2025-07-25 20:54:59
641
原创 【WebGPU学习杂记】WGSL中的数据类型和对齐方式
在WebGPU中手动做Uniform的对齐容易出错,以下是类型的字节对齐参照表以及举例子看如何做对齐。**需要注意字节对齐不仅仅与数据类型有关还与数据字段的先后顺序有关。**,建议封装一个对齐库或使用 [webgpu-utils](https://github.com/greggman/webgpu-utils)。最终有一段完整的代码示例包括 `WGSL` 代码 以及对应的 `bindGroup` 布局设置。
2025-07-21 23:29:16
1157
原创 【WebGPU学习杂记】数学基础拾遗(1)三角学基础
一起来打下图形学的数学基础吧,本文主要记录一些基础数学中的关键术语、公式、定义,方便查阅并基于此拓展和补充。部分内容需要有函数基础。
2025-07-21 16:53:54
946
原创 【WebGPU学习杂记】纹理格式表
表示纹理中的数据从 0 到 N,其中 N 是该位数的最大整数值。格式就会从不可过滤浮点格式转换为浮点格式,这些纹理格式无需其他更改即可正常工作。如果有多个字母数字组合,则指定每个通道的位数。使用时可以选择在着色器中访问数组中的哪种纹理,通常用于地形渲染。,数据范围是从位数所代表的最负整数到最正整数。的格式,这意味着可能需要手动创建一个绑定组布局,不能使用。字母表示纹理支持的颜色通道支持红色和绿色(2 个通道)。每种类型的纹理有不同的限制,在设置。末尾的单词表示通道中的数据类型。纹理的对比而言,在所有。
2025-07-20 01:21:50
719
原创 【WebGPU学习杂记】纹理贴图magFilter的Shader简易模拟
【代码】【WebGPU学习杂记】纹理贴图magFilter的Shader简易模拟。
2025-07-19 23:45:52
194
原创 【WebGPU学习杂记】纹理是个啥?UV?
纹理坐标通常用UV(W)来表示,这个命名法源于数学中对参数曲线, 图形学采用这个命名,沿用了数学中的习惯。在数学里,经常用 u、v 表示二维参数面上的参数,如果是三维参数曲面,额外用 w 表示。早先 S 和 T 也曾被使用(OpenGL 中仍然用 S, T)。后来为了统一命名和避免与其他数学变量(如 S 表示缩放、T 表示时间)混淆,很多系统转而使用 U, V。有时你还会看到 W 被加入,这是用于 三维纹理(3D texture) 的第三个坐标轴,对应体积纹理。比如NURBS 曲线贝塞尔曲面。
2025-07-18 16:58:10
639
原创 【WebGPU学习杂记】关于format的疑惑,rgba8unorm?bgra8unorm?
无需修改着色器代码或处理 BGRA 转换。WebGPU 会自动处理bgra8unorm的物理存储,而你的逻辑始终基于 RGBA。这是图形 API 的常见设计,旨在简化开发并保持跨平台一致性。场景推荐格式原因Canvas 交换链纹理bgra8unorm(自动)显示系统优化,自动 RGBA↔BGRA 转换普通 2D 纹理rgba8unorm跨平台兼容性、标准化、避免隐式转换Canvas 的 BGRA 是显示优化,普通纹理的 RGBA 是通用规则。
2025-07-18 09:09:40
818
原创 【WebGPU学习杂记】Adapter是啥?
动态 buffer offset 的最大数量(如 bind group 中用 dynamic offset)他是对图形计算器的抽象,对应到具体的集成显卡、独显、甚至软件模拟的驱动。个颜色附件(MRT:multi render target)个资源(buffer、texture、sampler)表示一次渲染/计算管线中最多可绑定 4 个。每个 shader 阶段最多可用 12 个。+ 最多 20 顶点缓冲区(因为。// 最大 X 可达 65535。指每个像素每个采样点最多可用。// 必须 256 对齐。
2025-07-17 18:16:27
1040
原创 【WebGPU学习杂记】Uniform和Stroage的区别和适用场景
想象一下你在一个大型工厂里指挥一群机器人(Shader)干活。现在我们来详细拆解这个比喻,对应到你的问题:区别、性能、存储、场景。
2025-07-16 11:49:51
1205
原创 GledeServer一款基于Bun的高性能服务器
这是一款高性能的, 在[email protected].*后已可以逐步在生产环境应用,我用得早, 踩过一些内存泄漏的坑,值得高兴的是目前官方fix的差不多了,已稳定运行6个月未发生重启情况。⚠️保险起见建议还是采用的pm2统一管理。win开发环境使用它建议上安装wsl,你会得到接近的开发体验。
2025-04-27 13:23:00
392
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人