我的renderMd2函數出現問題(只是不好的代碼)。OpenGl:MD2動畫性能問題
它只是繪製與
glBegin(GL_TRIANGLES);
for(i = 0; i < numTriangles; i++)
{
CalculateNormal(vList[triIndex[i].meshIndex[0]].point,
vList[triIndex[i].meshIndex[2]].point,
vList[triIndex[i].meshIndex[1]].point);
if (modelTex != NULL)
glTexCoord2f(st[triIndex[i].stIndex[0]].s,
st[triIndex[i].stIndex[0]].t);
glVertex3fv(vList[triIndex[i].meshIndex[0]].point);
if (modelTex != NULL)
glTexCoord2f(st[triIndex[i].stIndex[2]].s ,
st[triIndex[i].stIndex[2]].t);
glVertex3fv(vList[triIndex[i].meshIndex[2]].point);
if (modelTex != NULL)
glTexCoord2f(st[triIndex[i].stIndex[1]].s,
st[triIndex[i].stIndex[1]].t);
glVertex3fv(vList[triIndex[i].meshIndex[1]].point);
}
glEnd();
幀時間從1.852ms增加只用一個模型來2.128ms模型(保存在floatarrays)的每個頂點......
任何教程或建議以提高性能(我聽說過顯示列表,但我認爲它們只是用於靜態的東西)
這個問題的一個問題是,我有以計算第一頂點的每幀 – 2011-04-10 20:02:40
@Alex克魯格:正常的三角形保持相同。加載網格時只需計算它 – Heisenbug 2011-04-10 20:06:22