Ich wollte mal wissen, wie stark das Interesse an einer Open-Source Variante wäre. Es gibt mittlerweile mehr 3D Modelle von Zügen etc, als in TF und TpF selbst verfügbar sind. Es würde wohl kaum ein Problem sein, diese Inhalte in ein anderes Spiel zu integrieren.
In der OpenSource Variante wäre natürlich alles modbar, also jedes Interface und jede Spielmechanik.
Ich bin hauptberuflich Softwareentwickler und könnte viel dazu beitragen, aber eben nicht alles alleine.
Da es sich hier um ein Fan-Forum handelt und nicht um eines von UG, hoffe ich, dass dieser Beitrag erhalten bleibt.
Je nach Interesse würde ich sogar mit der ersten Alpha beginnen.
Edit1:
Als Engine eventuell so etwas wie die CryEngine, die ist zwar nicht OpenSource, aber vollständig im Code verfügbar. Müsste man halt sehen, welche Lizenz man für das Spiel selbst wählt.
Edit2:
Erste Überlegungen wurden schon angestellt. Ich werde eine Entwicklungsumgebung aufsetzen mit der Cryengine.
Die Engine läuft auch unter Linux und bietet potential für schöne Optik.
Das erste Entwicklungsmodell werden wir jetzt erstellen. Wir beginnen mit selbst wachsende Städte, im ersten Schritt werden es aber nur Rechtecke sein.
Auch die Menschen werden erst einmal aus sich bewegenden Rechtecken bestehen, bis wir sinnvolle Modelle und Bewegungsmodelle haben.
Wir werden uns erst ein mal nur um das Technische kümmern und hoffentlich später andere Leute für die Optik dazu bekommen.
Jeder ist eingeladen, etwas dazu beizutragen, sei es mit Code, mit Gehirnschmalz, oder mit Texturen/3D Modelle.
Ich werde die ersten Demos per Videovorschau hier vorstellen.
Edit3:
So CryEngine ist raus, hat viele Gründe. Ein Grund ist z.B. die GUI die mit Flash gebaut werden müsste *kotz*
Momentan habe ich schon mal das Grundgerüst mit Unity3d begonnen und sieht soweit ganz gut aus. Wird ja auch von Cities Skylines benutzt. Wenn ich wieder richtiges Internet habe (Bin gerade mit nem Surfstick drin *würg*) wird das erste Demovideo hochgeladen.
Zumindest bin ich mit Kameraführung über Maus und Tastatur schon fast fertig, auch existiert schon ne rudimentäre Konto und Datumsanzeige im HUD.
Edit4:
Erste Analyse der von UG für TpF benutzten OpenSource Tools:
- Bullet Physics Library (http://bulletphysics.org/)
- OpenAL (https://www.openal.org) für 3D Sound
- libintl (http://www.gnu.org/software/gettext/) für Übersetzungen
- FreeType (http://www.freetype.org/) Für Schriften
- FTGL (http://sourceforge.net/projects/ftgl/) 3D Schriften
- GLEW (http://glew.sourceforge.net/) Überprüft welche OpenGL Erweiterungen auf dem System vorhanden sind
- GLI (http://gli.g-truc.net/) Zum Texturen laden
- GLM (http://glm.g-truc.net/) OpenGL Mathematik Bibliothek unter anderem um Positionen zu berechnen
- libogg (http://xiph.org/ogg/) und
- libvorbis (http://xiph.org/vorbis/) (Sound und Videofiles)
- LodePNG (http://lodev.org/lodepng/) PNG Files
- Loki (http://loki-lib.sourceforge.net/) für Smartpointer etc
- LTGA (http://www.levp.de/) wird wohl unter anderem für die Simulation verwendet, muss ich noch ein mal untersuchen
- Lua (http://www.lua.org/) Sollte wohl selbsterklärend sein
- LZ4 (https://github.com/lz4/lz4) Komprimierungsbibliothek
- SDL (http://www.libsdl.org/): LowLevel Eingabebibliothek für Tastatur/Maus/Joystick etc
- xxHash (http://code.google.com/p/xxhash/) Hashing
- VoronoiDiagramGenerator (http://www.skynet.ie/~sos/mapviewer/voronoi.php) Zum Erstellen von Diagrammen
- webgl-noise (https://github.com/ashima/webgl-noise/) Sinn und Zweck noch nicht verstanden, muss noch ein mal untersucht werden
- Natürlich noch OpenGL
Wenn ich mir die Liste so ansehe, könnte man durchaus mit arbeiten, auch wenn ich ein paar andere Tools verwenden würde. Eventuell baue ich das meiste auf Qt auf, damit haben wir viel Erfahrung und ne bessere GUI ist direkt mit drin.
Ich denke es führt wirklich kaum einen Weg daran vorbei, das Grundgerüst ähnlich aufzubauen. Nur muss man dann bei der Performance wirklich arg aufpassen.
Werde jetzt meine Experimente mit Kdevelop und CMake unter Linux fortführen, ist eh mehr meine Umgebung.
Edit5:
Aktuelle To-do's:
- Herausfinden, wie die 3D Modelle aus Blender exportiert werden und wie man sie entsprechend in eigenem Code laden kann
- Entwicklungsumgebung festlegen
- Kamera und Kamerasteuerung implementieren
- Eine einfache Map mithilfe einer Heightmap erstellen
- Das erste 3D Model laden
Momentan überfordern mich die ersten Schritte mit OpenGL, aber das war noch nie anders, als ich etwas neues angefangen habe