Clipplanes in DirectX
-
Für Reflection Mapping brauche ich ne userdefinierte Clipplane auif Höhe des Wassers.
Mit SetClipPlane und SetRenderState kann man die ja setzen und aktivieren.
Aus der Doku weis ich, dass der Richungssinn des Normalenvektor der Ebene auch die Richtung ist, in die nicht geclippt wird.
Bsp in meinem Fall, z-Achse ist oben, Wasser liegt auf 100, also habe ich meine Ebenengleichung so:
a = 0, b = 0, c = 1, d = -100Soweit so gut. Mein Problem ist, wenn ich die jetzt setze, seh ich garnix in meiner Textur. Der rendert nichts rein. Ich habe auch schon probiert die Ebene mit der Proj oder der View Matrix zu transformieren, aber dort sind die Ergebnisse auch nicht wirklich besser.
Weis wer, wie ich die Ebene nun richtig setzen muss?
Hinweis: benutzet werden Shader und nicht die FixFunction-Pipeline
-
Pellaeon schrieb:
Hinweis: benutzet werden Shader und nicht die FixFunction-Pipeline
clippingplanes sind fixfunction settings. wenn du shader benutzt, musst du selber clippen.
-
rapso schrieb:
Pellaeon schrieb:
Hinweis: benutzet werden Shader und nicht die FixFunction-Pipeline
clippingplanes sind fixfunction settings. wenn du shader benutzt, musst du selber clippen.
Sicher?
Hab das im SDk gelesen:When the programmable pipeline is used the plane equations are assumed to be in the clipping space (the same space as output vertices).
Hab die Ebene zwar schon mit der ProjView transformiert, aber das Ergebnis scheint leider immer noch nicht richtig zu sein oO