F
Hi, ich habe ein Problem mit dem Rotieren von textuierten 2D-Quads in OpenGL.
Das Problem ist, dass alle 90 Grad der Quad "blinkt".
Das liegt wohl daran, das die Kanten bei anderen Winkeln treppenartig sind
und nur bei 4 Winkeln (Alle 90 Grad) keine treppenartige Darstellung der äußeren Kanten zu sehen ist. Das blinken fällt sehr stark auf, wenn viel gleiche Objekte
mit selben Rotationsspeed gleich gedreht werden. Da ich eventuell ein paar Effekte programmieren möchte, wo leider viele Sprites gleich schnell gedreht werden müssen, kommt mir dieses unschöne Blinken mehr als ungelegen Weiss da jemand Rat ?
Ist es hier sinvoll, bei der Rotation exakt diese 4 Winkel beim Rotieren rauszulassen ? Gibt es da eine Einstellung für so eine Kantenglättung oder so etwas ähnliches ? Antialising habe ich doch an oder ?
Hier noch ein Paar Infos:
Ich Benutze GLFW und OpenGL. Die Textures (32 Bit (inkl. Alpha)) lade ich per TextureAtlas rein.
OpenGL intialisisere ich mit folgenden Parametern:
glEnable(GL_CULL_FACE);
glEnable(GL_TEXTURE_2D);
glShadeModel(GL_SMOOTH);
glClearColor(0.0f, 0.0f, 0.0f, 0.0f);
glClearDepth(1.0f);
glEnable(GL_DEPTH_TEST);
glDepthFunc(GL_LEQUAL);
glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST);
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
//dann:
glViewport(0, 0, width, height);
glMatrixMode (GL_PROJECTION);
glLoadIdentity();
glOrtho(0.0f,(float)1024.0f, (float)768.0f, 0.0f, 0.0f, 3.0f);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
//und MainLoop:
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();
projectMainLoop();
glfwSwapBuffers();
Weiss da jemand, wie man dieses blöde Flackern wegbekommt ? Oder ist dies umumgänglich ?
Hier der Link für die Demo wo das "Blinken" zu erkennen ist:
http://www.kram-hochladen.de/download.php?id=ODM5NTg=
Hoffe die Demo funktioniert: weil ist mit Visual Studio 2005 gemacht und bisher habe ich noch nichts exportiert damit! (Bei Fehler ist eventuell eine nicht vorhandene Laufzeitbibliothek auf den Zielsystem schuld ?!)
/Edit:
Ach ja beim entpacken der Zip-Datei unbedingt Ordnerstruktur mit entpacken. Sonst läuft die Demo nicht.