Ein (sicher bekanntes) z-buffer problem: von einer seite alles "übereinander"
-
hi!
also folgendes:
directx, scene mit 2 objekten (test für dx-init)
von einer seite: alles schick, objekte "richtig" sichtbar
dann drehung.
von anderer seite: zbuffer falsch, ich kann "durch die objecte sehen", oder besser: es wird alles gemischt.
gilt für objekte untereinander und objekte selbst.derzeit:
m_pD3Ddevice->SetRenderState(D3DRS_LIGHTING, FALSE); m_pD3Ddevice->SetRenderState(D3DRS_FILLMODE, D3DFILL_SOLID); //activate Z-Buffer m_pD3Ddevice->SetRenderState(D3DRS_ZENABLE, TRUE);
welches flag ist denn falsch?
*help*
-
die flags sind alle richtig, obwohl du dir alles bis auf
m_pD3Ddevice->SetRenderState(D3DRS_LIGHTING, FALSE);
sparen könntest, aber machs ruhig, is sicherer...
evtl. wär ein screenshot von dem prob recht hilfreich
wenn es von einer seite "richtig" und von der andren "falsch" aussieht, dann liegts wohl eher nicht am zbuffer...
-
also jetzt noch mal nach erheblichem testen:
es gibt keine "richtige ansicht":
das objekt was ich als zweites zeichne ist IMMER vorn.
??? komisch oder ??
hab jetzt noch das culling auf CCW gesetzt.. aber trotzdem kann ich zum Teil durch die objekte schauen (in jeder einstellung):
dort wo die objekte "abrunden" (nach hinten) kann ich die rückseite sehen.
(teekanne)sceenshot:
wie soll das gehen? müsst ich ja das bild irgendwo hochladen oder? hab nix derartiges....
-
hm, kann es sein, dass deine near clipping plane <= 0.0f ist?
mfg
-
ja. was heisst das?
-
krass das war die lösung
versteh ich aber net.
-
-
die near clipping plane muss einen wert über 0 haben.
so einfach ist dasmfg