[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 2chのread.cgiへ]
Update time : 08/05 07:30 / Filesize : 218 KB / Number-of Response : 867
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Windowsゲームプログラミング 質問スレ



210 名前:sage [2006/06/24(土) 03:03:15 ID:m69O2sj/]
すみません、質問なんですが
DirectXのD3DXIntersect関数を使い
当たったメッシュの頂点座標を取得したいのですが
色々触って見ても変な座標しか取れません
変な所があれば教えていただけないでしょうか

//レイを取得
D3DXIntersect(pThing->pMesh,&vecStart,&vecDirection,&boHit,&index,NULL,NULL, pfDistance,&pAllHits,NULL);
// 三角形の頂点バッファを取得する
if( pAllHits != NULL )
{
pHit = (LPD3DXINTERSECTINFO)pAllHits->GetBufferPointer();
index = pHit[0].FaceIndex;
pAllHits->Release();
}

D3DXVECTOR3 vertex[3];
DWORD fvf = pMesh->GetFVF();
DWORD versize = D3DXGetFVFVertexSize(fvf);

PBYTE pvertexBuffer;
pMesh->LockVertexBuffer(D3DLOCK_READONLY,(LPVOID*)&pvertexBuffer);

pvertexBuffer += versize*(index - 1);
for( DWORD i=0; i<3; i++)
{
vertex[i] = *(D3DXVECTOR3*)pvertexBuffer;
pvertexBuffer += versize;
}






[ 続きを読む ] / [ 携帯版 ]

全部読む 前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<218KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef