border um einen quad [opengl]
-
Ich möchte um meine einfarbigen Quads, also nicht texturen, eine linie, oder border ziehen. So wie bei CSS "border 5px solid #000" oder so. Klar, das könnte ich selber programmieren und vier neue quads erstellen, aber ich wollte mal wissen ob es schon sowas gibt.
mfg.
-
Hä warum hat nen Quad keine Texturen? UV Koordinaten benutzen?
-
dali schrieb:
Hä warum hat nen Quad keine Texturen? UV Koordinaten benutzen?
Na wenn du das quad halt nur schwarz machst, brauchste da nicht nen schwarzes bitmap rüberziehen. Was heißt UV???
mfg.
-
joomoo schrieb:
dali schrieb:
Hä warum hat nen Quad keine Texturen? UV Koordinaten benutzen?
Na wenn du das quad halt nur schwarz machst, brauchste da nicht nen schwarzes bitmap rüberziehen. Was heißt UV???
mfg.
das sind in oGL die s,t-coordinaten.
rapso->greets();
-
Gibts nicht in OGL.
Bye, TGGC
-
glBegin(GL_QUADS); drawQuad(); glEnd(); glColor3f(0.0, 0.0, 0.0); glBegin(GL_LINE_LOOP) drawQuad(); glEnd;sowas in der Art wäre da mein Grundgedanke..
-
DocJunioR schrieb:
glBegin(GL_QUADS); drawQuad(); glEnd(); glColor3f(0.0, 0.0, 0.0); glBegin(GL_LINE_LOOP) drawQuad(); glEnd;sowas in der Art wäre da mein Grundgedanke..
Okay danke, das klappt. An den Ecken fehlte noch ein Pixel da hab ich noch ein GL_POINT mit drauf getan.
mfg.
-
Guck mal hier:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/opengl/glfunc03_9zol.asp
-
also ich würd des so machen,indem ich erst ein etwas größeres quad zeichne und dann in dieses quad dein eigentliches. wenn zwei punkte die selben koordinaten haben wird normal das letzte nochmal drüber gezeinet. is aber nicht immer ganz optimal, da das zu z-fighting führen kann. musst halt mal kurz den depthbuffer ausmachen und so. genauer hab ich mir das noch nicht überlegt, aber sollte wohl so ähnlich sein wie bei blending, wenn man erst die polygone nach ihrer etfernung nach zeichnen lässt.
.MamboKurt
-
Und die Größe der Linie mit glLineWidth bestimmen.
Das Problem bei ausgeschalteten Depthbuffer ist das, dass wenn ein Objekt im Vordergrund gerendert wird, und dann die Quads gerendert werden, das dann der Rahmen des Quads auf jedenfall im Vordergrund gerendert wird. Unabhängig davon, ob es eigentlich vom Objekt verdeckt werden sollte.
Das Quad und dessen Rahmen dürfen halt nicht die selben Maße besitzen. Das Quad muss halt etwas kleiner sein, als sein Rahmen.
mfg olli
-
Da ich mit der Forumssuche diesen Beitrag gefunden habe, will ich keinen neuen anfangen:
auch ich habe das Problem: ich will ein Quad zeichnen - habe aber keine Möglichkeit (außer der wahnsinnig uneleganten mit GL_POINT) herausgefunden, den fehlenden Pixel zu zeichnen.
Könnte mir da bitte jemand helfen?
glInterleavedArrays(GL_V3F, 0, vPointer); glDrawArrays(GL_LINE_LOOP, 0, 4);Wie ich die Parameter von glPolygonMode setzen muss (wie Gast#649237 schrieb - wobei natürlich dann die Vertices in vPointer anders angeordnet werden müssen und statt GL_LINE_LOOP stattdessen GL_TRIANGLE_STRIP übergeben werden muss sollte klar sein - bloß es hilft nichts).