welche sprache für 3D Gamedesigner

Florianw0w

Lieutenant
Registriert
Dez. 2016
Beiträge
767
Hey

Da ich sowieso Gamedesigner möchten werde dachte ich mir ich kann ja jetzt schon damit anfangen, Ich würde gerne wissen welche sprache wäre besser c# oder c++ ? und mit welcher Engine ich das ganze dann paaren sollte, unreal engine oder unity z.b für's üben dann. Wenn ich genauer sein sollte, ich würde gerne dann Richtung RPG gehen wie z.b witcher 3 und weniger FPS da bei FPS das design sowieso 3 oder 4 stelle steht bei Spielern.
Erfahrungen habe ich 0, und in google habe ich bisher auch nicht wirklich was gefunden was mir helfen könnte außer wie schnell kann ich sprache X lernen...
 
ich würde erstmal mit unreal anfangen - einfach epic account machen und runterladen.
ich habe damals auch sehr viel mit dem starcraft/warcraft & farcry-Editor rumgebastelt. waren sehr mächtige Tools.
programmierkenntnisse braucht man erstmal nicht. hier und da mal ein paar scriptsprachen wie lua.
(edit: wobei p4cx hier vollkommen recht hat, ein paar Grundkenntnisse sollte man schon besitzen. ich hab damals, als ich mit pcs angefangen hab direkt basic gelernt(ist 1000 jahre her). damals gabs noch kein inet und ich hab die syntax funktionierender programme analysiert. das wissen kann man im groben und ganzen auf alle programmiersprachen reflektieren, selbst auf nicht-pc-sprachen(SPS))
schau dir erstmal die engine Tools selber an und guck ob du damit klar kommst.
öffne erstmal vorhandenes und schau dir an wie die es gebaut haben.

das ganze gibt es inzwischen auch als beruf & als Studium. teilweise richtig teuer.
Suchbegriff "gamedesigner werden" -> spuckt bei mir jede menge aus.
das hier zum beispiel

edit: wie es die seite schon beschreibt teilt sich der beruf auch auf. art design kann nicht jeder (skins malen etc), programmieren ist auch nicht für jeden was.
 
Zuletzt bearbeitet:
IMHO: Als Gamedesigner sollte man so oder so programmieren können. Damit meine ich nicht, dass du eine Sprache perfekt beherrschen musst, sondern die gängigsten Paradigmen verinnerlicht hast. Angefangen mit einfachen Sachen wie if-else und Schleifen bis zu Designpatterns. Diese werden dir immer wieder begegnen und wenn du diese kennst, kannst du diese in jeder beliebigen Sprache anwenden und musst nur noch die Syntax lernen. Also wäre es vernünftiger, du lernst z.B. erstmal Java (mit JavaFX kann man wahnsinnig toll ein 2D Game bauen) oder Python (Pygame) oder C++ (COCOS2D-X) und wagst dich nach den Grundkenntnissen an eine große Gameengine vor.
 
  • Gefällt mir
Reaktionen: cruse
p4cx schrieb:
die gängigsten Paradigmen (...) Angefangen mit einfachen Sachen wie if-else und Schleifen bis zu Designpatterns.

Das halte ich für Game Design, vor allem in 2018, für nicht gerade praktikabel.

Gerade wenn es um 3D Spieleentwicklung geht - so wie hier. Da ist es doch viel wichtiger, fit in Mathematik zu sein. Partikeleffekte oder überhaupt irgendwas, das ich im Spiel bewegen, rotieren, ... soll bedarf jeder Menge Vektorrechnung und mitunter generell Linearer Algebra.

In den meisten Fällen kommt heutzutage ja auch noch Physik hinzu, womit man spätestens dann auch Analysis braucht.

Ein konkrete Programmiersprache selbst, besonders die Syntax, ist unglaublich einfach zu erlernen und steht in keinem Verhältnis zur Theorie von Datenstrukturen, Algorithmik, Analytischer Geometrie, Linearer Algebra, Analysis usw.
All das braucht man viel eher und ist deutlich aufwendiger, als Sprache XYZ zu erlernen.

Es sei denn wir sprechen hier nur von Tetris in Pseudo-3D.

Gerade Designpatterns & Co. sind doch heutzutage ohnehin überholt. Das meiste an Mathematik, und das ist i.d.R. der aufwendigste Teil (eine UI oder so ist ja schnell gebaut - abgesehen von gut aussehender Grafik, was ja aber auch nicht Job des Spieleentwicklers selbst ist), wird ja i.d.R. mit funktionaler Programmierung abgedeckt. Schöner, wartbarer, näher an der Mathematik und vor allem schneller, als für jede Kleinigkeit erstmal Klassen zu bauen.

Ganz generell sattelt man doch überall gerade aus Performancegründen auf Data Driven Design um. Unreal macht das schon, CryEngine afaik auch, Unity investiert ganz viel mit ihrem ECS, was derzeit Beta-Status hat.

Damit kann man dann auch jede Kleinigkeit recht einfach parallelisieren, spart sich noch den ganzen Overhead von Klassen und obendrein liegt alles linearisiert oder sonstwie für schnellen Zugriff optimiert im Speicher.

In 2018 noch strenges OOP, wie etwa bei Java, zu lernen, würde ich im Leben nicht mehr machen. Für reguläres Zeug und Spieleentwicklung bin ich i.d.R. in C++ oder C# unterwegs, die meiste Zeit verbringe ich aber mit AI & Robotik in Python, wo man dann für alles eine API hat und zur Not einfach selbst optimierte C-Module schreibt, die dann von Python aus nur noch gesteuert werden.
Worauf ich eigentlich hinaus wollte: um grundsätzlich irgendwas zu strukturieren existiert OOP natürlich schon noch, aber für sicherlich gut 3/4 von allem was ich entwickle gibt es maximal noch structs, eher direkt irgendwelche effizienten Container und dann funktionale Programmierung, Mathe, ...

Und das was ich an OOP und den typischen design patterns, die ich überhaupt noch nutze, sind halt zum Großteil APIs. Da gibt es dann ja nicht viel zu lernen, eher kurz Google'n.

Also wenn man ernsthaft in 3D-Spieleentwicklung einsteigen möchte, dann würde ich (abgesehen vom Studium) vor allem Mathe, bisschen Physik, Algorithmik & Datenstrukturen sowie funktionale Programmierung empfehlen.

Wenn er jetzt ein kompletter Anfänger ist (also tatsächlich Null Vorkenntnisse) und das ernsthaft lernen möchte, dann würde ich mich eventuell direkt von der Vorstellung verabschieden sich das überhaupt einfach so beizubringen. Ohne Studium ist höhere Mathematik, Algorithmik usw. für die meisten Leute unschaffbar und ohne solche Kenntnisse wird man ohnehin nie etwas professionelles in 3D zustande bringen.

Da es hier ja um eine professionelle Laufbahn zu gehen scheint, würde ich dann eher direkt ein Studium empfehlen.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: p4cx
ascer schrieb:
Da es hier ja um eine professionelle Laufbahn zu gehen scheint, würde ich dann eher direkt ein Studium empfehlen.
ich würde es eher an die derzeitige ausbildung und vor allem auch an die charakterlichen tendenzen koppeln....also ob er eher kreativ ist(und ob er überhaupt abitur hat oder macht)..etc...gamedesigner ist ja nicht nur reiner programmierer. die heutigen engines lassen sich auch sehr gut ohne programmierkenntnisse bedienen. (jedenfalls meiner ansicht nach. hab aber eher weniger stunden mit unreal4 zugebracht)
edit: einige (engines) werben ja sogar damit !
 
Zuletzt bearbeitet:
@ascer - Danke für deinen Einblick, du scheinst da ja mehr Ahnung zu haben in der Materie. Ich wollte mit meinem Post nur aufzeigen, dass ich finde, dass man als Informatiker (dazu gehören Gamedesigner dazu) das grundlegende Werkzeug aka Programmierung versteht und anwenden kann.
Designpatterns ist eher etwas für klassisches Software-Engineering, war hier auch nur ein Beispiel innerhalb dem Lernprozess einer bestimmten Sprache.
Das für die Physik und Bewegung im Game Matrizen & Co. benötigt wird, das ist mir selbst klar und empfehle auch hier für ein Studium in diesem Bereich. Jedoch kann man sich mit klassischer Programmierung mal sanft in diesen Bereich vortasten und wenn man da schon nicht aufgibt, dann sich an der Uni/Hochschule einschreiben und in
ascer schrieb:
Mathe, bisschen Physik, Algorithmik & Datenstrukturen sowie funktionale Programmierung
fit werden und somit dem Traumjob des Gamedesigners näher kommen.

An den Threadersteller: Viel Erfolg!
 
  • Gefällt mir
Reaktionen: Florianw0w
@cruse stimmt, es könnte natürlich auch die Story-, Level-, Character-, ...-Designgeschichten als Ziel gemeint sein. Das wäre selbstverständlich eine kreative Nische und sicherlich viel klicken und kaum programmieren.

@p4cx ja, ein bisschen "rumspielen" und sich herantasten ist sicher nicht verkehrt, bevor man sich etwas so aufwendigem wie einem Studium widmet.
 
  • Gefällt mir
Reaktionen: p4cx
Zuletzt bearbeitet:
Klar, Grafiken, 3D Modelle, Stories etc. pp. benötigt man selbstverständlich auch. Das sind im professionellen Bereich ja aber verschiedene Berufe. Grafiker, 3D-...-Designer usw.
Selbst innerhalb "Grafiker" wird ja normalerweise noch nach UI, Concept Art, ... unterschieden.

Auch wenn das mehr mit Kreativität zu tun hat und weniger Theorie, gibt es da für Spiele ja aber auch Medien-... Studiengänge.

Also erstmal ausprobieren ist sicherlich nicht schlecht, aber professionell lernt man so was ja nicht Mal eben nebenbei. Und es scheint hier ja um beruflich zu gehen.
 
  • Gefällt mir
Reaktionen: cruse
schau mal auf: http://www.designschule.de/ausbildung/fachbereiche/gamedesign/
ich kenn mich da jetzt nicht aus, aber sieht auf den ersten blick wie eine "echte" ausbildung aus.
ein bekannter von mir (sohn von ...) will z.b. auch game designer machen...das gibt es direkt als beruf.
zbrush, maya, unitiy...damit geht schon was
 
Eine Gamedesigner Ausbildung gibt es bei mir leider nicht, ich mache gerade noch mein Abi ~3 Jahre ca noch.
Ich würde dann eher richtung lvl design und oder Charakter gehen da ich sowas total Interessant finde, Studium wollte ich sowieso machen statt der Ausbildung da ich keinen Job habe und dann fast 500€ /monat zu viel wären was die Ausbildung kostet. Ich würde gerne dann so gut werden das ich Photorealistic Sachen machen kann wie z.b das hier

So wie ich es Verstanden habe sollte ich abgesehen von höherer Mathematik und den anderen Sachen c++ die Grundsachen Lernen und mich in Unreal Engine versuchen ? Bis ich mit meinen Abi fertig bin habe ich sowieso nicht vor irgendetwas Professionell zu machen, wenn dann maximal für mich selber zum Spaß und an das ganze mal rantasten, was ich gerne
 
@Florianw0w Nein, wenn du mit 3D-Gamedesign die kreative Sparte meintest, also nicht die Spieleentwicklung selbst, sprich technische Umsetzung/Konzeption/Programmierung, dann brauchst du eigentlich kaum irgendwas Richtung Programmierung zu machen.

Leveldesign, Charakterdesign, ... usw. haben kaum was mit Programmierung zu tun, sondern viel mehr mit Grafik & Modellierung. Da solltest du dich eher mit Sachen wie Blender, Maya, Cinema 4D usw. beschäftigen und dann einfach kleinere Szenen in Unity, Unreal oder so bauen.
Sprich etwa Modelle von Erde, Gras, Stein und Baum fertigen und beispielsweise in Unity die einzelnen Modelle zu einem Level "zusammenklicken" - nur um mal ein Beispiel zu nennen.

Du programmierst dann ja kaum irgendwas; keine Spiellogik, keine Funktionalität, keine Physik, kein Rendering, keinen technischen Unterbau usw.
Du würdest dann ausschließlich die Modelle und Welten modellieren. D.h. z.B. einen Charakter in Blender (oder Dergleichen) erstellen. Die kreative Sparte eben. Maximal vielleicht noch Charakteranimation, also beispielsweise die typischen "Einlaufbewegungen" von Boss-Gegnern.
 
Zuletzt bearbeitet:
Zurück
Oben