Ist Videospielprogrammierung normalerweise physikbezogen?

11

Ich weiß, dass dies offensichtlich nicht für einige Spiele, Minensuchboote, Kartenspiele usw. gilt. Aber was ist mit jedem Spiel, bei dem die reale Umgebung simuliert wird? Offensichtlich haben diese Spiele eine Art Physikingenieur, der die Grafik antreibt.

Habe ich für jemanden wie mich, der persönlich keine Freude an Physik hat, aber Videospiele liebt, die Chance, jemals in den Entwicklungszyklus eines solchen Videospiels involviert zu werden, während ich Physik nicht mag?

Chris
quelle
2
Haben Sie sich gamedev.stackexchange.com angesehen ?
Dwynne
3
Ich liebte Spiele, mochte aber keine Mathematik und war in der Physik nicht besonders gut. Ich bin jedoch ein guter Programmierer und habe in meinem Informatikstudium (einschließlich eines Fachs über 3D-Computergrafik) gute Kenntnisse in Mathematik. Warum? Denn in der High School wird Mathematik / Physik ohne Kontext unterrichtet . Ich konnte mein Gehirn nicht davon überzeugen, dass es sich lohnt, all das Zeug aufzubewahren, wenn ich mir nicht vorstellen konnte, wofür es möglicherweise verwendet werden könnte . In der realen Welt ist dies kein Problem, da Sie die Mathematik / Physik verwenden, um ein tatsächliches Problem zu lösen, sodass es nicht so schwierig ist (wenn Sie wie ich sind).
MGOwen
1
@ MGOwen Ich bin ganz bei dir hier, genau das gleiche passierte mir auch :)
legends2k
Math sollte einfach sein (es ist nur der High School Mathematik , die für Spiele - Programmierung erforderlich ist), haben einen Blick @ dieses gamedev.stackexchange.com/questions/12299/...
legends2k

Antworten:

12

Die Programmierung von Spielen hat viele Aspekte, und Sie müssen überhaupt kein Experte sein. Wenn Sie in einem größeren Team sind, führen Sie möglicherweise nicht einmal die Kernprogrammierung des Spiels durch, sondern beispielsweise nur die Netzwerkkommunikation.

Für die Kernprogrammierung von Spielen würde ich denken, dass Sie über ein solides physikalisches Verständnis hinaus einen starken mathematischen Hintergrund benötigen würden. Mit einem starken mathematischen Hintergrund können Sie beispielsweise Transformationen, Ausschnitte, Keyframe-Animationen, Raytracing, Bildverarbeitung, Texturabbildung usw. modellieren.

Ein starker physikalischer Hintergrund kann Ihnen bei der Entwicklung neuer Computergrafikmethoden helfen, ist jedoch nicht erforderlich, wenn Sie ein Spielprogrammierer werden möchten.

Brian R. Bondy
quelle
4

Es ist sehr selten, eine Physik-Engine für ein Spiel mehr zu schreiben. In der Regel wird stattdessen eine kostenlose oder kommerzielle Bibliothek eines Drittanbieters verwendet. Gleiches gilt auch für andere Aspekte von Game-Engines. Rendering, Sound, KI, Animation, GUI, Networking usw. Es ist heutzutage selten, dass jemand eine Game Engine von Grund auf neu schreibt. Normalerweise kaufen die Leute sie. Wenn sie sie herstellen, kaufen sie eine Menge Middleware, um die schwierigen Aufgaben zu erledigen.

Es gibt viele Orte, an denen Sie mit dem Programmieren von Spielen beginnen können. Wenn Sie einfach "ein Spiel machen" wollen, würde ich vorschlagen, in Unity einzutauchen . Unity ist eine fantastische, sehr einfach zu bedienende Spiel-Engine, mit der fast alles erstellt werden kann. Es bietet sogar die meisten Funktionen kommerzieller Motoren (insbesondere die kommende Version 3).

Wenn Sie mehr über die Grundlagen der Spielprogrammierung erfahren möchten, schauen Sie sich PyGame oder XNA an. Sie nehmen viel Zeit in Anspruch, die normalerweise bei der Verwaltung von Grafiken, Eingaben, Sounds usw. anfällt. Sie übernehmen keine Physik für Sie (sie sind keine Engines, nur APIs), aber es gibt viele kostenlose, benutzerfreundliche Lösungen.

Matt Olenik
quelle