Registriert: Do Sep 25, 2003 15:56 Beiträge: 7810 Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Ich hatte sowas auch mal vor zu schreiben...Sollte aber hauptsächlich Handel im Weltraum sein, und mehr aus der Ich-Perspektive gespielt werden. So mit Wurmlöchern ala DeepSpace9 und dem Aufbau eigener Raumflotten... wurde aber nie wirklich begonnen..
Vielleicht noch interessant: Sascha Willems (aka SonOfSatan) hat mal ein SciFi Strategiespiel angefangen, aber leider nie beendet. Hab gerade geguckt, der Projekte Thread mit dem äußerst ansprechenden Screenshoot hat Sascha wohl gelöscht... Schade... Das Spiel hätt ich gerne mal gezockt.
_________________ Blog: kevin-fleischer.de und fbaingermany.com
Registriert: Mo Sep 23, 2002 19:27 Beiträge: 5812
Programmiersprache: C++
Flash hat geschrieben:
Vielleicht noch interessant: Sascha Willems (aka SonOfSatan) hat mal ein SciFi Strategiespiel angefangen, aber leider nie beendet. Hab gerade geguckt, der Projekte Thread mit dem äußerst ansprechenden Screenshoot hat Sascha wohl gelöscht... Schade... Das Spiel hätt ich gerne mal gezockt.
Ne, dazu gabs nie nen Projektthread, da es zu dem Zeitpunkt das Forum für Projekte noch nicht gab Deshalb hab ich das damals noch im Off-Topic gepostet (siehe hier). Die Screenshots und Infos sind mittlerweile aber umgezogen und man kann sie hier betrachten. Hauptgrund für die Einstellung des Projektes war übrigens u.a. eine gravierende Fehlentscheidung im Gameplay. Das sollte ja Echtzeit werden, aber das war für den menschlichen Spieler einfach zu hektisch und hat den ganzen Spielspaß genommne. Übrigens würde ich evtl. an einem solchen Projekt mitarbeiten bzw. sowas wieder aufziehen, allerdings nicht wie bei ucGL nur mit mir alleine, dafür hab ich absolut nicht mehr die Zeit.
Das interesse an so einem Projekt scheint hier ja echt groß zu sein! Wie wärs mit einem Communityprojekt?
_________________ Shareholder und Leitender Entwickler bei Pipedream-Games.
Zitat: Siehst du diesen Park da unten? Jeden Tag lernen sich darin Menschen kennen und verlassen einander. Und du hast dein ganzes Leben Zeit darin zu gehen.
Das interesse an so einem Projekt scheint hier ja echt groß zu sein! Wie wärs mit einem Communityprojekt?
Naja, Sascha's Projekt sieht eigentlich mehr nach Echtzeitstrategie, statt nach "Simulation mit Wirtschaftsteil" aus. Wenn das kein Hindernis und sich wirklich noch ein paar Interessenten finden, dann wäre auch das von Flash empfohlene Team vorhanden, was dem ganzen Projekt sicher noch einen gehörigen Schwung verpassen würde.
Ach, ich wünschte ich könnte so schnell die Tutorials anwenden und umsetzen, wie hier Ideen entstehen. Gestern bin ich in drei Stunden Bastelei immer noch bei der Bewegung des Spielers durch die Welt hängen geblieben. Aber ich bin optimistisch, dass ich heute erfolgreicher bin.
DNA
_________________ Heute code ich, morgen debug ich, und übermorgen caste ich die Königin auf int.
http://www.2ndmoon.de
Registriert: Do Sep 25, 2003 15:56 Beiträge: 7810 Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Also...wenn das Projekt in 1-2Monaten anfängt, vielleicht könnte ich da das Team316 bewegen auch mit zu machen (oder Jungs?) ... Ich hoffe bis dahin haben wir unser aktuelles Spiel fertig....
Interesse an einem Spiel in der Art von "Imperio Galactica"
Registriert: Sa Mai 04, 2002 19:48 Beiträge: 3830 Wohnort: Tespe (nahe Hamburg)
Die Hegemonia Macher? ... na, wenn wir da mal keine Modell-Not bekommen. Wenn das ganze in die Richtung von Master Of Orion 2 geht, habe ich sogar schon jemand, der 100€ dafür auf den Tisch legen würde. Wenn ich nun ein erstes "Wir werden reich höre", erkläre ich Euch für bekloppt, ehrlich... Aber wie gesagt, wenn es in die Richtung MO2, Ascencary, Hegemonia gehen soll, würde ich auch helfen und mitwirken.... habe zwar keine Ahnung wie man das zeitlich schaffen soll oder wie WIR eine gemeinsame Basis finden wollen, aber...
_________________ "Light travels faster than sound. This is why some people appear bright, before you can hear them speak..."
_________________ Shareholder und Leitender Entwickler bei Pipedream-Games.
Zitat: Siehst du diesen Park da unten? Jeden Tag lernen sich darin Menschen kennen und verlassen einander. Und du hast dein ganzes Leben Zeit darin zu gehen.
Registriert: Do Sep 25, 2003 15:56 Beiträge: 7810 Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Nun wenn da auch von Seiten DNAs interesse besteht, könnte man da ja ein Communityprojekt draus machen. Ich hoffe in 1-2 Monaten haben wir auch Erfahrungen durch das Quake3Delphi Projekt im organisatorischen Bereich von solchen Projekten, und dann muss konkret das Spiel besprochen werden und welche Teile der Code enthält, um die dann aufzusplitten. Vorallem der Softwaredesignteil wird kompliziert, weil die einzelnen Teile des Spiels getestet werden müssen...und da simulationsumgebungen zu schreiben kann mitunter kompliziert werden. Also einfach isses net, aber wir haben ja mindestens 2 praktisch erfahrene Informatiker die eigentlich Teamarbeit kennen müssten. Von da her ist das sicherlich ein vielversprechendes Projekt...
@Phobeus: Mit den Lizenesen verdienen wir dann eh Millionen, is eh klar....
_________________ Blog: kevin-fleischer.de und fbaingermany.com
Nun wenn da auch von Seiten DNAs interesse besteht, könnte man da ja ein Communityprojekt draus machen.
hmm. Naja, wir sollten nochmal abklären, was das Projekt eigentlich darstellen soll. Ich ziele mit meinem Projekt eigentlich in die Richtung "Weltraumsimulation mit Wirtschaftsteil", während im Forum auch von einem Echtzeitstrategietitel gesprochen wird. Ich bin zwar auch ein Fan von Echtzeitstrategie, aber beides ist nicht in einem Projekt vereinbar. Wir sollten da noch einmal zusammenfassen wer eigentlich was als nächstes sehen will. (Wobei ich nach dem heutigen Abend ohne Fortschritte eher in Richtung Echtzeitstrategieprojekt äuge, da man dort keine Kamera durch die Szene multipliziren muss) *jammer*
Denn mir sind scheinbar noch diverse grundlegende Sachen nicht klar (achja, wäre der Thread eventuell in "Anfängerfragen" besser aufgehoben?)
Flash hat geschrieben:
1: Es gibt 2 Tutorials die sich mit Kamerabewegung befassen. (Unter Mathematisches)
Das erste habe ich durch. Leider ist die im Tutorial zu rendernde Szene leer, so sieht man nicht, ob was passiert. Nachdem ich eine Sphere ins Spiel gebracht habe, sehe ich zwar was, auch bewege ich mich auf die Kugel zu und wieder weg. Wenn ich die Szene um die Y-Achse drehen will, dann bewegt sich die Kugel auf einer kleinen Kreisbahn. Das selbe bei Rotation um meine X-Achse. Ich vermute, dass da mit dem Sichtvektor etwas nicht stimmt, oder ich mache bei der Translation etwas falsch. Verstehen tue ich es jedenfalls noch nicht.
Daher wollte ich nochmal auf Dein angeratenes Vorgehen zurückkommen, denn ich vermute dass ich hier noch anders denke als OGL funktioniert.
Flash hat geschrieben:
- Was immer du Zeichnest wird am aktuellen Koordinatenursprung gezeichnet
Hier geht es eigentlich schon los. In meiner Welt (also Weltkoordinaten) bin ich meinetwegen bei (10,10,10). Eine Kugel ist bei (5,5,5). Mit meiner aktuellen Position und einem Sichtvektor (-1,-1,-1) sehe ich die Murmel genau vor mir. Was ist der von Dir genannte "aktuelle Koordinatenursprung"? Wenn ich OGL richtig verstanden habe, dann ist das der Punkt, von ich die ganze Szene sehe und zwar von meinem Standpunkt aus in Richtung meines Sichtvektors. Richtig? das ist das (0,0,0) vom ... tja ..., wie heißen dann dieses Koordinatensystem? Modellkoordinatensystem? (Mit dem Modellkoord.System müßte ich ja herzlich wenig zu tun haben, oder? Auch wenn OGL nur damit arbeitet, denn meine Welt bewegt sich in den Weltkkordinaten, und solange ich das Modellkoordinatensystem durch Drehung und Verschiebung meiner Position und Sichtrichtung folgen lasse, wird alles korrekt dargestellt)
Flash hat geschrieben:
- mit glRotate änderst du die Ausrichtung der Achsen des Koordinatensystems - mit glTranslate verschiebst du den Koordinatenursprung bezüglich der aktuellen Achsausrichtung - glTranslate und glRotate kannst du wieder rückgängigmachen indem du entgegen rotierst/verschiebst. Oder du nutzt glPushMatrix/PopMatrix um wie das Koordinatensystem "von vorher" wiederherzustellen.
Das sind Feinheiten dessen, was ich grade eben hoffentlich richtig erklärt, oder aber total verpeilt habe.
Ich habe mal die beiden Prozeduren angehängt, in denen ich entweder etwas falsch mache, oder was falsches erwarte:
Hier frage ich alle erlaubten Eingaben ab, passe den Sichtvektor an, und aktualisiere ggf. meine aktuelle Position (Zumindest will ich das)
Am einfachsten ist es bei der Kamera wenn man diese ganzen Rotationen und Translationen aus acht läßt und mit gluLookAt einstellt, wo die Kamera ist, und wo man hinschauen möchte.
Manchmal ist es auch einfacher die Matrix selber zusammenzustellen und mit glLoadMatrix dann direkt zu laden.
Registriert: Do Sep 25, 2003 15:56 Beiträge: 7810 Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Okok...eins nach dem anderen...
Kamera:
Für den Anfang und überhaupt sehr wirkungsvoll ist gluLookAt. Wie Lars schon gesagt hat, kann man mit diesem Befehl angeben wo die Kamera steht und wo sie hinguckt. (Wichtig: gluLookAt muss in der Modelviewmatrix aufgerufen werden. Es funktioniert zwar auch mit der Perspektivmatrix, aber einige GL sachen wie LOCAL_VIEWER beachten nur die Modelviewmatrix... das kann bei Beleuchtungssachen wichtig werden )
Und da sind wir auch schon bei den Matrizen und den gluSphere:
Ja gluSphere muss man per Translate positionieren. Und wenn du deine Kugel sich um irgendwas drehen siehst, was in einem trudeln der Kugel resultiert, dann heißt das, dass der KOU nicht im Zentrum der Kugel liegt, wenn du glRotate aufrufst. (d.h. es wurde glTranslate danach aufgerufen)
Der aktuelle KOU ist dort wo du dich per glTranslate/glRotate "hinbewegt" hast. Die "Kamera" bewegt sich in der Hinsicht nicht...die is quasi fest, und du bewegst die ganze Welt um die Kamera. Da sich das manche aber schwehr vorstellen können nimm einfach folgendes Bild:
Angenommen wir haben nur 2 Dimensionen ... in Y-Richtung arbeiten wir einfach net. Dann stell dir vor, du hast ein kleines Zielkreuz welches du per Translate entlang der Achsen des Kreuzes bewegen und per rotate um die "hochachse (die y-Achse) bewegen...
Weißt du was... Guck dir mal das hier an http://wiki.delphigl.com/index.php/Matrix. Ich werde mich mal hinsetzen und das glRotate/Translate und scale Zeugs in Bildform aufarbeiten und ins Wiki setzen. Ich wollte dazu mal ein Tutorial schreiben habs dann aber sein gelassen...eventuell sollte man das nochmal aufgreifen...
Ach und zu der Diskussion um das Spiel was vielleicht mal ein Communityprojekt werden könnte (wenn du das willst. Schließlich soll dir hier niemand die Idee kapern ) sollte mal ein Mod die entsprechenden Beiträge rauslösen und einen eigenen Thread unter Comunityprojekte aufmachen... (Ich bin da rechtlich beschnitten... *autsch* )
_________________ Blog: kevin-fleischer.de und fbaingermany.com
Ja gluSphere muss man per Translate positionieren. Und wenn du deine Kugel sich um irgendwas drehen siehst, was in einem trudeln der Kugel resultiert, dann heißt das, dass der KOU nicht im Zentrum der Kugel liegt, wenn du glRotate aufrufst. (d.h. es wurde glTranslate danach aufgerufen)
Eigentlich müßte sich der KOU ja auf meiner Position (PosVect) befinden. Schliesslich drehe ich mich um meine Z-Achse und die Kugel soll sich ja um mich drehen. Oder sehe ich das falsch?
Grüße, DNA
edit: <Aussage klarer formuliert>
_________________ Heute code ich, morgen debug ich, und übermorgen caste ich die Königin auf int.
http://www.2ndmoon.de
Registriert: Do Sep 25, 2003 15:56 Beiträge: 7810 Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
kommt ganz darauf an was du mit deiner Projektionsmatrix gemacht hast. Wenn du dort glTranslate aufrufst, siehst du die kugel obwohl sie an deiner Position aufgerufen wurde...
ich hab gerade das neue Tutorial fertig...ich werds heute den anderen Mods vorlegen...wenn dies durchegehn lassen, hast du morgen neue Lektüre
_________________ Blog: kevin-fleischer.de und fbaingermany.com
das wäre ja spitze, dann könnte man am langen Wochenende schön basteln.
Für heute habe ich erstmal 'nen Gang zurückgeschalten. Will heißen:
- erstmal verstehen wie da Postitionieren läuft. Da scheint mir das explizite Setzen mit "glTranslatef(0,0,-10)" und "gluSphere" und wieder "glTranslatef(0,0,10)" ganz brauchbar.
- Wenn das dann geht, dann nehme ich ein paar mehr Kugeln,
- dann drehen wir die Kugeln,
- und dann drehe ich mich selbst,
- und dann kommen wir zu den Bewegungen der Kugel
- und letztlich bewege ich mich selbst.
Ich danke schonmal im Voraus,
DNA
P.S. Wenn's nich klappt, dann dreh ich halt durch. Oder ich dreh ab. Irgendwas dreht sich heute schon noch.
_________________ Heute code ich, morgen debug ich, und übermorgen caste ich die Königin auf int.
http://www.2ndmoon.de
Mitglieder in diesem Forum: Bing [Bot] 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.