www.wikidata.de-de.nina.az
Dieser Artikel oder nachfolgende Abschnitt ist nicht hinreichend mit Belegen beispielsweise Einzelnachweisen ausgestattet Angaben ohne ausreichenden Beleg konnten demnachst entfernt werden Bitte hilf Wikipedia indem du die Angaben recherchierst und gute Belege einfugst Spieleprogrammierung bezeichnet den Vorgang fur die Programmierung eines Computerspiels und ist Teil der Spieleentwicklung In den meisten Fallen kommt eine bereits existierende Spiel Engine kurz Engine zum Einsatz Bedeutende Ausnahmen sind z B Minecraft und Starbound UnrealEd Level Editor des Unreal Development KitDer wichtigste Faktor fur die Auswahl der zur Anwendung kommende n Programmiersprache n ist meistens die Engine selbst da die Integration mit dem bestehenden Code der Engine erheblich erschwert werden wurde wenn der neue spiel spezifische Code nicht in einer der primar unterstutzen Sprache n geschrieben werden wurde Viele Engines bieten zudem oftmals spezialisierte Skriptsprachen und Drag and Drop Baukastensysteme an um die Entwicklung der Spiellogik einfacher und mit weniger Expertise als bei der Verwendung einer machtigeren Allzweck Programmiersprache moglich zu machen Inhaltsverzeichnis 1 Entwicklungsprozess 1 1 Planung 1 2 Umsetzung 1 3 Test 2 Werkzeuge und Hilfsmittel 3 Spieleprogrammierung als Hobby 4 Siehe auch 5 WeblinksEntwicklungsprozess BearbeitenFur ein modernes kommerzielles Computerspiel schreiben oft bis zu 30 Programmierer schatzungsweise uber eine Million Zeilen Quellcode Dies erfordert eine gute Projektplanung sowie den Einsatz von Versionsverwaltungssoftware Bugtrackern automatisierten Erstellungsprozessen und Spiele Engines Planung Bearbeiten Eine professionelle Spieleprogrammierung richtet sich nach dem Game Design Prinzip Aufgrund dessen werden detailliertere Plane fur die Implementierung der Spielfunktionen erstellt Die meisten Phasen der Entwicklung werden mehrmals durchlaufen da sich in allen Phasen immer wieder Anderungen ergeben Auf solche Anderungen schnell reagieren zu konnen ist von besonderer Wichtigkeit fur das ganze Projekt Umsetzung Bearbeiten Der Quellcode fur ein Computerspiel ist im Normalfall nach einem Schichtenmodell aufgebaut Am unteren Ende stehen die Treiber sie bieten den direkten Zugriff auf die Hardware Daruber steht eine hardwarenahe API wie z B DirectX oder OpenGL die vom wohl wichtigsten Element im ganzen Spielprojekt verwendet wird der daruberliegenden Spiel Engine die sich hauptsachlich aus der Grafik Engine einer Sound Engine einer moglichen Physik Engine und weiteren Systemen fur Kollision Animation Steuerung Netzwerk usw zusammensetzt und den Kern des Spiels bildet Eine Spiel Engine wird grosstenteils fur mehrere Spiele verwendet und ist deshalb in begrenztem Rahmen universell verwendbar Als uber der Spiel Engine liegenden Teil kann man das Scripting System betrachten das eine Scriptsprache zur Verfugung stellt und Teile der Spiel Engine verwendet aber nur in speziellen Bereichen eingesetzt wird Den Abschluss bildet dann der Quellcode fur die Spiele Logik der individuell fur das jeweilige Computerspiel geschrieben wird Zusatzlich werden speziell fur die Entwicklung und ggf die Erweiterung von Spielen bestimmte Werkzeuge geschrieben Diese helfen bei der Erstellung von Elementen welche im Spiel haufig wiederkehren aber individuell aufgebaut und angepasst werden mussen etwa grafische Elemente oder ganze Level Eine Implementierung auf Programmiersprachen Ebene ist hier zu aufwendig und unubersichtlich eigens erzeugte WYSIWYG Editoren beispielsweise Level Editoren ermoglichen eine einfachere und effektivere Erzeugung der entsprechenden Inhalte Test Bearbeiten Die genaue Vorgehensweise beim Testen kann sich von Entwickler zu Entwickler unterscheiden Seitens Programmierung konnen aus der Softwareentwicklung bekannte Vorgehensweisen wie Testgetriebene Entwicklung verwendet werden Haufig werden zum Testen der Spiele speziell dafur beschaftigte Tester beauftragt welche sich um die Planung Koordinierung und Durchfuhrung der Tests kummern Im Gegensatz zu den Programmierern welche beispielsweise mithilfe von Modultests die Bestandteile des Spiels einzeln testen konnen erhalten die Tester eine gebaute Version des Spiels welche ohne tiefere Kenntnisse der Interna auf Fehler gepruft wird siehe Black Box Test Abhangig von der Art des Spiels haufig aber wenn ein Mehrspielermodus den Kern des Spiels darstellt werden Alpha und Betatests verwendet bei der Spieler die Moglichkeit erhalten das Spiel vor dem offiziellen Erscheinen bereits zu spielen Entwickler sind dabei an auftretenden Fehlern oder Problemen interessiert da diese dann ggf noch vor Release des Spiels behoben werden konnen Zu den moglichen Problemen gehoren Fehler im Spiel selbst siehe Programmfehler ein unausgewogenes Balancing welches sich bspw auf das Game oder Level Design zuruckfuhren liesse oder auf eine Uberforderung der Hardware durch zu geringe Rechenleistung oder Netzwerkbandbreite Die Alpha und Betatestphasen konnen offentlich oder geschlossen sein und werden dann entweder als open oder closed Alpha Beta bezeichnet Bei einer offentlichen Testphase haben die Spieler meist wahrend der gesamten Phase die Moglichkeit daran ohne grossere Umstande teilzunehmen wahrend bei einer geschlossenen Teilnahme meist eine Einladung erforderlich ist die unter anderem aus Verlosungen vergeben werden kann Werkzeuge und Hilfsmittel BearbeitenPrinzipiell kommen bei der Spieleprogrammierung die gleichen Werkzeuge wie bei der sonstigen Softwareentwicklung zum Einsatz Engines bieten allerdings oftmals eine eigene IDE an die zusatzlich zur Programmierung selbst weitere Aufgaben der Spielentwicklung integriert Zusatzlich kommen je nach Engine spezialisierte Skriptsprachen zum Einsatz insbesondere fur die Spiellogik Spieleprogrammierung als Hobby BearbeitenDie meist verwendeten Plattformen fur die Hobbyentwicklung sind Betriebssysteme fur den PC und fur Mobiltelefone wie Windows Linux Android Betriebssystem oder iOS da die Entwicklung fur diese Gerate entweder keine Lizenz erfordern oder diese verhaltnismassig einfach und gunstig zu erhalten ist Spielkonsolen sind seltener Ziel von Spielprojekten da fur die Entwicklung fur das Ausfuhren auf einem Testgerat und oder fur den Vertrieb Entwicklerlizenzen erforderlich sind welche mit Kosten verbunden sind und haufig nur an Unternehmen nicht aber an Privatpersonen vergeben werden Eine Ausnahme stellt dabei Xbox Live Indie Games dar da dort verhaltnismassig einfach Spiele veroffentlicht werden konnen Siehe auch BearbeitenSpieleentwickler Spiel Engine Game Design Leveldesign ProgrammierungWeblinks BearbeitenDeutschsprachige Community mit Forum und Wiki zum Thema Spieleprogrammierung Deutschsprachiges Forum zum Thema Spieleentwicklung und Spieleprogrammierung Deutschsprachige Community zum Thema Spieleentwicklung und Spieleprasentation Einfuhrung in die Spieleentwicklung und Spieleprogrammierung Online Nachhilfe Programmieren Tipps Tricks Links und Artikel zum Thema Webbasierte Lernumgebung TigerJython fur Gymnasien Abgerufen von https de wikipedia org w index php title Spieleprogrammierung amp oldid 237310646