X File ist nur halb und schwarz
-
Hey!
Wisst ihr, was ich falsch machen könnte?
LPD3DXBUFFER d3dMaterialBuffer = NULL; D3DXLoadMeshFromX(fileName, D3DXMESH_SYSTEMMEM, d3dDev, NULL, &d3dMaterialBuffer, NULL, &materials, &d3dXMesh); D3DXMATERIAL* d3dxMaterial = (D3DXMATERIAL*)d3dMaterialBuffer->GetBufferPointer(); d3dMaterial = new D3DMATERIAL9[materials]; d3dTexture = new LPDIRECT3DTEXTURE9[materials]; for(unsigned int i = 0; i < materials; i++) { d3dMaterial[i] = d3dxMaterial[i].MatD3D; d3dMaterial[i].Ambient = d3dMaterial[i].Diffuse; D3DXCreateTextureFromFile(d3dDev, d3dxMaterial[i].pTextureFilename, &d3dTexture[i]); } d3dMaterialBuffer->Release(); d3dDev->Clear( 0, NULL, D3DCLEAR_TARGET, D3DCOLOR_XRGB(20,20,60), 1.0f, 0 ); d3dDev->BeginScene(); d3dDev->SetTransform(D3DTS_WORLD, &xMeshMat); for(unsigned i = 0; i < materials; i++) { d3dDev->SetMaterial(&d3dMaterial[i]); d3dDev->SetTexture(0, d3dTexture[i]); xMesh.d3dXMesh->DrawSubset(i); } d3dDev->EndScene(); d3dDev->Present( NULL, NULL, NULL, NULL );Es wird nur der obere Teil des Modells gezeichnet und ohne Texturen.
Keine Funktion schlägt fehl, daher die Texturen werden geladen.MfG
-
Hatte
d3dDev->SetRenderState( D3DRS_LIGHTING, FALSE ); d3dDev->SetRenderState( D3DRS_ZENABLE, TRUE );vergessen. Nun ist das Modell texturiert, aber immer noch fehlt ein großes Stück davon. Wenn ich einen Screen machen will, wird der Desktop aufgenommen...
MfG
-
Und natürlich bei Clear D3DCLEAR_ZBUFFER vergessen.

Hat sich erledigt...sorry