读取GLTF顶点颜色编码

时间:2018-06-17 13:06:44

标签: gltf

我正在尝试从官方测试样本集中解析BoxVertexColors GLTF 2.0文件,并将信息存储在我自己的数据结构中。我有位置,法线等工作,但解析顶点颜色网格属性的结果很奇怪。

.gltf表示格式为5126(= float)和VEC4,起始偏移量为0x288。查看buffer.bin文件时,0x288处的内容以

开头
1D E9 06 30   7A 7A 25 3C   FE FF 7F 3F   51 D2 27 30

对我来说看起来不像浮子,更不用说编码颜色了。我原本预计有四个代表RGBA的花车。我错过了什么......?

1 个答案:

答案 0 :(得分:1)

是什么让您认为数据不正确?

  (0x3006E91D, 0X3C257A7A, 0x3F7FFFFE, 0x3727D251) =>
  (4.90802e-10, 0.0101, 1.0, 6.10531e-10) => (simplified)
  (0, 0.0101, 1.0, 0)

除了可能无意义的阿尔法值之外,这似乎是一个完全合理的起始位置,显然是计算出的颜色范围分布在立方体上。

alpha值最终无关紧要,因为关联的材质没有指定blendMode设置,这反过来意味着它默认为OPAQUE,因此忽略透明度。

https://gltf-viewer.donmccurdy.com/中加载模型并进行断点确认数据已按您的预期进行解码:

JavaScript Debugger