Meine Idee für ein Spiel (nicht mehr Wüstenrally)

Lies ein bisschen im Thread herum und dann antworte. Würdest du das Spiel spielen wollen?

  • Auf jeden Fall, ich würde dafür sogar was springen lassen.

    Votes: 5 29.4%
  • Ja, bin ein Rennspielfan.

    Votes: 3 17.6%
  • Denke schon. Mal sehen, wie es sich entwickelt.

    Votes: 8 47.1%
  • Nur wenn es wirklich grandios toll ist.

    Votes: 0 0.0%
  • Nur wenn es Feature XY bietet (XY bitte in einem Beitrag nennen)

    Votes: 0 0.0%
  • Ich will lieber einfach nur arcadig rasen, das hier klingt ziemlich lahm.

    Votes: 1 5.9%
  • Nö, mag solche Spiele überhaupt nicht.

    Votes: 0 0.0%

  • Total voters
    17

fusion_power

Advanced Member
Joined
Dec 25, 2005
Messages
13,069
Location
germany
Website
Visit site
Meine Idee für ein Spiel (Wüstenrally)

<r><QUOTE author="Whynodd"><s>
Whynodd said:
</s>
<QUOTE><s>
</s>Vogelperspektive<e>
</e></QUOTE>
Eher nicht, soll schon 3D sein, soll die Pandora an die Grenze bringen (werde es aber parallel auch für den PC entwickeln, also wenig Abhängigkeiten mit anderen libs und die draw-Funktionen für OpenGL und GL-ES schreiben)<br/>
Whynodd<e>
</e></QUOTE>

Die Idee mit der Vogelperspektive ist eigentlich nicht schlecht. Es währe dann im 3D Game einfach ne weitere optionale Kamera-Perspektive von oben, die Grafik bleibt 3D, ähnlich wie bei den alten GTA Games. <E>:)</E> Mit der Perspektive könnte man sicher gut hinter Dünen und Hindernisse schauen und eventuell kommt sogar ein wenig "Micro Machines" Feeling auf. <E>:D</E></r>
 

whynodd

Member
Joined
Sep 20, 2008
Messages
262
Meine Idee für ein Spiel (Wüstenrally)

<r><QUOTE><s>
</s>Dito, geschweige dem wuerde ich das Spiel planen, erst recht nicht mit einem UML Diagramm, und dann erst recht nicht ein Klassendiagramm. Es sei denn du hast schon mehrere erfolgreiche Spieleprojekte hinter dir.<e>
</e></QUOTE>
Ich habe ein sehr genaues Konzept vom Spiel im Kopf und setze meine Architekturideen erstmal in UML um. So geht Softwareentwicklung, denke ich. Das eine Diagramm ist ja nicht alles, nur eine Skizze.<br/>
Ich habe noch nie ein "großes" Spiel gebastelt, aber für Projekte an der Uni z.B. einen Markertracker gebaut ähnlich dem AR-Toolkit. Das AR-Toolkit war für das Projekt einfach zu schlecht und ungeeignet. Der eigene klappt perfekt. Den Markertracker habe ich ebenfalls in UML geplant. Hat super funktioniert.<br/>

<QUOTE><s>
</s>halte dich ueber Monate an deine Idee<e>
</e></QUOTE>
Idee schon seit Monaten im Kopf und gut durchdacht <E>:)</E> .<br/>

<QUOTE><s>
</s>Zumal mir auf den ersten Blick das Diagramm etwas seltsam erscheint: Ein "Physisches Objekt" kann keine Darstellungsform enthalten? Beides ist eine Spezialisierung von Thing? Vegetation ist wiederum kein 'physisches Objekt' ?<e>
</e></QUOTE>
Jap, mag seltsam erscheinen. PhysicalObject ist ein Tippfehler, soll PhysicsObject heißen. Fehlen ja noch die Klassenbeziehungen, deswegen macht das so wenig Sinn und ist noch nicht vollständig.<br/>
Ein GraphicalObject kann mit einem PhysicsObject verknüpft werden, Z.b. ein Felsen mit einem Solid. Das Solid benutzt beispielsweise die BoundingBox des Felsens um Kollisionen zu berechnen. Genauso beim Auto, Car ist nur in der Physiksimulation existent und wird mit einem einfachen Prop verknüpft, welches die Karosserie anzeigt. So kann ich das komplette Spiel laufen lassen und die Darstellung erstmal auf Würfel und simple Geometrie beschränken. Strikte Trennung zwischen der Physik und der Darstellung von allem. Macht vieles wiederverwendbar. Was ist, wenn ich die Position der Camera mit einer geeigneten Suspension verbinde und damit die Fahrersicht simuliere, also Erschütterungen im Cockpit?<br/>
<br/>
Ich habe halt das "Problem", dass ich ALLES selbst machen will, also weder nen Szenegraphen verwenden möchte, noch eine Physikengine, nichts, alles Eigenbau. Dann hab ich volle Kontrolle darüber, was ich tun möchte und wie ich es zusammenstöpsele.<br/>

<QUOTE><s>
</s>Meine Anmerkungen bitte nicht im destruktiven Sinne verstehen<e>
</e></QUOTE>
Nee, bin offen für alle Vorschläge und froh drum.<br/>

<QUOTE><s>
</s>ne weitere optionale Kamera-Perspektive von oben<e>
</e></QUOTE>
ist vorgemerkt, verschiedene Perspektiven sind sicher schon beim Testen nötig, wieso nicht behalten? Ich ziehe beim Zocken von Rennspielen trotzdem lieber die Mittendrin-Perspektive vor.<br/>
<br/>
Ach ja, Thing ist die Oberklasse von allem. Zählt nur Referenzen und kann den Klassennamen als enum-Wert zurückgeben damit man vernünftig casten kann.<br/>
<br/>
Whynodd</r>
 

whynodd

Member
Joined
Sep 20, 2008
Messages
262
Meine Idee für ein Spiel (Wüstenrally)

<r>Es geht weiter, so gefällt mir das schon etwas besser.<br/>
So langsam bildet sich ein Konzept. Ich arbeite drauf hin, dass die Zuständigkeiten sehr sauber abgegrenzt sind.<br/>
<br/>
Klassendiagramm (bisschen umgeworfen):<br/>
<URL url="http://img338.imageshack.us/my.php?image=kldiag2fe0.gif"><s></s><IMG src="http://img338.imageshack.us/img338/9404/kldiag2fe0.th.gif"><s></e></IMG><e></e></URL><br/>
<URL url="http://img526.imageshack.us/img526/6623/abhdiag2ec4.gif"><s></s>http://img526.imageshack.us/img526/6623/abhdiag2ec4.gif<e></e></URL><br/>
<br/>
Abhängigkeiten (neu):<br/>
<URL url="http://img526.imageshack.us/my.php?image=abhdiag2ec4.gif"><s></s><IMG src="http://img526.imageshack.us/img526/6623/abhdiag2ec4.th.gif"><s></e></IMG><e></e></URL><br/>
<URL url="http://img338.imageshack.us/img338/9404/kldiag2fe0.gif"><s></s>http://img338.imageshack.us/img338/9404/kldiag2fe0.gif<e></e></URL><br/>
<br/>
(alles WIP)<br/>
<br/>
Ich hoffe ich spamme euch nicht voll. Ich zeige euch einfach meine Ergebnisse, dann kann jederzeit jemand sagen "Nee, so würd ich das nicht machen!" oder "Gut, genauso habe ich das bei meinem Spiel auch gemacht!".<br/>
<br/>
Whynodd</r>
 

whynodd

Member
Joined
Sep 20, 2008
Messages
262
Meine Idee für ein Spiel (Wüstenrally)

<r>Es geht weiter! Hier noch ein paar Details. Ich entwickle parallel mit UML-Modellierer Bouml und Dev-C++. Modell anpassen - Code generieren - Methodenbodys ausfüllen. Klappt ganz gut. So hat man gleichzeitig Überblick, viel automatisch generierbare Dokumentation und schöne Bildchen <E>:lol:</E><br/>
<br/>
Ganz ehrlich, ich hab mich schon öfter über falsche Include-Reiheinfolgen und deren Kompilierfehler geärgert, das fällt jetzt komplett weg und ich kann mich aufs eigentliche Programmieren konzentrieren.<br/>
<br/>
<URL url="http://img151.imageshack.us/my.php?image=kldiagdetail1re4.gif"><s></s><IMG src="http://img151.imageshack.us/img151/2239/kldiagdetail1re4.th.gif"><s></e></IMG><e></e></URL><br/>
Direktlink: <URL url="http://img151.imageshack.us/img151/2239/kldiagdetail1re4.gif"><LINK_TEXT text="http://img151.imageshack.us/img151/2239 ... il1re4.gif">http://img151.imageshack.us/img151/2239/kldiagdetail1re4.gif</LINK_TEXT></URL>" onclick="window.open(this.href);return false;<br/>
Ist nur ein Ausschnitt von einem der vielen Diagramme.<br/>
<br/>
Die Architektur ist soweit, dass einer Szene graphische Objekte hinzugefügt werden können und diese gezeichnet werden (Im Moment ein buntes Dreieck). Scheint zwar nicht viel zu sein, aber die Architektur drumherum ist schon auf 31kb reinem Code angewachsen und erleichtert das Erweitern enorm.<br/>
Denke, in den nächsten Tagen wird man schon auf einem einfachen, grob beleuchteten Terrain ohne Texturen rumlaufen können. Danach werde ich Klötze durch die Gegend fahren mit einer rudimentären Fahrzeugphysik.<br/>
Die Haupteventschleife mitsamt "Zeichne alles" und Tastaturabfrage ist auch schon vorbereitet und will benutzt werden.<br/>
<br/>
Ich benutze übrigens ganz klassisch SDL und OpenGL, ich hoffe dass ich das Ganze hinterher gut auf die Pandora portiert bekomme.<br/>
<br/>
Nur für Interessierte:<br/>
Die Hauptschleife
<CODE><s>
Code:
</s>	while(gamestate.getrunning())
  {
		//Hauptschleife des Spiels
		//Input lesen
		keyInput.processInput();

		//Physik updaten
		//noch nix

		//Grafik anzeigen
		scene.draw();
		
		//kurze Pause einlegen
		SDL_Delay(30);
		
		if (keyInput.getkeyQuit()) gamestate.setrunning(false);
	}<e>
</e></CODE>

und hier die Zeichenschleife der Szene ( scene.draw() ):
<CODE><s>
Code:
</s>  glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
	camera.setPosition(0,-150,40);
	camera.setRotation(70,0,0); //nach vorne schauen
	camera.setView(); // setze die Kamera
  //Alle Objekte der Szene zeichnen
  for (int i=0; i<graphicObjects.size(); i++)
  {
		//graphicObjects[i]->draw();
		switch (graphicObjects[i]->getclassName()) // GraphicObjects nach Klassenname casten und zeichnen
		{
			case GRAPHICOBJECT:
				tracer.info("Scene","draw","Eine GraphicObject-Base will gezeichnet werden");
			break;
			case GRAPHICTERRAIN:
				((GraphicTerrain*)(graphicObjects[i]))->draw();
				tracer.info("Scene","draw","Ein GraphicObject wurde nach GraphicTerrain gecastet");
			break;
			default:
				tracer.warning("Scene","draw","Klassenname des GraphicObject nicht gefunden");
			break;
		} 
	}
  SDL_GL_SwapBuffers();<e>
</e></CODE>

Man sieht, dass alles schön verpackt ist (die couts z.B. im Tracer, das wird vielleicht ne Quake-maßige Konsole werden). Was würde ein erfahrener Programmierer dazu sagen?<br/>
<br/>
Macht Spaß das Ganze!<br/>
<br/>
Whynodd</r>
 

Devaux

Newbie
Joined
Feb 5, 2006
Messages
2,080
Age
39
Location
~/
Website
macmini.devaux.li
ICQ
73632818
WEBSITE
http://macmini.devaux.li
LOCATION
~/
Meine Idee für ein Spiel (Wüstenrally)

<r>Hey Whynodd!<br/>
Schoen, dass Du uns so aktiv an Deinem Projekt teilhaben laesst <E>:)</E><br/>
Ist immer sehr spannend ein Projekt so mitzuverfolgen. Hoffe Dein Elan haelt weiterhin an und Du kommst gut vorwaerts.</r>
 

purestrain

Still Fresh
Joined
Feb 28, 2007
Messages
171
Meine Idee für ein Spiel (Wüstenrally)

<t>Hallo,<br/>
<br/>
"GraphicsObject nach Klassenname casten und zeichnen" - Wie wäre es mit Polymorphie?<br/>
<br/>
Gruss<br/>
Michael</t>
 

whynodd

Member
Joined
Sep 20, 2008
Messages
262
Meine Idee für ein Spiel (Wüstenrally)

<r><QUOTE><s>
</s>Wie wäre es mit Polymorphie?<e>
</e></QUOTE>
Würde das gehen, wenn ich die draw()-Methode virtuell mache?<br/>
Was ist nun schneller, nach Klassenname casten, der im Grunde eine Integer ist oder soll ich die vtable bemühen, die richtige Sprungadresse rauszufinden? (Ich denke grade daran, 1000 Steine und Büsche zu zeichnen)<br/>
<br/>
Ich habe erstmal auf diese Weise gecastet, damit ich später auch zusätzliche Methoden (außer draw) der abgeleiteten Klassen einfach aufrufen kann. Welche, die die Basisklasse nicht hat.<br/>
<br/>
Whynodd</r>
 

purestrain

Still Fresh
Joined
Feb 28, 2007
Messages
171
Meine Idee für ein Spiel (Wüstenrally)

<t>Hi,<br/>
<br/>
Sicherlich ist dein casten schneller, da es zur kompilierzeit passiert. Nichtsdestotrotz kann ich selbst auf dem gp2x im schoensten objektorientierten Sinne arbeiten... die Logik (OnThink, OnUseBy, OnCollideWith etc.) meiner Spielobjekte ist in LUA implementiert ohne das es Performanceprobleme gibt.<br/>
<br/>
Gruss<br/>
Michael</t>
 

whynodd

Member
Joined
Sep 20, 2008
Messages
262
Meine Idee für ein Spiel (Wüstenrally)

<t>Der Cast ist zwar zur Compilezeit aber ich stelle den exakten Typ zur Laufzeit erst fest. Ist halt die Frage was "besser, schneller" ist: Ein Switch für den Typ oder direkt virtuelle Methoden. Obwohl, das wird sich wahrscheinlich nicht auswirken. Ich denke nicht, dass an der Stelle ein Flaschenhals läge.</t>
 

whynodd

Member
Joined
Sep 20, 2008
Messages
262
Meine Idee für ein Spiel (Wüstenrally)

<r>Yay!<br/>
<br/>
Ein Meilenkiesel würde ich sagen <E>:p</E><br/>
<br/>
Das erste bisschen 3D. Die Kamera kann man auch schon herumbewegen.<br/>
<URL url="http://img155.imageshack.us/img155/1373/screen1vb5.jpg"><s></s><IMG src="http://img155.imageshack.us/img155/1373/screen1vb5.th.jpg"><s></e></IMG><e></e></URL><br/>
<br/>
Jetzt ans Terrain-LOD. Ich strebe eine Terrainauflösung von 1m an bei einer Sichtweite von über 1km und einer Terraingröße von mindestens 10km mal 10km an. Klingt hart. Aber andere haben das auch schon geschafft. Dabei will ich eine niedrig aufgelöste Heightmap für das ganze riesige Terrain mit mehreren kleinen (sich wiederholenden) Detailheightmaps kombinieren. Ganz nach dem Texturesplatting-Prinzip, nur dass man es auf Höhe anwendet und nicht auf Farbe. So kann ich feine Details und Buckel darstellen und muss auf große Weiten nicht verzichten. <br/>
<br/>
Das wäre dann ein Meilenfelsen. Vielleicht reicht sogar die CPU für mein Vorhaben aus <E>:lol:</E> <br/>
<br/>
Whynodd</r>
 

fusion_power

Advanced Member
Joined
Dec 25, 2005
Messages
13,069
Location
germany
Website
Visit site
Meine Idee für ein Spiel (Wüstenrally)

<r>Nicht übel, Herr Schnübel. <E>:D</E><br/>
<br/>
Sichtweite von 1km klingt sehr gut, ich denk mal viel weiter muss es nicht sein da es ja immer ein wenig Dunst in der Entfernung gibt, bei Sand in der Luft sicher noch mehr. Falls du inspirationen für Dünen brauchst, die Wikipedia ist immer dein Freund:<br/>
<URL url="http://de.wikipedia.org/wiki/D%C3%BCne">http://de.wikipedia.org/wiki/D%C3%BCne</URL>" onclick="window.open(this.href);return false;<br/>
immer wieder beeindruckend dieses Spiel von Licht und Schatten. <E>:)</E><br/>
Bei so einem aufwendigen Projekt, hast du dir auch schon Optimierungsmöglichkeiten überlegt? Ich meine damit Vereinfachungen und Tricks wie man möglichst viel Performance rausholen und trotzdem optisch ansprechend coden kann? Was könnte da alles möglich sein?</r>
 

whynodd

Member
Joined
Sep 20, 2008
Messages
262
Meine Idee für ein Spiel (Wüstenrally)

<r><QUOTE><s>
</s>immer wieder beeindruckend dieses Spiel von Licht und Schatten.<e>
</e></QUOTE>
Ja, genau das will ich ja nachbilden. Es ist nicht nur der Sand, der die Wüste zur Wüste macht.<br/>
<br/>
Hehe, ich hab einfach die Vertices nach der Heightmap gefärbt, damit ich auch was sehe. Sieht schon brauchbar aus.<br/>
Ich werde keine OpenGL-Lichter und so Zeugs benutzen, nur Shader. Dann wird das Portieren auf Pandora einfacher. Aber erstmal eins nach dem anderen. An Texturen brauche ich jetzt noch nicht denken.<br/>

<QUOTE><s>
</s>hast du dir auch schon Optimierungsmöglichkeiten überlegt?<e>
</e></QUOTE>
Klar. Am meisten Performance kann ich beim Terrain selbst rausholen: Weniger Detail in der Entfernung und da, wo es flach ist. Stichwort Quadtrees. Also wird sich das Detail eines Terrain-Stückchens nach seiner Entfernung und seiner Höhenvarianz richten. Bei kleiner Varianz braucht man ja nicht so viele Dreiecke. Das Terrain im Bildchen waren etwa 250000 Verts, sind natürlich viel zu viele.<br/>
<br/>
Vergleiche:<br/>
<URL url="http://img151.imageshack.us/img151/7177/screen2yp1.jpg"><s></s><IMG src="http://img151.imageshack.us/img151/7177/screen2yp1.th.jpg"><s></e></IMG><e></e></URL><br/>
mit einem level of detail-Beispiel von Crysis. Das sind wesentlich weniger Polygone.<br/>
<IMG src="http://www.crytek.com/fileadmin/user_upload/cryengine2/screenshots/11_terrain_lod.jpg"><s>
</e></IMG><br/>
<br/>
Dann natürlich noch die Beleuchtung: Die passiert demnächst per Shader. Die Beleuchtung der Verts ist ja nicht so schwierig, brauche ja nur gucken, wieviel die Normale zur Sonne gerichtet ist. Dann noch leicht bläuliches konstantes ambientes Licht draufaddieren und das sieht schon ganz gut aus. Den Rest an Detail erledigen dann Texturen (Normalmaps, Shadowmaps etc.).<br/>
<br/>
Ich freu mich selbst schon drauf, das zu sehen, insbesondere auf dÖt p&|a <br/>
<br/>
Whynodd</r>
 

purestrain

Still Fresh
Joined
Feb 28, 2007
Messages
171
Meine Idee für ein Spiel (Wüstenrally)

<t>Meine Kristallkugel verrät mir: Da du dich jetzt schon um so belanglosigkeiten kümmerst, dich mehr um Pixelshader und Optimierungen der Darstellung beschäftigst, wird das eine nette Demo, aber nicht fertig. <_< <br/>
<br/>
Würde mich freuen wenn sich später herausstellt, dass ich falsch liege.<br/>
<br/>
Gruss<br/>
Michael</t>
 

fusion_power

Advanced Member
Joined
Dec 25, 2005
Messages
13,069
Location
germany
Website
Visit site
Meine Idee für ein Spiel (Wüstenrally)

<r>@Whynodd: sehr beeindruckende Bilder. <E>:)</E> Yo, mit LOD kann man sicher sehr viel rausholen, wenn es gut eingebaut wird. (Manchmal "mutiert" ja das Terrain regelrecht, wenn sich die wenigen Polygone in der Entfernung beim näherkommen auf wunderame Weise vermehren, vielleicht bekommt man diese Sprünge "unsichtbar" hin? )<br/>

<QUOTE author="purestrain"><s>
purestrain said:
</s>Meine Kristallkugel verrät mir: Da du dich jetzt schon um so belanglosigkeiten kümmerst, dich mehr um Pixelshader und Optimierungen der Darstellung beschäftigst, wird das eine nette Demo, aber nicht fertig. <_< <br/>
<br/>
Würde mich freuen wenn sich später herausstellt, dass ich falsch liege.<br/>
<br/>
Gruss<br/>
Michael<e>
</e></QUOTE>
Wieso belanglos? Ohne gescheites Terrain funktioniert ein Spiel nicht, daher ist es logisch, dass man drauf aufbaut. Und ist es anfangs eben ne Demo - total egal! <E>:D</E> Aber wenn man schon mal eine Basis hat auf der man "spielen" kann, dann können die Kernfestures wie Physik, Game-Mechaniken und Spiel-Regeln nach und nach eingebaut werden und das Projekt immer mehr verfeinert werden.<br/>
Viel zu viele Projekte gehen andersrum: erst nur der nackte Programmcode wo man nix sieht und nix machen kann weil es noch keine Grafiken gibt, man das Game also "blind" entwickeln muss...sowas gefällt mir gar nicht. Lieber mit der Grafik anfangen, den Look des Spieles einfangen und dann weiter entwickeln.<br/>
...immerhin möchte ich so bald wie möglich irgend was haben wo ich rumdüsen kann und sei es nur ein quadratisches, gefaltetes "Handtuch" und darauf ein Klotz auf Rädern! <E>:lol:</E></r>
 

purestrain

Still Fresh
Joined
Feb 28, 2007
Messages
171
Meine Idee für ein Spiel (Wüstenrally)

<r>Hi,<br/>
<br/>
Ja, ein Klotz mit Rädern auf einer Quadratischen Landschaft, von mir aus auch schon mit simpler Heightmap. Dann vielleicht weitere Gamestates. Anschließend ein paar Cubes als Hindernisse, dann eine simple Physik, vielleicht eine Lichtquelle... Wenn es dann 10fps auf der Pandora sind Culling. Wenn es dann noch was zu optimieren gibt LOD, dann eine Lichtquelle.<br/>
<br/>
Momentan sieht es mir aus nach: Landschaft, LOD, Auto-Modell basteln, Mikrooptimierungen, Culling, Noch ein Modell basteln, Kakteen, Vegetation, Wolken, LensFlares, Mikrooptimierungen, Licht, PixelShader, Modelle.<br/>
<br/>
Nichts für ungut, weitere 2 cent von mir <EMOJI seq="1f609">:wink:</EMOJI><br/>
<br/>
Edit:<br/>
Ich weiss das jedes 2. Posting von mir sich mit meckereien beschäftigt <EMOJI seq="1f609">:wink:</EMOJI></r>
 

whynodd

Member
Joined
Sep 20, 2008
Messages
262
Meine Idee für ein Spiel (Wüstenrally)

<r>Heidiho.<br/>

<QUOTE><s>
</s>Manchmal "mutiert" ja das Terrain regelrecht<e>
</e></QUOTE>
<E>:lol:</E> Terrain-Mutaten.. Gibts was gegen: Neu hinzugekommene Verts langsam in die gewünschte Position schieben, aber da bin ich noch weit von entfernt.<br/>

<QUOTE><s>
</s>Ohne gescheites Terrain funktioniert ein Spiel nicht<e>
</e></QUOTE>
So sehe ich das auch. Ich brauche zumindest ein vernünftiges Terrain mit spielbarer Geschwindigkeit so über 30fps, damit die Physik anständig getestet werden kann. Das Terrain ist eben das zentrale Element in dem Spiel. Außerdem teste ich hier und da ein paar Techniken, damit ich weiß wie ich die Architektur auslegen muss.<br/>

<QUOTE><s>
</s>gefaltetes "Handtuch" und darauf ein Klotz auf Rädern!<e>
</e></QUOTE>
Werde ich so machen sobald das Terrain fertig ist. Texturen malen und alles schön machen kommt ganz zum Schluss. Da kann man nämlich beliebig viel Arbeit reinstecken.<br/>
<br/>
Ein paar Fragen an erfahrene Entwickler:<br/>
<br/>
- Ich möchte mehrere Heightmaps kombinieren, ineinander überblenden, nebeneinander legen, mit mehreren Detailheightmaps verfeinern etc. Meint ihr, dass sowas klappen könnte?<br/>
<br/>
- Folgendes Fallbeispiel: Eine 1024x1024-Heightmap für ein 10x10km großes Terrain (das ist ja noch sehr grob). Um das zu verfeinern, nehme ich noch 2-3 zusätzliche seamless-Heightmaps für die Details, die jeweils 1km abdecken können und auf die große draufgerechnet werden.<br/>
Jede der Heightmaptexturen wird eine zugehörige Normalmap haben. Die wird beim Spielstart automatisch erzeugt und im Speicher abgelegt.<br/>
Gibt es die Möglichkeit, die Vertexhöhe aus mehreren Heightmaps in einem Vertexshader zu berechnen und die endgültige Normal (aus mehreren Normalmaps) für jedes fragment in einem Pixelshader? Oder sollte ich die CPU einiges machen lassen, d.h. Vertexhöhe selbst ausrechnen und endgültige Normalmaps "on the fly" während das Spiel läuft bei Bedarf (ein neues Terrainquadrat soll detailreicher werden) erzeugen?<br/>
Letzteres würde einen Texturhaufen produzieren, dafür aber den Pixelshader entlasten, da er nur die schon kombinierte Normalmap anwenden muss.<br/>
Allgemein: Ist es kompliziert, in Shadern mit 2,3 oder mehr Texturen gleichzeitig zu arbeiten UND mit mehreren Texturkoordinaten per Vertex/Fragment? Habe bei Shadern keine Ahnung.<br/>

<QUOTE><s>
</s>Ich weiss das jedes 2. Posting von mir sich mit meckereien beschäftigt<e>
</e></QUOTE>
Kein Ding <E>:D</E> ! Ich verstehe das Problem. Keine Sorge, Grafik zum Schluss.<br/>
<br/>
Whynodd</r>
 

MacGyver

Still Fresh
Joined
Jun 7, 2008
Messages
144
Website
Visit site
Meine Idee für ein Spiel (Wüstenrally)

<t>Meines erachtens hat purestrain recht und aus <br/>
seinen Post läst sich schließen das er<br/>
sehr viel erfahrung mit Angefangenen und nicht beendetet Projekten hat,<br/>
leider geht es mir auch so.<br/>
Dem Eifer am Anfang folgt meist nach 2-3 Monaten das Ende des<br/>
Projektes.</t>
 

whynodd

Member
Joined
Sep 20, 2008
Messages
262
Meine Idee für ein Spiel (Wüstenrally)

<r><QUOTE><s>
</s>Momentan sieht es mir aus nach: Landschaft, LOD, Auto-Modell basteln, Mikrooptimierungen, Culling, Noch ein Modell basteln, Kakteen, Vegetation, Wolken, LensFlares, Mikrooptimierungen, Licht, PixelShader, Modelle.<e>
</e></QUOTE>
Nagut, meine Posts mögen etwas wirr und wenig strukturiert sein. Ich habe erstmal viele Ideen zusammengetragen. Das heißt nicht, dass ich tatsächlich schon daran arbeite. Planung halt.<br/>

<QUOTE><s>
</s>Dem Eifer am Anfang folgt meist nach 2-3 Monaten das Ende des Projektes.<e>
</e></QUOTE>
Wenn man ein Projekt nicht anfängt, weiß man nicht, ob man es fertigstellt. Um das "Anfangen" kommt man nicht herum.<br/>
Ich bin hochmotiviert zumindest was Spielbares zu produzieren. Schließlich studiere ich dieses Zeug (Computervisualistik) und brauche ein bisschen Praxis.<br/>
<br/>
Whynodd</r>
 

whynodd

Member
Joined
Sep 20, 2008
Messages
262
Meine Idee für ein Spiel (Wüstenrally)

<r>Da ich jetzt angefangen habe, rudimentäre Physik einzubauen, bin ich auf ein Problem gestoßen. Ich bräuchte 2 parallel laufende Schleifen (eine für Physik und eine fürs Rendern). Damit die Physik später einigermaßen exakt funktioniert, muss sie mindestens 50mal pro Sekunde berechnet werden. Ideal wären 100mal oder einfach ständig. Da wird das Zeichnen zwischendurch mit seinem VSync sehr stören. Insbesondere die Wartezeit beim VSync ist verschwendete Zeit.<br/>
<br/>
Frage: Sollte ich die Physikschleife in einem eigenen Thread laufen lassen mitsamt Mutexen und so Kram oder lieber bleiben lassen und immer schön abwechselnd Physik-Grafik-Physik-Grafik? VSync an oder aus? Decisions decisions...<br/>
<br/>
Hauptschleife bisher:
<CODE><s>
Code:
</s>	while(gamestate.getrunning())
  {
		//Hauptschleife des Spiels
		//Input lesen
		keyInput.processInput();
		
		//Physik updaten
		unsigned int difference= SDL_GetTicks()-timePhysics;
		timePhysics=SDL_GetTicks();		
		scene.doTimestep(difference/1000.0);

		//std::cout << SDL_GetTicks() << "\n";
		
		//Grafik anzeigen
//		if (SDL_GetTicks()-timeGraphics>20)
//		{
			scene.draw();
//			timeGraphics=SDL_GetTicks();
//		}
		
		//kurze Pause einlegen
		SDL_Delay(1);
		
		if (keyInput.getkeyQuit()) gamestate.setrunning(false);
	}<e>
</e></CODE></r>
 
Top