Skaliertes Mesh == unbeleuchtet
Verfasst: 15.11.2010, 16:58
Moin. Hab mich grad mal wieder ans progammiern gesetzt nachdem ich seit längerem die schnauze voll davon hatte :))
Mein Problem der "Schwarzen Kugeln" wie ichs nenne hab ich nu schwups die wups gelöst aber nur duch hinwurschteln.
Folgende Sachlage:
Via D3D9 soll ein Planeten-System gerendert werden. Ich hab 10 Objekte mit unterschiedlichen Radien und ein Mesh das eine Kugel mit Radius=1 darstellt.
Zum Rendern jedes Planeten:
m_pDevice->SetTransform (D3DTS_WORD, ( Skalierungsmatrix(ObjektRadius) x Positions-Matrix) )
Mesh->DrawSubset (0);
ergebnis: Alle großen Kugeln pechschwarz, nur die Kleinen beleuchtet.
Bin damals verzweifelt, hab an allem möglichem rumgefrickelt, kam mir sehr vereimert vor und schmiss den Mist einfach in die Ecke.
Wie hab ichs jetzt gelöst?
Mesh klonen, Mesh-Klon-Vertexbuffer locken, Vertex-Normale gem.Objekt-Radius skalieren (NUR die Normalen)
Alles weitere haargenau wie oben.
Fragen: 1) Warum ist das so? 2) Brauch ich jetzt echt für jeden Planeten eine eigene Kugel?
Mein Problem der "Schwarzen Kugeln" wie ichs nenne hab ich nu schwups die wups gelöst aber nur duch hinwurschteln.
Folgende Sachlage:
Via D3D9 soll ein Planeten-System gerendert werden. Ich hab 10 Objekte mit unterschiedlichen Radien und ein Mesh das eine Kugel mit Radius=1 darstellt.
Zum Rendern jedes Planeten:
m_pDevice->SetTransform (D3DTS_WORD, ( Skalierungsmatrix(ObjektRadius) x Positions-Matrix) )
Mesh->DrawSubset (0);
ergebnis: Alle großen Kugeln pechschwarz, nur die Kleinen beleuchtet.
Bin damals verzweifelt, hab an allem möglichem rumgefrickelt, kam mir sehr vereimert vor und schmiss den Mist einfach in die Ecke.
Wie hab ichs jetzt gelöst?
Mesh klonen, Mesh-Klon-Vertexbuffer locken, Vertex-Normale gem.Objekt-Radius skalieren (NUR die Normalen)
Alles weitere haargenau wie oben.
Fragen: 1) Warum ist das so? 2) Brauch ich jetzt echt für jeden Planeten eine eigene Kugel?