![]() |
AW: Dreidimensionales Array darstellen.
Ich hab jetzt einen großen Cube, aber der ist nicht so schön quadratisch, es ist eher ein Quader.
Dann drehe ich noch so: Das im Render:
Delphi-Quellcode:
Und dann ein zweiten Timer mit einem Interval von 1s:
glRotatef(RotateX, 1, 0, 0);
glRotatef(RotateY, 0, 1, 0); glRotatef(RotateZ, 0, 0, 1);
Delphi-Quellcode:
Doch leider ist die Drehung sehr ruckelig. Wie bekomme ich das flüssiger??? Und wie bekomme ich den Cube sauber quadratisch.
procedure TForm1.Timer2Timer(Sender: TObject);
begin RotateY := RotateY - 0.15; if RotateY <= 0 then RotateY := RotateY + 360; RotateX := RotateX - 0.15; if RotateX <= 0 then RotateX := RotateX + 360; end; |
AW: Dreidimensionales Array darstellen.
Zitat:
Irgendwo wird bei Dir das stehen:
Delphi-Quellcode:
Entweder gewöhnst Du Dich an den Anblick oder Du nimmst den Ortho-Modus
gluPerspective(45.0, ClientWidth/ClientHeight, NearClipping, FarClipping);
![]() ![]() Guck Dir bitte gluOrtho2D an. Zitat:
Delphi-Quellcode:
RotateY := RotateY + 1
|
AW: Dreidimensionales Array darstellen.
Zitat:
Zum Orthomodus: Das versteh ich nicht. Kann mir nicht jemand die Zeile geben und sagen, wo ich das ändern soll??? PS: Mich kotzt das ganze OpenGL an. Wieso geht das nicht einfacher??? Ich will jetzt endlich mein Programm fertig haben und mich nicht über dieses blöde OpenGL rumärgern. Ich bräuchte eigentlich nur einen Code, der mir viele kleine Würfel darstellt. Und dann noch mein Array überprüft, ob eine eins, dann soll die Farbe des Würfels anders sein, als wenn dort eine null steht. |
AW: Dreidimensionales Array darstellen.
Zitat:
Delphi-Quellcode:
Ich glaube, diese Zeile hat in Deinem Code den Ärger gemacht.
if RotateY <= 0 then RotateY := RotateY + 360;
Zitat:
Delphi-Quellcode:
mit gluOrhto2D ersetzen.
gluPerspective(45.0, ClientWidth/ClientHeight, NearClipping, FarClipping);
Zitat:
|
AW: Dreidimensionales Array darstellen.
Zitat:
EDIT: Das mit dem flüssig hat sich erledigt, ich nutze ja die Timer Methode und musste da einfach die Framezahl bzw. Das Interval ändern. Zitat:
Zitat:
|
AW: Dreidimensionales Array darstellen.
Keiner ne Ahnung???
|
AW: Dreidimensionales Array darstellen.
Okay, Du gibst nicht auf. Also ..
Zitat:
GLScene ist ganz sicher auch eine gute Komponente, die es für D2009 bei sourceforge gibt. Zitat:
Hier sind aber gute Beispiele und einige Übungen -auch für diese Ortho-Sache. Das Buch mußt Du DIr ja nicht unbedingt kaufen. ![]() |
AW: Dreidimensionales Array darstellen.
Ohne nen büschen Arbeit und Einsatz geht's halt nicht. Du willst ne 3D-Darstellung, also musst du eine bauen. Die nötigen Infos hast du, und die OpenGL Docs sind nicht wirklich schlecht. Was fix und fertiges gibt's so wohl nicht. Eigentlich ist das sogar ein 1A Einstiegsprojekt für OpenGL, da es ein wunderbares und simples Beispiel ist.
|
AW: Dreidimensionales Array darstellen.
Zitat:
Zitat:
Aber ich werd mir deine Seite demnächst mal anschauen. Jetzt steht erstmal Urlaub auf dem Plan. :D Einen CubeEditor sollte ja auch 3D-Ansicht enthalten und der dazugehörige Simulator dafür, brauch ja auch was als Ausgabe. Werd mich wieder melden, wenn ich ein Problem hab (wird noch öfters vorkommen :stupid:). |
AW: Dreidimensionales Array darstellen.
Nur so als Gedanke, wie wärs wenn dus anstatt als Würfel also Tabellen darstelltst und die z Achse die anzahl der Tabellen sind und die quasi so durchblättern lässt?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:09 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