- 172 名前:168 mailto:sage [2007/04/05(木) 12:45:08 ]
- メッシュBをメッシュAで切り取ろうと思ったのですがうまくいきません。
まずメッシュBの切断面だけ表示しようと思ったのですが 全く変化がありません。検討違いなことをやってるのでしょうか? m_pD3DDev->Clear(0,NULL,D3DCLEAR_STENCIL | D3DCLEAR_ZBUFFER | D3DCLEAR_TARGET, D3DCOLOR_XRGB(0,0,0),1.0,0);//バッファをクリア m_pD3DDev->BeginScene(); m_pD3DDev->SetRenderState(D3DRS_STENCILENABLE,TRUE);//ステンシルバッファを有効に m_pD3DDev->SetRenderState(D3DRS_STENCILFUNC,D3DCMP_ALWAYS);//常に合格 m_pD3DDev->SetRenderState(D3DRS_STENCILPASS,D3DSTENCILOP_REPLACE); m_pD3DDev->SetRenderState(D3DRS_STENCILZFAIL,D3DSTENCILOP_REPLACE); m_pD3DDev->SetRenderState(D3DRS_STENCILREF,0x1); m_pD3DDev->SetRenderState(D3DRS_STENCILMASK,0x1); m_pD3DDev->SetRenderState(D3DRS_STENCILWRITEMASK,0x1); RenderMeshA();//メッシュAを描画 m_pD3DDev->Clear(0,NULL,D3DCLEAR_ZBUFFER | D3DCLEAR_TARGET, D3DCOLOR_XRGB(0,0,0),1.0,0);//ステンシルバッファ以外をクリア m_pD3DDev->SetRenderState(D3DRS_STENCILFUNC,D3DCMP_EQUAL);//ステンシルが1のところを描画 RenderMeshB();//メッシュBを描画 m_pD3DDev->EndScene(); m_pD3DDev->Present(NULL,NULL,NULL,NULL);
|

|