【发布时间】:2020-09-23 23:09:44
【问题描述】:
使用 Blender 的内置 Draco 压缩导出到 glTF 后,所有扩展属性在资产中的第一个基元之后未对齐。
示例:第一个很好,但接下来的两个错位导致错误。
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 0,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 2,
"TEXCOORD_1" : 3
}
}
},
"indices" : 4,
"material" : 0,
"mode" : 4
},
{
"attributes" : {
"POSITION" : 5,
"NORMAL" : 6,
"TEXCOORD_0" : 7,
"TEXCOORD_1" : 8
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 4,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 7,
"TEXCOORD_1" : 8
}
}
},
"indices" : 9,
"material" : 1,
"mode" : 4
},
{
"attributes" : {
"POSITION" : 10,
"NORMAL" : 11,
"TEXCOORD_0" : 12,
"TEXCOORD_1" : 13
},
"extensions" : {
"KHR_draco_mesh_compression" : {
"bufferView" : 5,
"attributes" : {
"POSITION" : 0,
"NORMAL" : 1,
"TEXCOORD_0" : 12,
"TEXCOORD_1" : 13
}
}
},
我了解到,一种解决方案可能是更改第二个和更多原语的extensions 内的属性,以便它们遵循递增顺序。但是,在处理大量对象时,此手动过程可能会导致一些问题,因为它需要大量手动工作,这可能会导致结果中出现错误和错误。
我的问题是Draco 和Three.js 的最新版本是否修复了这些错误? 我们的应用目前在three.js r107上运行。
【问题讨论】: