最終更新: mikk_ni3_92 2009年10月05日(月) 15:28:49履歴
現在地:メニュー >> NVIDIA_SDK >> NVIDIA_SDK_05
【例】
※頂点数がそう多くない場合は、上のような描画で大丈夫だが、
サンプル付属の「dragon.obj」のような頂点数が多い場合は、VBOなどを使う方がいいかもしれない。
- 「objファイル」を読み込む
- 法線などを計算
- モデルをコンパイルする
- 描画(頂点配列を使う)
【例】
if(!model.loadModelFromFile("dolphins.obj")) //読み込み { std::cerr << "Can't Load OBJ file\n"; return -1; } model.computeNormals();//法線の計算 model.compileModel();//コンパイル model.rescale(1);//サイズ1にする ... ... //------ 描画(インデックスを使って描画) -------// glEnableClientState(GL_VERTEX_ARRAY); glVertexPointer(model.getPositionSize(), GL_FLOAT, 0, model.getPositions()); glDrawElements(GL_TRIANGLES,model.getIndexCount(), GL_UNSIGNED_INT, model.getPositionIndices()); glDisableClientState(GL_VERTEX_ARRAY);
※頂点数がそう多くない場合は、上のような描画で大丈夫だが、
サンプル付属の「dragon.obj」のような頂点数が多い場合は、VBOなどを使う方がいいかもしれない。
- NVIDIA_SDK_05::まとめ1(頂点配列、glDrawElementsを使った描画)
- NVIDIA_SDK_05::まとめ2(VBOを使った描画1)
- NVIDIA_SDK_05::まとめ3(VBOを使った描画2)