Un copain du travail et moi-même voulons entrer dans la scène indépendante pour le développement de jeux. J'ai fait quelques démos technologiques démontrant différentes idées et approches pour divers problèmes. Maintenant, je pense qu'il est temps pour nous de nous engager dans un projet afin de développer un portefeuille pour plus tard.
J'ai eu beaucoup de mal à démarrer un projet réel, plus spécifiquement pour créer un moteur ou utiliser un package OTS, ou en utiliser un puis en créer un, ou en créer un puis en utiliser un ... etc.
Lequel convient mieux aux employeurs potentiels? Un portefeuille de jeux plus petit qui inclut votre moteur ou un (éventuellement) plus grand qui a été construit en utilisant quelque chose d'OTS?
Je suis un programmeur. Je ne suis pas artiste. J'exécuterai la majeure partie de la programmation de ce projet. Mon copain est également développeur, mais il maîtrise également les outils graphiques (il devient donc le gars de l'art).
Au travail, nous sommes tous deux développeurs .NET (C #). Je sais, je sais "Bien alors utilise XNA" certains me crieront dessus. Les démos que j'ai terminées jusqu'à présent l'ont été dans XNA. Mais j'ai quelques soucis avec la construction d'un portefeuille XNA. Bien qu'il soit agréable d'abstraire DirectX, je crains de ne pas pouvoir construire la base de connaissances nécessaire pour s'étendre au-delà de XNA facilement. Le contre-argument à cet argument est probablement "vous pouvez plus facilement passer à DirectX après XNA", mais comme je vais déplacer les carrières du développement commercial au développement de jeux, cela vaut-il même la peine de se concentrer sur XNA actuellement? Ou les employeurs potentiels vont-ils rire quand je dis XNA?
Dois-je embrasser l'expérience de XNA sachant que les concepts et les leçons apprises seront principalement transférés? Ou passer ma ressource la plus précieuse (temps) ailleurs où?
Vous cherchez des conseils auprès de n'importe quel vétérinaire de l'industrie.
Réponses:
Je suis programmeur dans l'industrie des jeux sur console depuis près de quatorze ans et j'ai souvent été impliqué dans les décisions d'embauche.
Par conséquent, en tant que l'un de ces employeurs potentiels, lors de l'évaluation d'un employé potentiel, il y a trois choses que je recherche dans une nouvelle embauche, et je les recherche dans cet ordre.
Maintenant, répondez à votre question. Cette question de "quel type de projet dois-je faire" aborde de loin le moins important des critères qui me tiennent à cœur. Je me soucie beaucoup plus de savoir si vous vous intégrerez socialement dans mon équipe et de la façon dont vous pourrez apprendre de nouvelles choses rapidement, que de savoir si vous avez utilisé XNA ou votre propre moteur de jeu dans un projet précédent. Dans l'ensemble, je suppose que je vais devoir vous former à notre propre moteur de jeu interne, et donc vos projets antérieurs ne comptent pas vraiment pour moi. C'est, bien sûr, à moins que vous ne possédiez par magie une expérience avec un outil ou une technologie particulière que j'ai besoin que quelqu'un connaisse. Mais c'est inhabituel; généralement, je suppose que je vais devoir vous former pour utiliser notre API.
Tout cela ne veut pas dire que je ne veux pas que vous ayez fait des projets à domicile. Je le fais absolument. Mais je ne me soucie pas vraiment de ce que sont ces projets, ni des technologies qu'ils ont utilisées, car ils ne seront probablement pas pertinents pour ce que j'ai besoin que vous fassiez pour moi, car nous utiliserons différentes bibliothèques ou API.
Mais je veux que vous me parliez de vos projets. Je veux voir à quel point vous êtes enthousiaste lorsque vous en parlez, car cela me dit quel genre de personne vous êtes (voir le point 1 ci-dessus). Je veux connaître les problèmes que vous avez rencontrés et comment vous les avez surmontés lors du développement de votre projet (voir point 2 ci-dessus). Je veux absolument que vous ayez terminé au moins un projet - être capable de surmonter la douleur et de terminer quelque chose en dit long sur le genre de personne que vous êtes, et me dit que vous êtes quelqu'un que je pourrai compter sur si ("quand") les choses deviennent difficiles.
Honnêtement, aucune des deux options n'est "meilleure"; l'important est de terminer quelque chose, n'importe quoi. Toute technologie que vous apprenez en cours de route est la cerise sur le gâteau, mais ce n'est certainement pas ce qui me ferait embaucher.
(Mais avec tout ce que dit .. Je vais vous attendre à être compétent en C ++. D' une façon ou une autre, vous avez vraiment besoin d'apprendre C ++ afin de se faire embaucher dans l'industrie des jeux traditionnels. Vos projets à la maison ne sont pas nécessairement besoin d'être en C ++, mais je m'attends à ce que vous puissiez en faire preuve couramment.)
la source
Une chose que d'autres n'ont pas encore mentionnée est qu'il est important de terminer vos projets.
Avoir un portefeuille avec un tas de choses inachevées n'est pas aussi impressionnant qu'un portefeuille avec une chose finie et bien polie.
De plus, si vous basez votre travail sur le travail existant de quelqu'un d'autre (comme un moteur open source ou des actifs artistiques disponibles gratuitement), assurez-vous de mentionner sur votre portefeuille quelle partie est la vôtre.
la source
Il me semble que la réponse dépend du type de programmation de jeu que vous souhaitez faire.
Si votre objectif est d'être un codeur moteur ou un codeur graphique , vous auriez avantage à passer sous le capot et à apprendre comment fonctionnent les moteurs. Cela ne signifie pas que vous ne pouvez pas utiliser XNA ou un autre moteur, framework, etc. standard. Se familiariser avec les entrailles d'un moteur de haute qualité est un excellent moyen d'apprendre à construire un moteur de haute qualité! Si vous suivez cette voie, vous n'avez même pas nécessairement besoin d'écrire de jeux réels. Un portefeuille de démos graphiques autonomes et / ou d'extensions non triviales à un moteur existant (par exemple, l'implémentation d'un nouveau shader dans un moteur ou similaire) vous fera du bien. Vous pouvez jeter un œil à mon portfolio de démos graphiques ici; c'est maintenant dépassé de quelques années, mais c'est essentiellement ce qui m'a valu un travail de programmation graphique dans un studio de jeux.
D'un autre côté, si vous préférez être un codeur de gameplay , l'une des personnes qui travaillent sur les mécanismes de jeu, les contrôles, l'IA ennemie, etc., votre temps ne sera pas bien dépensé pour creuser dans Direct3D. Bien sûr, il est utile d'avoir une compréhension générale et de haut niveau du fonctionnement des graphiques, mais dans un contexte professionnel, vous n'entrerez probablement pas en contact direct avec des éléments graphiques de bas niveau très souvent. Dans ce cas, je recommanderais absolument d'utiliser un moteur standard pour que vous puissiez passer votre temps à créer des jeux réels.
Donc, pour résumer, si vous voulez jouer, utilisez simplement un moteur existant; si vous voulez faire du moteur / des graphiques, alors créez vos propres trucs et / ou étendez un moteur existant
la source
quand je finissais à peine mon portfolio, mon portfolio était présenté dans cet article. cela semble être une bonne idée de ce qu'il faut faire et de ce qu'il ne faut pas faire lors de la constitution de votre portefeuille
http://leewinder.co.uk/blog/?p=23
la source
Ne faites pas votre portfolio en fonction de la façon dont vous percevez le «standard». Vous devez travailler sur des projets qui vous intéressent . Si vous aimez la mécanique de jeu, allez-y et faites un tas de jeux. Si vous aimez créer une IA intéressante, faites peut-être une démo pour une configuration de type RTS. Par exemple, je m'intéresse de plus en plus à la programmation graphique et je consacre plus de temps à l'apprentissage des concepts de rendu et à leur application dans mon moteur. (Par conséquent, mon projet de jeu a été temporairement mis sur l'étagère.)
Lorsque vous travaillez principalement sur des choses que vous aimez, cela fait vraiment ressortir le «vous» dans le portefeuille. D'un autre côté, avoir au moins un jeu terminé montre que vous pouvez parcourir les parties "inintéressantes" de la création d'un jeu. Il est bon d'avoir une certaine flexibilité pour pénétrer dans un territoire moins familier, mais ne vous y forcez pas beaucoup. Vous pouvez distinguer les bons portefeuilles du niveau d'enthousiasme et d'intérêt mis dans le travail, et les projets basés sur vos domaines d'intérêt seront naturellement les plus raffinés. Donc, quel que soit votre domaine d'intérêt, vous devrez éventuellement vous concentrer sur ce domaine de programmation pour un emploi.
la source