diff --git a/doc/3d.md b/doc/3d.md new file mode 100644 index 0000000..37e5304 --- /dev/null +++ b/doc/3d.md @@ -0,0 +1,52 @@ +# 3d 结构 + +## 格式 + +### gltf + json bin + 3d结构 关键帧 骨骼 + 纹理、材质、基色、粗糙度、金属度 + 场景、相机 + 外链引用 + bpr + +![截屏2023-02-03 13.49.02](https://public.veypi.com/img/screenshot/20230203135155.png) + +[Gltf 规范](https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html) + +scene:glTF格式的场景结构描述条目。它通过引用node来定义场景图。 +node:场景图中的一个结点。它可以包含一个变换(比如旋转或平移),引用更多的子结点。它可以引用网格和相机,以及描述网格变换的蒙皮。 +camera:定义了用于渲染场景的视锥体配置。 +mesh:描述了场景中出现的3D对象的网格数据。它引用的accessor对象可以用来访问真实的几何数据。它引用的material对象定义了3D对象的外观。 +skin:定义了用于蒙皮的参数,参数的值通过一个accessor对象获得。 +animation:描述了一些结点如何随时间进行变换(比如旋转或平移)。 +accessor:一个访问任意数据的抽象数据源。被mesh、skin和animation元素使用来提供几何数据,蒙皮参数和基于时间的动画值。它通过引用一个bufferView对象,来引用实际的二进制数据。 +material:包含了定义3D对象外观的参数。它通常引用了用于3D对象渲染的texture对象。 +texture:定义了一个sampler对象和一个image对象。sampler对象定义了image对象在3D对象上的张贴方式。 + +[场动画 场特效](https://www.wangshaoxing.com/blog/how-to-draw-a-heatmap.html): + 动态贴图 + + + +整体数据流: 硬件-> 传感器-> mcu-> 通信节点-> 算法节点-> gltf编码替换-> 服务器->前端 + + + +### dae + + xml + 骨骼节点树,3d结构、材质、动画 + +### obj + 文本格式 + 静态多边形模型、纹理 + 主流软件接支持导入导出 + 不包含动画、材质、骨骼、粒子 + +### stl + 三角面静态模型 + +### bvh + 动作捕捉格式,包含骨骼和肢体关节旋转数据 +