生产游戏系统将什么打包到 WebGL 的属性字段中?
What do production game systems pack into the attribute fields in WebGL?
顶点缓冲区中除了位置之外,好像还可以传入很多东西,比如颜色。复杂环境中生产游戏系统使用的所有属性的列表是什么?什么是好的例子?想到的一些事情:
- velocity/torque
- mass/density
- temp/energy
- emission/absorption
有没有共同点?
除了位置、纹理坐标和法线之外,没有一组通用的东西。也许还有顶点颜色、双法线和切线。否则一切都是游戏特定的。
大多数游戏不使用物理着色器,因此速度、扭矩、质量、密度、温度、能量、发射、吸收不是着色器的常见输入。
虽然 per-vertex 属性非常特定于游戏,但我还是根据类别列出了一些。
几何数据
- 职位
- 法线
- 纹理坐标(多个,基于纹理数量)
- Tangent、Bitagent(用于法线贴图计算)
- 关节权重(关节id,权重)
- Joint transform matrix(关节的变换矩阵)
- 详细程度(曲面细分)
Material数据
- 顶点颜色
- 反射值
- 折射值
- 各种灯光信息(自发光、环境光和其他方法)
物理数据
- 质量/密度
- 力
- 速度
粒子数据
- 指数
- 年龄
- 终生
- 尺码
- 速度
- angular 速度
请随时更新此 space。
顶点缓冲区中除了位置之外,好像还可以传入很多东西,比如颜色。复杂环境中生产游戏系统使用的所有属性的列表是什么?什么是好的例子?想到的一些事情:
- velocity/torque
- mass/density
- temp/energy
- emission/absorption
有没有共同点?
除了位置、纹理坐标和法线之外,没有一组通用的东西。也许还有顶点颜色、双法线和切线。否则一切都是游戏特定的。
大多数游戏不使用物理着色器,因此速度、扭矩、质量、密度、温度、能量、发射、吸收不是着色器的常见输入。
虽然 per-vertex 属性非常特定于游戏,但我还是根据类别列出了一些。
几何数据
- 职位
- 法线
- 纹理坐标(多个,基于纹理数量)
- Tangent、Bitagent(用于法线贴图计算)
- 关节权重(关节id,权重)
- Joint transform matrix(关节的变换矩阵)
- 详细程度(曲面细分)
Material数据
- 顶点颜色
- 反射值
- 折射值
- 各种灯光信息(自发光、环境光和其他方法)
物理数据
- 质量/密度
- 力
- 速度
粒子数据
- 指数
- 年龄
- 终生
- 尺码
- 速度
- angular 速度
请随时更新此 space。