Ambient lighting



  • hallo zusammen

    ich verwende managed direct3D mit c# und kriege mein ambient lighting einfach nicht zum laufen. alle anderen lichtquellen, die direct3D anbietet laufen aber tadellos (also: directional, spot, point). was mach ich bloss falsch? alles was ich im netz dazu finden konnte war:

    device.RenderState.AmbientColor = ambientColor.ToArgb();
    

    sollte es angeblich tun; leider bleibt alles schwarz, wenn keine andere lichtquelle aktiviert ist. aber das ambient light sollte die szene doch gleichmäßig ausleuchten, ohne selbst die normals zu beachten (die btw. ok sind - andere licher gehen ja).

    ohne ambient light kriegt man leider so brutal schwarze stellen, wo das directional nicht hinkommt.

    ich verwende kein mesh-objekt sondern indizierte primitiven vom typ CustomVertex.PositionNormalColored, weil mein model sozusagen dynamisch ist. es wird hierfür kein material festgelegt. tut das was zur sache? ich hoffe nicht 😞

    was hab ich denn nun übersehen? wie gesagt, alle quellen, die ich finden konnte geben die zeile (s.o.) an und das soll es angeblich sein. weis jemand damit bescheid? ich bin für jede hilfe dankbar.



  • hast du es auch Enabled?



  • habs gefunden...

    device.RenderState.AmbientMaterialSource = ColorSource.Color1;
    

    hat gefehlt

    manchmal hat man einfach ein brett vorm kopf 😕


Anmelden zum Antworten