# Mesh、Vertex 等组织关系

我们是 ECS 架构，一个 Entity 可以挂载一个 MeshComponent，这个 MeshComponent 就应当包含实际的 Mesh。

Mesh 是由一个 SubMesh 数组组成的。

Mesh 中应当有：包围盒（AABB？）、顶点格式（static？skinned？未来可以更多扩展如只有position、有多个uv通道等）、VertexBuffer（整个mesh用的所有顶点，这个VertexBuffer应该包含cpu和gpu两部分的数据，cpu部分用于网格破坏、各种编辑等，未来可以考虑cpu部分包含与否）、所有submesh、所有材质

SubMesh 中应当有：顶点的对应（indexStart、indexCount、firstVertex、vertexCount）、材质的索引

简单的参考：

<https://github.com/Ubpa/Utopia/blob/master/include/Utopia/Render/Mesh.h>\
<https://github.com/Ubpa/Utopia/blob/master/include/Utopia/Render/SubMeshDescriptor.h>
