![]() |
AW: OpenGL Pong
Fach: Informatik GK
Thema: Die Verwendung von OpenGL unter Anwendung von "Pong". |
AW: OpenGL Pong
Habe es nochmal editiert!
Als anfang sollte das reichen. Lese bitte die Bemerkungen :) gruss |
AW: OpenGL Pong
Ich hab's zu Anfang mal umgesetzt, wie du es geschrieben hast. Natürlich selbst geschrieben und kein copy&paste :wink:
Also angezeigt wird immerhin der linke Schläger, nur bewegen tut er sich bei mir nicht, wenn ich W oder S drücke. Trotzdem danke für soviel Hilfe! Ich schau da auch selber noch mehrmals drüber und benutze Tutorials zur Hilfe. EDIT: Wäre es nicht um vieles einfacher, wenn ich einfach normale Panels nehmen würde und die dann mit OpenGL "anmale"? |
AW: OpenGL Pong
Habe mal das projekt angehängt..
Was aber seltsam ist das sich die beiden Schläger nicht trennen lassen. Eigentlich sollte das mit glLoadIdentity(); machbar sein will aber aus irgendeinen grund nicht. Liegt wohl daran das ich das projekt nicht komplett selbst geschrieben habe. Sorry finde den fehler jetzt auf die schnelle nicht. Die Koordinaten stimmen aber.
Delphi-Quellcode:
Macht keinen unterschied ob Form oder panel der einzige ist halt das man es nicht Resizen kann.
procedure TForm1.Schlaeger;
begin //Spieler 1 glLoadIdentity; glTranslatef(-60, 0, 0); glTranslated(0, s1, 0); glBegin(GL_QUADS); glColor3f(0, 1, 0); glVertex3f(-1,1,-1); //lo glColor3f(0, 1, 0); glVertex3f(-1,-9,-1); //lu glColor3f(0, 1, 0); glVertex3f(1,-9,-1); //ru glColor3f(0, 1, 0); glVertex3f(1,1,-1); //ro glEnd; //Spieler 2 glLoadIdentity; glTranslatef(30, 6, -50); glTranslated(0, s2, 0); glBegin(GL_QUADS); glColor3f(0, 1, 0); glVertex3f(-1,1,-1); //lo glColor3f(0, 1, 0); glVertex3f(-1,-9,-1); //lu glColor3f(0, 1, 0); glVertex3f(1,-9,-1); //ru glColor3f(0, 1, 0); glVertex3f(1,1,-1); //ro glEnd; end; Schläger läßt sich bewegen ;) gruss |
AW: OpenGL Pong
Danke, dass du dir solche Mühe gibst. Ich hab's jetzt auch selber geschafft. Bei mir bewegen sich beide Schläger, lassen sich aber auch nicht von einander trennen, wie ich gemerkt habe. Ich versuch's mal weiter und bedanke mich nochmal!
|
AW: OpenGL Pong
Zitat:
Edit: Habe es auch mit glPushMatrix(); glPopMatrix(); versucht trennt aber auch nicht die Schläger.. seltsam alles gruss .. Schönes Wochenende. |
AW: OpenGL Pong
Das Problem hat sich erledigt, ich hab's mit glPushMatrix und glPopMatrix gelöst.
Ich hätte noch eine Frage und bräuchte eine Hilfestellung. 1. Bei mir ist das ja jetzt so, dass nur ein Spieler die Tasten drücken kann, wenn der andere seine zugehörigen Tasten gleichzeitig drückt, dann passiert nichts. Das verschafft ja ein unfaires Spielerlebnis für denjenigen Spieler, der später reagiert. 2. Wie sollte ich das mit den Kollisionen klären? Ich weiss ja nicht, wo genau das Spielfeld bei meiner Fenstergröße endet bzw. wo genau die Schläger sind. Ich hab mich Gestern ein bisschen durchgelesen und hab immer nur gesehen, dass die Leute Variablen nehmen nur die Deklarationen sind nirgends vorzufinden. Also wäre die genaue Frage, wie ich die genauen Koordinaten einlesen kann, dass ich mit stinknormalen IF Schleifen die Kollisionen festlegen kann.+ Vielen Dank im Vorraus, acidrain |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:12 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