[OpenGL(2D)] Dreiecke in ein Rechteck(Rendertarget oder so) clippen.
-
Moin,
ich hab' vor mir mal 'n paar GUI-Klassen zu schreiben.
Ich dachte mir, um zu verhindern, dass man über die Grenzen eines Fensters, Textfelds oder was auch immer zeichnet, sollte ich das überstehende "wegclippen".
Bei Quads ist das ja kein Problem aber wenn ich Dreiecke malen will, die über den Rand gehen, muss ich ja neue Ecken einbauen. Da ich nicht weiss, wie das geht hab ich mir gedacht, dass ich erstmal nachkucken sollte, ob OpenGL sowas kann.
Ich hab's jetzt mit dem Viewport versucht aber dann wird das gezeichnete gestaucht.
Kann man das irgentwie abschalten?
Wie würdet ihr das machen?
Wenn ich das tatsächlich "per Hand" machen muss, versuch ich das mal und komm wieder, wenn ich ich gescheitert bin. :p
MfG Saugstelle
-
Das Stauchen könntest durch 'ne andere Projektionsmatrix verhindern. Finde das mit dem Viewport allerdings ziemlich doof, denn der ist ja auflösungsabhängig. Würde ich daher komplett lassen.
Bye, TGGC \-/
-
TGGC schrieb:
Würde ich daher komplett lassen.
Ich glaub', ich kann eh drauf verzichten. Denn ich könnte ja einfach drauf achten, dass das Panel(nennt man so oder? :D), in dem das eigentliche Spiel dargestellt wird, immer zuerst gezeichnet wird.
-
Evtl. brauchst Du glScissor(..) ?
-Gunnar
-
Danke, werd ich mir mal ansehen.
edit: Juhu, genau das, was ich gesucht hab.