重複の可能性:
VBO - 索引付けなしの索引付け
ここに私の問題があります。巨大なモデル (100 万の顔) をレンダリングしたいのですが、顔のインデックス バッファーがあります。
このモデルのテクスチャを自分で生成しました。テクスチャの各領域を各三角形に適用する必要があります。時間がかかりすぎるため、モデルを適切に展開できません。Vertice は複数のテクスチャ座標を持つことができます。
VBO がないと、レンダラーは次のようになります。
glBegin(GL_TRIANGLES);
for (unsigned int i = 0; i < g_pModel->GetNbTriangle(); i++)
{
glTexCoord2f(TextCoord[6*i+0],TextCoord[6*i+1]);
glNormal3f(Normal[3*Triangle[i].x],Normal[3*Triangle[i].x+1],Normal[3*Triangle[i].x+2]);
glVertex3f(Vertex[Triangle[i].x].x,Vertex[Triangle[i].x].y,Vertex[Triangle[i].x].z);
glTexCoord2f(TextCoord[6*i+2],TextCoord[6*i+3]);
glNormal3f(Normal[3*Triangle[i].y],Normal[3*Triangle[i].y+1],Normal[3*Triangle[i].y+2]);
glVertex3f(Vertex[Triangle[i].y].x,Vertex[Triangle[i].y].y,Vertex[Triangle[i].y].z);
glTexCoord2f(TextCoord[6*i+4],TextCoord[6*i+5]);
glNormal3f(Normal[3*Triangle[i].z],Normal[3*Triangle[i].z+1],Normal[3*Triangle[i].z+2]);
glVertex3f(Vertex[Triangle[i].z].x,Vertex[Triangle[i].z].y,Vertex[Triangle[i].z].z);
}
glEnd();
私のVBOでは、頂点と同じくらい多くのテクスチャ座標が必要なため、glTexCoordPointerを使用できません。これは私の場合ではありません。
VBO と私のシェーダー (私は GLSL を使用しています) でそれを行う方法はありますか?