![]() |
OpenGL 3D Cube grafikproblem
Liste der Anhänge anzeigen (Anzahl: 3)
Hallo Leute
Ich möchte mich ein bisschen in das Thema OpenGL einarbeiten. Dazu habe ich mir ein Buch gekauft. (ist leider ein bisschen alt) -> "Delphi Developers Guide to OpenGL". Nun bei dem aktuellen beispielprogramm aus dem Buch, gehts um son 3d cube. nur leider wird der irgendwie grafisch nicht richtig dargestellt. Siehe Bild. Auf der CD des Buches sind die Programme alle drauf und wenn ich das auf meinem PC (habe auch andere getestet) ausführe, passiert das selbe. Nur die Illustration im Buch zeigt den Würfel korrekt. ;-) Liegt wohl an der OpenGL Version oder wie? Was kann ich dagegen tun, oder ist vielleicht ein Fehler im Code. PS: Nur so nebenbei, wenn ich
Delphi-Quellcode:
wglDeleteContext(GLContext); nicht ausklammere, erhalte ich eine Zugriffsverletzung, siehe Bild 2.
procedure TForm1.FormDestroy(Sender: TObject);
begin OpenGLReady := false; wglMakeCurrent(glDC,0); // throws an error?! // wglDeleteContext(GLContext); end; Habe das ganze Projekt mal attached... klicke ein paar mal auf rotate um den Fehler zu erkennen. danke schon mal.. |
Re: OpenGL 3D Cube grafikproblem
Was für eine Grafikkarte?
|
Re: OpenGL 3D Cube grafikproblem
aufm notebook eine Intel onboard. Habs aber soeben auf meinem PC, Radeon 9800 pro, mit dem selben Effekt getestet.
|
Re: OpenGL 3D Cube grafikproblem
Kann es sein, dass die camera zu nahe an dem Objekt ist?
Von DirectX weiß ich, dass man in der Projektion die Minimale und Maximale Sichtweite einstellen kann. Das sieht sehr dannach aus, als würe die eine Ecke des Würfels abgeschnitten werden, somit die Innenseiten angezeigt. ( Ich setze mal vorraus, dass BackfaceCulling ist an ^^ ) Ich würde entwerder den Wert der Minimalen Sichtweite senken, oder die Camera weiter weg schieben. PS: Ich hab mir dein Projekt mal angegukt. Es geht um die Funktion ![]() |
Re: OpenGL 3D Cube grafikproblem
Definitiv ein Near-Clippig Problem. Würfel und Kamera weiter auseinander, und es dürfte richtig aussehen. Irgendwann sehr bald sollte in dem Buch das Thema Clippinplanes dann auftauchen hoffe ich :)
|
Re: OpenGL 3D Cube grafikproblem
Zitat:
Jetzt bleibt noch das andere problemchen, warum kann ich den GLContext am schluss nicht löschen. Siehe beschrieb in Beitrag 1#. |
Re: OpenGL 3D Cube grafikproblem
hi cherry,
schau dir mal ![]() @Desmulator den near wert würde ich nie auf 0 setzen nim 0.1 oder was anderes kleines. [Edit] wegen deines Context Probs hast du mal
Delphi-Quellcode:
Probiert ?
procedure TForm1.FormDestroy(Sender: TObject);
begin OpenGLReady := false; // throws an error?! wglDeleteContext(GLContext); wglMakeCurrent(glDC,0); end; [edit=mkinzler]URL-Tag korrigiert Mfg, mkinzler[/edit] |
Re: OpenGL 3D Cube grafikproblem
Kamera weiter weg schieben ist aber keine Dauerlösung, ich poste einfach mal, wie man das Clipping-Problem beseitigt.
Delphi-Quellcode:
FCW = ClientWidth, FCH = ClientHeight
//Innerhalb der Projection-Matrix
gluPerspective(60, FCW/FCH, 0.001, 128); ![]() |
Re: OpenGL 3D Cube grafikproblem
Zitat:
|
Re: OpenGL 3D Cube grafikproblem
Vielleicht zuerst den Context deaktivieren.
Kann allerdings sein, dass die Methode nur in der dglOpenGL.pas implementiert ist.
Delphi-Quellcode:
DeactivateRenderingContext; wglDeleteContext(GLContext) wglMakeCurrent(glDC,0); |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:48 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz