also, da ich in opengl n ziemlicher newbie bin gibt es da so einige dinge die mir noch ziemlich unklar sind.... zum beispiel folgendes:
- Wie kann ich ein objekt per cursor tasten bewegen ?
- Gibt es vieleicht ein Tutorial in dem die programmierung eines kleinen spiels erklärt wird
- ich arbeite im moment mit glaux (um bilder an zu zeigen), nun is meine frage ob die ok is, oder ob ihr mir was anderes empfehlen würdet
sodele, das wärs auch schon.... der erste punkt is der wichtigste.
wäre cool wenn ihr mir helfen könntet..... da, diese fragen mit sicherheit schon zehntausendmal gestellt wurden, bitte ich um anständige antworten und nich auf "das wurde schon tausendmal gefragt, such doch nach dem eintrag im forum bla bla bla...." antworten.
in diesem sinne, danke und raus....
Registriert: Mo Sep 23, 2002 19:27 Beiträge: 5812
Programmiersprache: C++
Zitat:
- Wie kann ich ein objekt per cursor tasten bewegen ?
Du brauchst erstmal Variablen, in denen du die Positionsdaten für dein Objekt speicherst.Je nachdem, auf welchen Achsen du dein Objekt bewegen willst benötigst du bis zu drei Variablen (z.B. PosX, PosY, PosZ). Nun musst du bei entsprechendem Tastendruck diese Positionsdaten verändern.Wie du das machst sei dir überlassen, es spielt (kaum) eine Rolle ob das per OnKeyDown-Ereignis oder auf Low-Level-Ebene am Ende des Renderloops mit GetAsyncKeyState geschieht. Dann musst du dein Objekt natürlich entsprechend den Positionsdaten via glTranslatef() im Renderloop bewegen, z.B. so :
Code:
// Szene initialisieren
...
glTranslatef(PosX, PosY, PosZ);
// Zeichne Objekt
Mehr dazu gibst übrigens im RedBook, das sich Anfänger unbedingt zu Gemüte führen sollten.
Zitat:
- Gibt es vieleicht ein Tutorial in dem die programmierung eines kleinen spiels erklärt wird
So was wirst du nicht (oder nur schwer) finden, da kaum ein Mensch ein solch spezifisches Tutorial schreiben wird, gibt es doch viel zu viele verschiedene Spielprinzipien.
Zitat:
- ich arbeite im moment mit glaux (um bilder an zu zeigen), nun is meine frage ob die ok is, oder ob ihr mir was anderes empfehlen würdet
Die GLAux-Library würde ich nicht mehr verwenden, weil sie zum einen viel zu groß ist, und zum anderen seit Längerem nicht mehr weiterentwickelt wird.
Eine bessere Alternative ist glBMP : <a href='http://delphigl.cfxweb.net' target='_blank'>http://delphigl.cfxweb.net</a>
Registriert: Mo Sep 23, 2002 19:27 Beiträge: 5812
Programmiersprache: C++
Zitat:
ok, vielen dank....ach, noch was... woran liegt es wenn meine anwendung (einfacher würfel, der sich dreht) sehr langsam bzw unter ruckeln läuft
Das liegt entweder
- an einem zu langsamen System
- an falschen (nicht vorhandene) OpenGL-Treibern (z.B. die die bei WindowsXP dabei sind), wodurch das ganze im Softwaremodus gerendert wird
- an der Art wie du deine Szene zeichnest.Die beste Methode ist entweder ein eigener Renderloop via repeat...until oder das OnIdle-Ereignis.
hab nen P II 450mhz (jaja, lacht ruhig...) und arbeite mit win 98 (sagt mir immernoch am meisten zu)....
ich versteh aber nicht, das UT problemlos läuft und so´n beknackter würfel ruckelt.... irgendwie unlogisch (find ich...)
man bin ich beknack.... ich render natürlich in nem timer.... irgendwie steh ich heut mächtig aufm schlauch..... der timer is wohl nich so ne tolle lösung oder?
Registriert: Sa Mai 04, 2002 19:48 Beiträge: 3830 Wohnort: Tespe (nahe Hamburg)
nein, defintiv nicht, zumal nicht wenn er z.b. auf eine Sekunde eingestellt ist. Entweder im OnIdyle oder der Hauptschleife (siehe Templates VCL oder API)
_________________ "Light travels faster than sound. This is why some people appear bright, before you can hear them speak..."
das problem hatte ich als ich vor ewigkeiten mich mal an OpenGL versucht hatte auch...
damals mit P3 500 *G* habt mit C++ nen Würfel in OpenGL erstellt der sich drehte... mal ging es flüssig und super schnell... und manchmal elendig langsam mit ruckeln etc.
Hab leider bis heute net rausgefunden woran das damals lag..
bin jetzt aufn anderes problem gestoßen und zwar hab ich mir beim zweiten tutorial auf delphigl.com das ding asl vcl runtergeladen.... allerdings will das ding nich funktionieren.... beim compilieren bringt er den fehler das "LoadOpenGl" nicht deklariert ist
--->
Code:
procedure TMainForm.FormCreate(Sender: TObject);
begin
//OpenGL ist noch nicht bereit
OpenGLInitialized := False;
//Nur starten, wenn die Bibliotheken auch geladen sind
if not LoadOpenGL then
Halt(100)
end; (*FormCreate*)
woran liegt das? das bsp müsste doch funktionieren, oder hab ich wieder mal was übersehen bzw weis es noch nicht?
Registriert: Sa Mai 04, 2002 19:48 Beiträge: 3830 Wohnort: Tespe (nahe Hamburg)
Die VCL-Beispiele sind auf OpenGL12-Header-Basis. Hast Du vielleicht die 12 weggenommen und 1.0 verwendet? Die APIs laufen darauf, die VCL jedoch mit ner Version neuer... so ganz sporadische Idee von mir.
Falls die 1.2 nicht hast schau mal unter den Links nach Mike Lischke.
_________________ "Light travels faster than sound. This is why some people appear bright, before you can hear them speak..."
Mitglieder in diesem Forum: 0 Mitglieder und 6 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.