我知道互联网上有很多关于此的资源,但它们似乎并没有帮助我。
我想要实现的目标:
我正在从将顶点存储在vector<Vector3>.
( Vector3is a sctructcontains float x, y, z)
它将三角形存储在map<int, vector<int>>
( 地图的关键是子网格和vector<int>三角形) 中
的 uv vector<Vector2>
(Vector2是一个struct包含float x, y)
和一个颜色值vector<Color>
( 颜色值适用于顶点,就像 uv 一样)
现在我想编写一个可以读取该数据并以最高性能将其绘制到屏幕上的代码
我得到了:
static void renderMesh(Mesh mesh, float x, float y, float z) {
if (mesh.triangles.empty()) return;
if (mesh.vertices.empty()) return;
if (mesh.uvs.empty()) return;
glColor3f(1, 1, 1);
typedef std::map<int, std::vector<int>>::iterator it_type;
for (it_type iterator = mesh.triangles.begin(); iterator != mesh.triangles.end(); iterator++) …Run Code Online (Sandbox Code Playgroud)