Die kurze und süße Frage
Ich bin neu in der Spielprogrammierung im Allgemeinen. Wie mache ich Open Source-Spiele mit GUTER QUALITÄT?
Was mir begegnet ist
Es gibt eine Vielzahl von Spielen, die ich unter Linux gespielt habe und die geradezu beschämend sind. Die Grafiken sind schrecklich, die KI fehlt und die Wiederspielbarkeit ist gering bis gar nicht. Versteh mich nicht falsch; Ich habe einige gute OpenSource-Spiele wie World of Goo, Gish und Aquaria gespielt. Aber ich verpasse hier in meiner Linux-Hütte wirklich gute Spiele.
Was ich gefunden habe
Also habe ich ein wenig nachgeforscht, wie die erwähnten Spiele gemacht wurden. Daher habe ich angefangen, OpenGL und SDL mithilfe meiner C ++ - Programmiererfahrung zu lernen (das ist ungefähr ein Jahr Programmieren, nicht viel). Ich habe auch die folgenden Bücher aufgegriffen, die von Programmierern zum Stapelüberlauf empfohlen wurden:
- Fokus auf SDL (Der einzige, für den ich vorerst einen Link posten kann ...)
- Die OpenGL Super Bibel
- GEB und CODE
Was mir empfohlen wurde
Ich habe auch mit jemandem gesprochen, der ein ziemlich erfahrener Programmierer ist, der empfiehlt, dass ich den C ++ - Weg zum Spielen gehe und dass OpenGL und SDL ein guter Weg sind. Er empfahl mir auch, die Versionskontrolle mit meinen Programmen zu verwenden (insbesondere Git). Wie ist Ihre Meinung dazu?
Hoffe das war klar, Leute.
Lass es mich wissen,
Immanu'el
quelle
Antworten:
Schlicht und einfach, der beste Weg, um in OpenSource-Spiele einzusteigen, ist es, dies zu tun.
Git ist eine gute Wahl für die Versionskontrolle und sollte sofort verwendet werden. Es wird etwas sein, das Sie während der gesamten Entwicklung ständig verwenden. Je früher Sie damit vertraut sind, desto besser. Als zusätzlichen Bonus können Sie Ihre Quelle auf einer Site wie GitHub hosten, damit andere Personen Code in Ihr Repository klonen, bearbeiten und einchecken können.
Die c ++ / sdl-Route ist gut und relativ weit gereist. Sie sollten in der Lage sein, eine gute Menge an Ressourcen zu den meisten Themen zu finden.
Wenn Sie ein Open-Source-Projekt in Gang bringen möchten, denken Sie daran, dass es eine beliebige Anzahl von Mitwirkenden aus allen verschiedenen Kulturen, Hintergründen usw. geben kann. Ihre Ideen stimmen möglicherweise nicht unbedingt mit Ihren Vorstellungen für das Projekt überein. Sie müssen ein Gleichgewicht zwischen der Aufrechterhaltung der Mitwirkenden und der Steuerung des Projekts in Richtung dieses endgültigen Ziels halten.
Ich glaube, aus diesem Grund sehen wir Open-Source-Spiele von relativ geringer Qualität. Sie haben so viele Köche, die einen Beitrag leisten, während sich jeder, der stark auf eine bestimmte Idee ausgerichtet ist (was meiner Meinung nach ein Spiel braucht), irgendwann während der Entwicklung entfremdet.
Ich kann mich hier irren, aber Gish und Aquaria waren erst kürzlich Open-Source-Produkte und wurden von einem geschlossenen Team entwickelt. Ich bin mir auch ziemlich sicher, dass die Quelle von World of Goo noch geschlossen ist.
Es kann vorzuziehen sein, dass Ihr erster Ausflug in das Spielen nicht auch Ihr erster Ausflug in das Open-Sourcing eines Spiels ist. Es wird nicht schaden, es in ein öffentliches Repository zu werfen, aber ich habe festgestellt, dass das erste, ähnlich wie beim Backen, "weggeworfen" wird. Es ist eine Lernerfahrung - die Prozesse, Techniken und Mathematik zu erlangen, die erforderlich sind, um etwas Nutzbares herauszuholen. Erwarten Sie nicht, dass Ihr erstes Spiel 0 n. Chr., Battle for Wesnoth oder FreeCiv übertrumpft.
Vielleicht möchten Sie sich ein Intro ansehen, das zu einem der oben genannten Spiele beiträgt. Dies wäre eine unschätzbare Erfahrung, wenn Sie irgendwann ein ähnliches Projekt ausführen möchten.
quelle
Wenn Sie tun , jede Art von Softwareentwicklung durchführen, ist die Versionskontrolle unerlässlich. Sie müssen in der Lage sein, Änderungen zu verfolgen und gegebenenfalls auf frühere, bekannte stabile Versionen zurückzusetzen.
Dies gilt doppelt (wenn dies möglich ist) für die Open Source-Entwicklung, da Sie effektiv in einem verteilten Team arbeiten, möglicherweise in verschiedenen Ländern, Zeitzonen oder Kontinenten.
quelle
Der beste Weg, um hochwertige Indie-Spiele (Open Source oder nicht) zu machen, besteht darin, zuerst viele wirklich schlechte zu machen. Mach nicht immer wieder dasselbe Spiel, sondern mache einfach viele kleine Spiele und lerne jedes Mal etwas Neues.
quelle