固定関数パイプライン(シェーダーまたはエフェクトファイルなし)を使用して、DirectX9でスカイボックスをレンダリングしようとしています。立方体のレンダリングを表示できます。テクスチャを設定すると、すべての面が1つの奇妙な色(白や空白ではない)でペイントされます。テクスチャファイルは正しいキューブマップです。テクスチャ設定が設定されていないと思います。以下はコードスニペットです
// for creating the cube and the cube texture
HRESULT apiResult = D3DXCreateBox(g_pd3dDevice,1,1,1,&g_pMesh,NULL);
apiResult = D3DXCreateCubeTextureFromFile(g_pd3dDevice,L"cubeMap.dds",&g_pTexture);
両方のAPIがS_OKを返しています。
// for renderin the skybox
g_pd3dDevice->SetSamplerState(0,D3DSAMP_MIPFILTER,D3DTEXF_LINEAR);
g_pd3dDevice->SetSamplerState(0,D3DSAMP_MAGFILTER,D3DTEXF_LINEAR);
g_pd3dDevice->SetSamplerState(0,D3DSAMP_MINFILTER,D3DTEXF_LINEAR);
// set texture
g_pd3dDevice->SetTexture(0,g_pTexture);
// Begin the scene
if( SUCCEEDED( g_pd3dDevice->BeginScene() ) )
{
g_pMesh->DrawSubset(0);
g_pd3dDevice->EndScene();
}
// Present the backbuffer contents to the display
g_pd3dDevice->Present( NULL, NULL, NULL, NULL );
どの設定が欠落していますか?