# 模型数据
Tx3d Engine目前支持fbx、obj、gltf、glb格式的3D场景,可以使用主流的3D建模软件(C4D、3D MAX、Maya、Blender)建模导出。
提示
glTF(GL Transmission Format)是khronos (opens new window)发布的一种能高效传输和加载3D场景的规范,与FBX、OBJ等传统模型格式一样,支持3D模型中的所有特效,强烈推荐使用gltf或glb格式数据!!!
glTF的产物一般分为(.gltf + .bin + 纹理)或者(.glb),前者适合图片体积大的场景,将纹理和模型差分开,可以异步加载模型和纹理;后者适合模型文件较大的场景,会将所有数据保存到同一个二进制文件中,需要等待所有数据解析完成才能展示模型。
模型数据加载完成后会解析成“结点树”结构,如下图所示,结点类型分为“Object3D”、“Group”、“Bone”、“Mesh”、“SkinnedMesh”、“DirectionalLight”、“PointLight”、“SpotLight”。其中“Object3D”、“Group”、“Bone”结点用于构建实体(Entity);“Mesh”和“SkinnedMesh”结点用于构建模型渲染组件(Model),如果“Mesh”或“SkinnedMesh”结点存在“Object3D”、“Group”、“Bone”类型子结点则会使用该结点创建实体;“DirectionalLight”、“PointLight”、“SpotLight”为灯光结点用于构建灯光组件。“Group”结点的所有“Mesh”子结点会被放到同一个模型渲染组件中。完成创建后会形成一个“实体树”并返回根实体。
创建前结点结构
创建后实体结构