Wie macht man sowas "Heutzutage" ?
Zaphod, du scheinst dich ja sehr gut mit der Materie auszukennen. Deshalb frag ich dich mal direkt nach deiner Meinung;
Wie sollte man(ich) die ganze ISO-geschichte denn später am besten verwalten/benutzen ? Ich meine damit, verwendest du eigene Routinen(Prozeduren) für die Darstellung der Umgebung und eigene für die Spielfiguren, scrolling, Z-ordering etc ? Oder ist es eine einzige Prozedur(ISO-engine) die das dann durch die Parameter steuert ?
bis denne
Thomas
Wie sollte man(ich) die ganze ISO-geschichte denn später am besten verwalten/benutzen ? Ich meine damit, verwendest du eigene Routinen(Prozeduren) für die Darstellung der Umgebung und eigene für die Spielfiguren, scrolling, Z-ordering etc ? Oder ist es eine einzige Prozedur(ISO-engine) die das dann durch die Parameter steuert ?
bis denne
Thomas
ich hatte das in eine einzige prozedur "RenderWorld" gemacht, aber das mache ich eigentlich immer so. diese RenderWorld Prozedur hatte verschiedene unterprozeduren zb "renderFloors".
man da viel freiheit, jedoch müssen einige dinge zusammen erledigt werden.
es gibt wahrscheinlich auch andere (kompliziertere) wege, aber im prinzip mußt du so vorgehen:
-du zeichnest alle böden von links nach rechts jeweils eine zeile und das ganze von hinten nach vorne. so gehst du beim iso zeichnen immer vor, denn dann passieren in den meißten fällen die overdraws so wie sie passieren sollten.
- dann fängst du wieder oben links an und zeichnest alle wände, charaktäre und andere objekte in einem einzigen durchlauf. du gehst schritt für schritt durch den zu zeicheneden abschnitt, ist da eine wand zeichnest du die, ist da keine wand, dann schaust du nach ob da eine figur oder ein objekt drauf liegt. wenn du diese schritte nicht zusammen erledigst, dann müßtest du einen wegfinden festzustellen, welche teile eines objektes von einer wand verdeckt sind und das könnte ganz schön problematisch werden.
willst du freie bewegung (also kein spielbrett auf dessen felder das objekt nur in der mitte stehen kann) ist es ein bischen knifflieger, denn dann sind objekte ja teilweise auf mehr als einem feld gleichzeitig. wenn du aber figuren und andere objekte nicht zu groß machst und du bei deren bewegung aufpasst, dass die nicht zu dicht an eine wand rankommen, dann reicht es bei diesem zeichendurchlauf festzustellen, auf welchem tile sich der mittelpunkt des objektes befindet und dann zeichnest du das objekt wenn dieses feld drann ist.
wenn mehr als ein objekt auf einem feld liegt, dann mußt du sie noch nach der entfernung von der oberen spielfeldkante sortieren, je dichter sie der nordkannte sind, desto früher werden sie gezeichnet. da du das aber durch deine interne repräsentation deines levels ganz einfach rausfinden kannst ist das ganz einfach zu bewerkstelligen.
keine sorge wenn das auf den ersten blick sehr kompliziert wirkt, fast alle entscheidungen ergeben sich praktisch von selbst.
man da viel freiheit, jedoch müssen einige dinge zusammen erledigt werden.
es gibt wahrscheinlich auch andere (kompliziertere) wege, aber im prinzip mußt du so vorgehen:
-du zeichnest alle böden von links nach rechts jeweils eine zeile und das ganze von hinten nach vorne. so gehst du beim iso zeichnen immer vor, denn dann passieren in den meißten fällen die overdraws so wie sie passieren sollten.
- dann fängst du wieder oben links an und zeichnest alle wände, charaktäre und andere objekte in einem einzigen durchlauf. du gehst schritt für schritt durch den zu zeicheneden abschnitt, ist da eine wand zeichnest du die, ist da keine wand, dann schaust du nach ob da eine figur oder ein objekt drauf liegt. wenn du diese schritte nicht zusammen erledigst, dann müßtest du einen wegfinden festzustellen, welche teile eines objektes von einer wand verdeckt sind und das könnte ganz schön problematisch werden.
willst du freie bewegung (also kein spielbrett auf dessen felder das objekt nur in der mitte stehen kann) ist es ein bischen knifflieger, denn dann sind objekte ja teilweise auf mehr als einem feld gleichzeitig. wenn du aber figuren und andere objekte nicht zu groß machst und du bei deren bewegung aufpasst, dass die nicht zu dicht an eine wand rankommen, dann reicht es bei diesem zeichendurchlauf festzustellen, auf welchem tile sich der mittelpunkt des objektes befindet und dann zeichnest du das objekt wenn dieses feld drann ist.
wenn mehr als ein objekt auf einem feld liegt, dann mußt du sie noch nach der entfernung von der oberen spielfeldkante sortieren, je dichter sie der nordkannte sind, desto früher werden sie gezeichnet. da du das aber durch deine interne repräsentation deines levels ganz einfach rausfinden kannst ist das ganz einfach zu bewerkstelligen.
keine sorge wenn das auf den ersten blick sehr kompliziert wirkt, fast alle entscheidungen ergeben sich praktisch von selbst.
Prima, danke für deine ausführliche Antwort. Klingt schlüssig und logisch. Da hab ich mir ja echt was eingebrockt
Ich glaube, ich fange am besten wieder mit Straßen und Autos an. Z-Ordering und all die anderen Sachen kann ich dann ja immer noch hinzufügen. Erstmal das Grundgerüst und dann mal weitersehen...
bis denne
Thomas

bis denne
Thomas
...ich glaube, ich mache erstmal mit der Topdown-Perspektive weiter. Scheint mir irgendwie noch lange nicht ausgerzeizt zu sein, was sich mir da an Möglichkeiten anbietet. Wenn alles so wird, wie ich mir das vorstelle...
Oh Mann, mir kribbelts schon wieder in den Fingerspitzen...vor Tatendrang
bis demnächst mal wieder
Thomas
Oh Mann, mir kribbelts schon wieder in den Fingerspitzen...vor Tatendrang

bis demnächst mal wieder
Thomas
Nagut - Eigentlich gehört es hier nicht unbedingt mit hin, aber so erspare ich mir/euch einen weiteren Thread mit ähnlichem Titel; Tauschen wir das "Wie" einmal gegen ein "Wieso" aus, dann wären wir auch schon bein Thema:
Wieso sind heutzutage alle Spiele in 3D ?
Weil es angesagt ist und alle Kommerziellen Firmen es tun ? Vermutlich, aber was ist mit dem Kunden, äh, Spieler, also euch ? Ist 3D wirklich die Königsklasse , das zu erreichende Ziel, die dominierende Welt moderner Computerspiele ?
Jeder wird diese Frage sicher anders beantworten und einige werden vielleicht sogar "meiner" Meinung sein. Wird werden ja sehen;
Was ist für mich entscheidend für ein gutes Computerspiel ?
Die Idee und deren Umsetzung, ganz klar. Dann sollte es meinen Vorstellungen entsprechen und die Spielmotivation sollte nicht schon bereits nach 5 Minuten erlöschen.
Da ich weniger der Ego-Shooter und RPG-Fan bin und eher mit Aufbauspielen und Simulationen liebäugle, müßten deren heutige Paradebeispiele X-3, AOE-3, RCT-3 (also Age of Empires und Roller Coaster Tycoon:) ) sowie NFS Need for Speed - Most Wanted mich doch total faszinieren...
Genau das Gegenteil ist der Fall, ob das an meinem Alter liegt weiß ich nicht. Ich weiss jedoch das mir die ISO-Darstellung von AOE-2 und RCT sowie Locomotion sehr gut gefällt.
Während AOE-2 seit Jahren auf meinem System installiert ist und immer wieder gerne von mir gespielt wird, haben die Nachfolger wie Age of Mythologie und Age of Empires 3 bei mir (und auch bei meinem 14 Jahre alten Sohn) leider nur Enttäuschung hervorgerufen. Bei Roller Coaster Tycoon 3 war es genauso. Der ganz besondere Charme dieser Spiele war mit der Einführung der 3D-Engine verloren gegangen. Bestes Beispiel dafür, daß es (aus meiner Sicht) auch anders herum geht, wäre ein Vergleich zwischen "Schiene und Straße" mit Locomotion.
Obwohl Chris Saywer's Locomotion "nur" in der ISO-Perspektive gegen all die anderen 3D-Titel antreten mußte, erfreut sich seine Software großer Beliebtheit.
Warum ich das ISO-Gewusele der Möglichkeit, bis auf Polygon-größe zoomen zu können vorziehe, liegt vermutlich daran das die ISO-Spiele der 2000er Ära "irgendwie" übersichtlicher und realistischer waren als es die heutigen 3D-Spiele sind. Ausnahmen bestätigen hier natürlich auch die Regel; der Elite-Clone "X-2" ist eine Augenweide, aber wie lange habe ich es gespielt ? Knappe 3 Tage lang. Need for Speed - Most Wanted habe ich mir nur bei meinem Sohn angesehen. Das reichte mir dann schon. Black & White habe ich gut 3 Wochen gespielt. Sehr gut finde ich auch den Visual Pinball Simulator, aber das ist ja eher Topdown-Perspektive.
Im Vergleich dazu einmal meine wahren Lieblings-Games (in etwa nach Erscheinungsjahr)
1) RollerCoaster Tycoon - viele Monate
2) Die Völker - ebenfalls viele Monate
3) Sim City (1 bis 3000) viele Monate
4) Die Siedler 2-3-4 viele Monate
5) Age of Empires-2(Conq) auch Heute noch sehr gerne
6) RollerCoaster Tycoon2 viele Monate
7) Locomotion auch heute noch sehr gerne
Ich finde es wirklich schade, daß ISO heutzutage ausgedient zu schein hat. Auch bin ich mir ziemlich sicher, daß die Software-Firmen durchaus merken das ihre modernen Titel den Kunden nicht mehr so "in ihren Bann" ziehen wie früher. Es traut sich vermutlich nur keiner den ersten Schritt zu machen, oder sie arbeiten an neuen Konzepten um es wieder "wie damals" hinzukriegen.
Wie denkt ihr darüber ? Wie kommt euer 3D-Projekt voran ? Warum gibt es so wenige ISO-Games die mit Purebasic erstellt wurden ? Wollt ihr nicht, oder könnt ihr nicht ?
bis denne
Thomas
Wieso sind heutzutage alle Spiele in 3D ?
Weil es angesagt ist und alle Kommerziellen Firmen es tun ? Vermutlich, aber was ist mit dem Kunden, äh, Spieler, also euch ? Ist 3D wirklich die Königsklasse , das zu erreichende Ziel, die dominierende Welt moderner Computerspiele ?
Jeder wird diese Frage sicher anders beantworten und einige werden vielleicht sogar "meiner" Meinung sein. Wird werden ja sehen;
Was ist für mich entscheidend für ein gutes Computerspiel ?
Die Idee und deren Umsetzung, ganz klar. Dann sollte es meinen Vorstellungen entsprechen und die Spielmotivation sollte nicht schon bereits nach 5 Minuten erlöschen.
Da ich weniger der Ego-Shooter und RPG-Fan bin und eher mit Aufbauspielen und Simulationen liebäugle, müßten deren heutige Paradebeispiele X-3, AOE-3, RCT-3 (also Age of Empires und Roller Coaster Tycoon:) ) sowie NFS Need for Speed - Most Wanted mich doch total faszinieren...
Genau das Gegenteil ist der Fall, ob das an meinem Alter liegt weiß ich nicht. Ich weiss jedoch das mir die ISO-Darstellung von AOE-2 und RCT sowie Locomotion sehr gut gefällt.
Während AOE-2 seit Jahren auf meinem System installiert ist und immer wieder gerne von mir gespielt wird, haben die Nachfolger wie Age of Mythologie und Age of Empires 3 bei mir (und auch bei meinem 14 Jahre alten Sohn) leider nur Enttäuschung hervorgerufen. Bei Roller Coaster Tycoon 3 war es genauso. Der ganz besondere Charme dieser Spiele war mit der Einführung der 3D-Engine verloren gegangen. Bestes Beispiel dafür, daß es (aus meiner Sicht) auch anders herum geht, wäre ein Vergleich zwischen "Schiene und Straße" mit Locomotion.
Obwohl Chris Saywer's Locomotion "nur" in der ISO-Perspektive gegen all die anderen 3D-Titel antreten mußte, erfreut sich seine Software großer Beliebtheit.
Warum ich das ISO-Gewusele der Möglichkeit, bis auf Polygon-größe zoomen zu können vorziehe, liegt vermutlich daran das die ISO-Spiele der 2000er Ära "irgendwie" übersichtlicher und realistischer waren als es die heutigen 3D-Spiele sind. Ausnahmen bestätigen hier natürlich auch die Regel; der Elite-Clone "X-2" ist eine Augenweide, aber wie lange habe ich es gespielt ? Knappe 3 Tage lang. Need for Speed - Most Wanted habe ich mir nur bei meinem Sohn angesehen. Das reichte mir dann schon. Black & White habe ich gut 3 Wochen gespielt. Sehr gut finde ich auch den Visual Pinball Simulator, aber das ist ja eher Topdown-Perspektive.
Im Vergleich dazu einmal meine wahren Lieblings-Games (in etwa nach Erscheinungsjahr)
1) RollerCoaster Tycoon - viele Monate
2) Die Völker - ebenfalls viele Monate
3) Sim City (1 bis 3000) viele Monate
4) Die Siedler 2-3-4 viele Monate
5) Age of Empires-2(Conq) auch Heute noch sehr gerne
6) RollerCoaster Tycoon2 viele Monate
7) Locomotion auch heute noch sehr gerne
Ich finde es wirklich schade, daß ISO heutzutage ausgedient zu schein hat. Auch bin ich mir ziemlich sicher, daß die Software-Firmen durchaus merken das ihre modernen Titel den Kunden nicht mehr so "in ihren Bann" ziehen wie früher. Es traut sich vermutlich nur keiner den ersten Schritt zu machen, oder sie arbeiten an neuen Konzepten um es wieder "wie damals" hinzukriegen.
Wie denkt ihr darüber ? Wie kommt euer 3D-Projekt voran ? Warum gibt es so wenige ISO-Games die mit Purebasic erstellt wurden ? Wollt ihr nicht, oder könnt ihr nicht ?
bis denne
Thomas

Welche Erfahrungen habt ihr denn mit dem Zusammenspiel PB und OpenGL gemacht ?
Kann ich (da ich mich langsam an die Thematik heranarbeiten möchte) OpenGL auch erstmal als 2D-Spriteengine mißbrauchen oder sind Transparente Sprites mit Purebasic schneller/besser realisierbar ?
bis denne
Thomas
- remi_meier
- Beiträge: 1078
- Registriert: 29.08.2004 20:11
- Wohnort: Schweiz
OpenGL geht gut mit PB, es wird einfach eine Include mt den nicht schon
vordefinierten Konstanten benötigt und am Besten noch für PB4 die
Import-Sections.
Wenn es dir aber nicht direkt um OpenGL geht, bist du mit PBs Spritesachen
gut aufgehoben. Sie sind fast genauso schnell und sind natürlich, bis du
deine eigenen Funktionen hast, auch einfacher zu bedienen. Sprites gehen
aber auch mit OpenGL, obwohl das dort etwas anders ist...
greetz
Remi
vordefinierten Konstanten benötigt und am Besten noch für PB4 die
Import-Sections.
Wenn es dir aber nicht direkt um OpenGL geht, bist du mit PBs Spritesachen
gut aufgehoben. Sie sind fast genauso schnell und sind natürlich, bis du
deine eigenen Funktionen hast, auch einfacher zu bedienen. Sprites gehen
aber auch mit OpenGL, obwohl das dort etwas anders ist...
greetz
Remi
Ja, glOrtho_mode (glaube ich); eine Textur wird auf ein Quadrat (2 Dreiecke?) gelegt. Nur mit den Transparenten Sprites soll es ein wenig aufwendiger sein. Kann aber auch sein, daß die Tuts, die ich darüber gefunden habe, von Anno Tobac sindSprites gehen aber auch mit OpenGL, obwohl das dort etwas anders ist...

Am idealsten fände ich es natürlich wenn ich PBsprites mit GLfunktionen mischen könnte, (spricht denn irgendwas dagegen?) grad so, wie ich es brauchen würde, also die Vorteile von beidem nutzen.


Naja, auch das, kotzte mich schon wieder an


Sprites funktionieren unter PB echt gut

Die Möglichkeiten, die OpenGL zu bieten hat, finde ich sehr verlockend. Wenn es wirklich so wäre, daß die Graka dann meine Sprites (so nebenbei) rotiert, skaliert und was weiß ich, ich mach jetzt lieber mal Schluß

Vielleicht outet sich ja der eine oder andere PB/GL Guru...
bis denne
Thomas
PB ogre ist vor 4.0 nicht sehr brauchbar und 4.0 selbst ist noch beta. Probleme beim import sind in versionsunterschieden im mesh format begründet, da findet sich aber sicher einiges im forum zu, auch wie man dieses problem mit anderen konvertern löst.
Ob Synchronisation bei Flipbuffers einen geschwindigkeitszuwachs bringt ist abhängig von vielen dingen, kann von den Grafikkarteneinstellungen übergangen werden und ist generell nicht die stelle, an der man performanceverbesserungen versucht rauszuholen.
Ich vermute stark, du hast ein tft und deine grafikkarte läuft deswegen mit 60Hz.
Alles in Sprite3D wird von der Grafikkarte berechnet (skalieren, rotieren, transparenz, alphatransparenz) das macht alles das, was du mit opengl machen willst.
Ein Problem, dass du bei rotierten und/oder skalierten sprites haben wirst, egal ob opengl oder sprite3d ist, dass pixelperfekte kollisionen dann ziemlich schwer werden.
Ob Synchronisation bei Flipbuffers einen geschwindigkeitszuwachs bringt ist abhängig von vielen dingen, kann von den Grafikkarteneinstellungen übergangen werden und ist generell nicht die stelle, an der man performanceverbesserungen versucht rauszuholen.
Ich vermute stark, du hast ein tft und deine grafikkarte läuft deswegen mit 60Hz.
Alles in Sprite3D wird von der Grafikkarte berechnet (skalieren, rotieren, transparenz, alphatransparenz) das macht alles das, was du mit opengl machen willst.
Ein Problem, dass du bei rotierten und/oder skalierten sprites haben wirst, egal ob opengl oder sprite3d ist, dass pixelperfekte kollisionen dann ziemlich schwer werden.