# Spiel ähnlich wie SimCity/o.ä programmieren



## F4814N_ (22. Jun 2015)

Guten Abend zusammen,


als ich vorhin mal wieder am rumprogramieren war, ist mir eine Idee gekommen. Ich möchte eine Simulation erstellen. Natürlich soll das kein SimCity werden und auchnicht die dDimensionen an nehmen, aber wie kann ich zum Beispiel wie bei simcity die 3d Sicht machen? Ich komme da nicht weiter..
Für weiteres hätte ich genügend Ideen für die Umsetzung!



Würde mich über Hilfe freuen!

MFG


----------



## javampir (22. Jun 2015)

puh,
da hast du ja was vor...
wenn du das ordentlich hast, ist dir die ojektorientierung und die planung von großen projekten in fleisch und blut übergegangen...
also zu 3d: es ist grundsätzlich nicht empfehlenswert, so etwas mit java zu machen, da der preis für die unglaubliche portierbarkeit ist, dass java-programme nicht sonderlich effizient ablaufen. 3d-grafik ist eine der komplexesten anwendungen, die man einem rechner zumuten kann und wenn das dann auch noch ineffizient ist...
aber wenn du es unbedingt mit 3d versuchen willst, kann ich dir die jmonkeyengine empfehlen, sie ist opensource und für die gängigsten plattformen verfügbar. sie ist ebenfalls rein in java geschrieben und setzt auf opengl
javampir


----------



## theo_retiker (16. Jul 2015)

Falls dir auch pseudo-3D reicht, kannst du ja einfach die Bilder isometrisch machen was für Städte an sich ja auch gut geht. Die einzelnen Bilder kannst du dann mit z.B. LibGdx zeichnen (basiert auch auf OpenGL und ist für 2D Sachen ziemlich fix) und fertig. LibGdx ist außerdem auch Plattform Unabhängig, sprich du kannst das alles dann ganz einfach auch für Linux, Android, Mac, .... raus bringen ohne groß Dinge zu ändern.


----------



## Times (31. Jul 2015)

Die Frage die sich mir eher stellt in wie weit du mit der Spieleprogrammierung im allgemeinen bist, bist du eher ein Anfänger oder schon etwas geübt mit den Spielebibliotheken.

Ich nehme mal an du bist ein Anfänger, wenn dem nicht so ist, dann entschuldige bitte.

Also zunächsteinmal muss ich javampir in dem Sinne zustimmen, das du zunächst einmal "ordentlich" planen solltest. Ich habe so zB mit einem Spiel angefangen ohne jegliche Planung und musste nach bereits kurzer Zeit von neuem anfangen weil ein Spiel nicht dasselbe ist wie eine normale Anwendung! Also.. Planung ist wichtig!

Im 3D Bereich gibt es wie javampir bereits erwähnt hat Standardbibliotheken die dir dabei helfen das ganze zu rendern. Jedoch ist rendern nicht alles. In der 3D-Programmierung ist es von Vorteil wenn du dich mit der ganzen Materie etwas genauer auskennt. zB die Berechnung von Schatten in Bezug wo die Sonne steht etc. Außerdem muss dir bewusst sein wie deine Welt gespeichert ist und wie du mittels der Position deiner Maus die Position auf der Karte ermittelst und dann so zB ein Gebäude zu erkennen um es daraufhin aufblinken zu lassen!

Wenn du nun überhaupt keinen Plan hättest wie du das machen kannst, dann kannst du entweder alles was du nicht weisst aus dem Internet kopieren oder versuchen es dir anzueignen, wobei ich persönlich die Kopier Idee nicht so prickelnd finde. Das aneignen dieser "speziellen" Fähigkeiten brauch natürlich Zeit und im allgemeinen solltest du dir dann eher die Frage stellen ob du dir einen Partner suchst mit dem du das zusammen machen kannst. Vorallem als Anfänger ist es schon sehr schwer ein eigenes 3D Spiel zu erstellen, da hierbei viele Komponenten eine wichtige Rolle spielen. Hinzu kommt so auch noch die Objekt-Darstellung. Es wäre unsinnig alles über Java selber zu machen, wie zB Gebäude erstellen. Diese könnte man mithilfe Blender erstellen und dann in Java rendern lassen. 

Aber bevor ich groß weiterrede und alles für die Katz ist ersteinmal die Frage wie weit bist du Erfahrungsmäßig? Absoluter Anfänger, Mittel, Profi?


----------



## MWin123 (31. Jul 2015)

Times hat gesagt.:


> Aber bevor ich groß weiterrede und alles für die Katz ist


Der TE war das letzte Mal vor über einem Monat online.
So wichtig ist es ihm wohl nicht.


----------



## Times (31. Jul 2015)

Oh... nicht drauf geachtet.. :/


----------

