私は過去数週間、私のキーボードで頭を叩いていました。私がやろうとしているのは、浮動小数点数の配列(GLfloat)と文字列ファイルのunsigned shorts(GLushort)の配列をオブジェクト-cの等価配列にロードして、オブジェクトをレンダリングできるようにすることです。私はファイルから頂点配列を読み込むための正しい形式
vector<float> vertices;
と
vector<GLushort> indices;
としてしかし、私は、私はこれらをレンダリングするために得ることができない理由を把握することはできません何らかの理由でベクトルオブジェクトにロードされた私の配列を持っています。
glVertexPointer(3, GL_FLOAT, sizeof(vertices[0])*6, &vertices[0]);
glNormalPoitner(GL_FLOAT, sizeof(vertices[0])*6, &vertices[3]);
glDrawElements(GL_TRIANGLES, sizeof(indices)/sizeof(indices[0]), GL_UNSIGNED_SHORT, indices);
サンプル配列は以下の通りです:
vertices: (Vx, Vy, Vz, Nx, Ny, Nz)
{10, 10, 0, 0, 0, 1,
-10, 10, 0, 0, 0, 1,
-10, -10, 0, 0, 0, 1,
10, -10, 0, 0, 0, 1};
indices: (v1, v2, v3)
{0, 1, 2,
0, 2, 3};
テキストファイルは、私はこのようなルックスをレンダリングするから、これらの配列をロードしたい:ここでは上記のレンダリングのための私のコードがある
4 //Number of Vertices
###Vertices###
v 10 10 0 0 0 1
v -10 10 0 0 0 1
v -10 -10 0 0 0 1
v 10 -10 0 0 0 1
###Object1###
2 //Number of faces
f 0 1 2
f 3 4 5
ベクターオブジェクトは取るのに最適なアプローチですか?そうでない場合は、何ですか?そして、私はこれらがレンダリングされないことを間違って何をしていますか?ありがとう。
"私はこれらをレンダリングすることができません"。代わりにあなたは何を...?クラッシュ?黒いスクリーン? – genpfault
申し訳ありませんが私は明確にしていない、それはちょうど私のクリアカラーの背景をレンダリングしていない。 glDrawElements行をコメントアウトした場合と同じです。私がやっていることをglDrawElementsよりも効率的にレンダリングする方法はありますか? – Davido