D3DXLoadMeshFromXを使用すると、メッシュのサブセット、マテリアル、テクスチャなどを読み込むことができました。D3D、Vertex from Mesh
私が知りたいのは、メッシュの頂点情報(ピッキング用)です。
私のコードです。..
m_pMesh->PDIRECT3DVERTEXBUFFER9 pVB;
m_pMesh->GetVertexBuffer(&pVB);
void* Vtx = nullptr;
pVB->Lock(0, 0, (void**)&Vtx, 0);
は、その後、私は頂点のようなVTXの情報を知りたい、しかしVTXがvoidポインタです... 私はそのメッシュの構造体を知っていれば、私は情報頂点を知っているかもしれませんが、Iしないでください
私はあまりにも曖昧に答えると申し訳ありません。
ありがとうございます!私は 'g_Mesh.GetMesh() - > GetFVF()'をDWORDに変更しましたVTXFVF_TEX = D3DFVF_XYZ | D3DFVF_TEX0;次に、pVerticesには私が望む頂点情報しかありません。 –
もう一度、本当に感謝します。とにかく、私はあなたがピッキングについてコメントしていることについて少し興味があります。ピッキングすると、すべての頂点データをレンダリングすると同時に、頂点の三角形を見つけることができます。どんな問題にもなりますか? –
位置、頂点の法線、テクスチャ、頂点の色などレンダリングを実行するには、頂点バッファのGPUコピーが必要です。ピッキングするには、位置とインデックス(インデックス付きの三角形)のCPUコピーが必要です。 –