我正在管理 3D Assets 库的创建,预计每次传递 5,000 个模型,其中多个传递来自多个模型创建供应商。正在进行的作品均为FBX格式,最终交付为二进制gltf(glb)格式。
我一直在阅读 gltf/glb 格式,但没有看到任何可以放置“用户数据”的字段。我想在每个 glb 模型中放置一个字符串来标识模型,以便可以验证模型在存储文件系统中的位置以及数据库中的信息放置。
到目前为止,我已经看到了 gltf 格式的 3D 资源所需的一切,但是是否有用于用户字符串信息的字段?我可以很容易地想象,在最终库中的数以万计的模型中,有些模型被人类意外地放置在错误的目录中,和/或在输入模型的数据库信息时出现粗手指输入错误,和/或简单地输入模型时出现粗手指错误。文件名。
我想要一个用于标识字符串的用户数据字段,以便可以使用在该用户数据字段之外运行的软件自动处理文件系统中的模型存储和数据库中的信息放置。同样,用户数据字段可用于验证收到的模型是否是开发时请求的模型,并且可在遍历存储目录层次结构的每个文件时使用,以使用文件名以外的其他内容验证该层次结构中每个文件的存在.
最佳答案
glTF 或 GLB 文件中的每个对象都有一个可以存储任意 JSON 内容的 .extras
属性。例如,scene.extras
或asset.extras
可能是您所描述的数据的自然位置。
然后,3D 库和游戏引擎应读取该数据并将其提供给用户应用程序。例如,3D 库 https://threejs.org/将 glTF 文件中的 .extras
字段放入其 Object3D.userData
中值(value)观。 Blender ,一个建模程序,使用 Custom Properties .
关于json - 以 gltf 2.0 格式保存的 3D 模型可以支持任意用户数据吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71280384/