Ein Kumpel von der Arbeit und ich wollen in die Indie-Szene für die Spieleentwicklung einsteigen. Ich habe ein paar Tech-Demos gemacht, die verschiedene Ideen und Ansätze für verschiedene Probleme demonstrieren. Jetzt ist es an der Zeit, uns für ein Projekt zu engagieren, um ein Portfolio für später zu entwickeln.
Ich habe große Probleme damit, ein tatsächliches Projekt zu beginnen, genauer gesagt, eine Engine zu erstellen oder ein OTS-Paket zu verwenden, oder eins zu verwenden, dann eins zu erstellen, oder eins zu erstellen, dann eins zu verwenden, usw.
Was sieht für potenzielle Arbeitgeber besser aus? Ein kleineres Portfolio von Spielen, das Ihre Engine enthält, oder ein (möglicherweise) größeres, das mit etwas OTS erstellt wurde?
Ich bin Programmierer. Ich bin kein Künstler. Ich werde den größten Teil der Programmierung für dieses Projekt durchführen. Mein Kumpel ist auch Entwickler, aber er beherrscht auch grafische Werkzeuge (so wird er zum Art-Typ).
Bei der Arbeit sind wir beide .NET-Entwickler (C #). Ich weiß, ich weiß "Na dann benutze XNA", manche werden mich anschreien. Die Demos, die ich bisher fertiggestellt habe, waren in XNA. Ich habe jedoch einige Bedenken hinsichtlich des Aufbaus eines XNA-Portfolios. Es ist zwar schön, DirectX zu abstrahieren, aber ich mache mir Sorgen, dass ich möglicherweise nicht die erforderliche Wissensbasis aufbaue, um problemlos über XNA hinauszugehen. Der Widerspruch zu diesem Argument lautet wahrscheinlich "Sie können nach XNA leichter zu DirectX wechseln", aber lohnt es sich überhaupt, sich derzeit auf XNA zu konzentrieren, da ich von der Geschäftsentwicklung zur Spieleentwicklung wechseln werde? Oder kichern potenzielle Arbeitgeber, wenn ich XNA sage?
Sollte ich die Erfahrung von XNA nutzen, um zu wissen, welche Konzepte und Erkenntnisse sich größtenteils übertragen lassen? Oder meine wertvollste Ressource (Zeit) woanders ausgeben?
Suchen Sie nach Ratschlägen von anderen Industrie-Tierärzten.
Antworten:
Ich bin seit fast vierzehn Jahren Programmierer in der Konsolenspielbranche und war oft an Einstellungsentscheidungen beteiligt.
Wenn ich also als einer dieser potenziellen Arbeitgeber einen möglichen Mitarbeiter bewerte, gibt es drei Dinge, die ich in einer neuen Anstellung suche, und ich suche sie in dieser Reihenfolge.
Nun zur Beantwortung Ihrer Frage. Dieses ganze Thema "Welche Art von Projekt soll ich machen?" Befasst sich mit dem bei weitem unwichtigsten der Kriterien, die mir am Herzen liegen. Es ist mir viel wichtiger, ob Sie sich sozial in mein Team einfügen und wie gut Sie in der Lage sind, schnell neue Dinge zu lernen, als ob Sie in einem früheren Projekt XNA oder Ihre eigene Game-Engine verwendet haben. Im Großen und Ganzen gehe ich davon aus, dass ich Sie in unserer hauseigenen Spiele-Engine trainieren muss, und daher sind Ihre früheren Projekte für mich überhaupt nicht wichtig. Dies gilt natürlich nur, wenn Sie auf magische Weise Erfahrung mit einem bestimmten Tool oder einer bestimmten Technologie haben, von der ich jemanden brauche, über den ich Bescheid wissen kann. Das ist aber ungewöhnlich; In der Regel gehe ich davon aus, dass ich Sie für die Verwendung unserer API schulen muss.
Das alles soll nicht heißen, dass Sie keine Heimprojekte machen sollen. Das tue ich absolut. Aber es interessiert mich nicht wirklich, was diese Projekte sind oder welche Technologien sie verwenden, da sie wahrscheinlich nicht für das relevant sind, was Sie für mich tun müssen, da wir verschiedene Bibliotheken oder APIs verwenden.
Aber ich möchte, dass Sie mir von Ihren Projekten erzählen. Ich möchte sehen, wie begeistert Sie sind, wenn Sie darüber sprechen, denn das sagt mir, was für eine Art von Person Sie sind (siehe Punkt 1 oben). Ich möchte etwas über die Probleme erfahren, auf die Sie gestoßen sind, und darüber, wie Sie sie bei der Entwicklung Ihres Projekts überwunden haben (siehe Punkt 2 oben). Ich möchte unbedingt, dass Sie mindestens ein Projekt abgeschlossen haben - in der Lage zu sein, den Schmerz zu überwinden und tatsächlich etwas zu erledigen, sagt viel über die Art von Person aus, die Sie sind, und sagt mir, dass Sie jemand sind, auf den ich mich verlassen kann auf, wenn ("wann") die Dinge schwierig werden.
Also ist ehrlich gesagt keine Option "besser"; Das Wichtigste ist, etwas zu vervollständigen, irgendetwas. Jede Technologie, die Sie auf Ihrem Weg lernen, ist das i-Tüpfelchen auf dem i-Tüpfelchen, aber ich würde Sie mit ziemlicher Sicherheit nicht einstellen.
(Aber mit allem , was gesagt .. ich werde erwarten Sie in C kompetent sein ++. So oder so, die Sie wirklich C müssen lernen ++ , um in den Mainstream - Spiele - Industrie angestellt werden. Ihr Zuhause Projekte müssen nicht sein müssen in C ++, aber ich erwarte von Ihnen, dass Sie in der Lage sind, fließend damit umzugehen.)
quelle
Eine Sache, die andere noch nicht erwähnt haben, ist, dass es wichtig ist, Ihre Projekte abzuschließen.
Ein Portfolio mit ein paar unfertigen Dingen zu haben, ist bei weitem nicht so beeindruckend wie ein Portfolio mit einem fertigen, gut polierten Ding.
Wenn Sie Ihre Arbeit auf die vorhandenen Arbeiten anderer stützen (z. B. eine Open Source-Engine oder frei verfügbare Kunstobjekte), vergewissern Sie sich, dass Sie in Ihrem Portfolio angeben, welcher Teil Ihnen gehört.
quelle
Es scheint mir, dass die Antwort davon abhängt, welche Art von Spieleprogrammierung Sie durchführen möchten.
Wenn Sie ein Engine- oder Grafik-Codierer sein möchten , sollten Sie sich mit der Funktionsweise von Engines vertraut machen. Dies bedeutet nicht, dass Sie XNA oder eine andere Standard-Engine, ein Framework usw. nicht verwenden können. Wenn Sie sich mit den Innereien einer hochwertigen Engine vertraut machen, können Sie auf hervorragende Weise lernen, wie Sie eine hochwertige Engine bauen! Wenn Sie diesen Weg beschreiten, müssen Sie nicht unbedingt auch nur Spiele schreiben. Ein Portfolio von eigenständigen Grafikdemos und / oder nicht trivialen Erweiterungen für eine vorhandene Engine (z. B. die Implementierung eines neuen Shaders in einer Engine oder Ähnlichem) wird Ihnen gute Dienste leisten. Sie können sich hier mein Portfolio an Grafik-Demos ansehen; Es ist ein paar Jahre veraltet, aber genau das hat mich zu einem Grafikprogrammierungsjob in einem Spielestudio gebracht.
Auf der anderen Seite, wenn Sie lieber ein Gameplay-Programmierer sind , einer der Leute, die an der Spielmechanik, den Kontrollen, der feindlichen KI usw. arbeiten, dann wird Ihre Zeit nicht gut damit verbracht, sich mit Direct3D zu befassen. Natürlich ist es hilfreich, ein allgemeines, umfassendes Verständnis der Funktionsweise von Grafiken zu haben, aber in einem professionellen Kontext werden Sie wahrscheinlich nicht sehr oft in direkten Kontakt mit Grafiken auf niedriger Ebene kommen. In diesem Fall würde ich auf jeden Fall empfehlen, eine Standard-Engine zu verwenden, damit Sie Ihre Zeit damit verbringen können, aktuelle Spiele zu entwickeln.
Zusammenfassend kann gesagt werden, dass Sie für das Gameplay nur eine vorhandene Engine verwenden müssen. Wenn du Engine / Grafik machen willst, dann baue deine eigenen Sachen und / oder erweitere eine bestehende Engine.
quelle
Als ich gerade mit Uni fertig war, wurde mein Portfolio in diesem Artikel vorgestellt. Es scheint eine gute Idee zu sein, was zu tun ist und was nicht, wenn Sie Ihr Portfolio zusammenstellen
http://leewinder.co.uk/blog/?p=23
quelle
Machen Sie Ihr Portfolio nicht danach, wie Sie den "Standard" sehen. Sie sollten an Projekten arbeiten, die Sie interessieren . Wenn Sie Spielmechanik mögen, machen Sie ein paar Spiele. Wenn Sie eine interessante KI erstellen möchten, können Sie eine Demo für ein RTS-ähnliches Setup erstellen. Als Beispiel habe ich ein wachsendes Interesse an Grafikprogrammierung und mehr Zeit für das Erlernen von Rendering-Konzepten und deren Anwendung in meiner Engine. (Infolgedessen wurde mein Spielprojekt vorübergehend in das Regal gestellt.)
Wenn Sie hauptsächlich an Dingen arbeiten, die Ihnen gefallen, wird das "Sie" im Portfolio wirklich hervorgehoben. Auf der anderen Seite zeigt mindestens ein abgeschlossenes Spiel, dass Sie die "uninteressanten" Teile eines Spiels durchziehen können. Es ist gut, ein gewisses Maß an Flexibilität zu haben, um in weniger vertrautes Gebiet einzudringen, aber zwingen Sie sich nicht zu viel dazu. Sie können gute Portfolios anhand des Enthusiasmus und des Interesses an der Arbeit beurteilen, und Projekte, die auf Ihren Interessengebieten basieren, werden natürlich am meisten aufpoliert. Was auch immer Ihr Interessengebiet ist, Sie müssen sich irgendwann auf dieses Gebiet der Programmierung für einen Job konzentrieren.
quelle