2010-07-22 10 views
6

He estado trabajando en C++ en entornos integrados durante varios años, desarrollando aplicaciones de navegación. Hay una compañía de juegos en mi ciudad natal que me gusta, pero no tengo experiencia en el desarrollo de juegos. Podría considerar una aplicación de navegación como un tipo de juego, dependiendo de a quién se dirige.Soy un experimentado desarrollador de C++. ¿Cómo puedo ingresar a la industria del juego?

Mi pregunta es, ¿qué pasos debo seguir para ingresar a la industria? ¿Es una mala idea ingresar a la industria en esta etapa (tengo 30 años)?

+2

¿Por qué no te encuentras con esa empresa? Te dicen mejor que alguien aquí. – alxx

+1

http://gamedev.stackexchange.com/ podría ser un lugar más apropiado para publicar esta pregunta – tenpn

Respuesta

11

Ser 30 en realidad no importa, que puede entrar en la industria de los juegos en cualquier edad suponiendo que tiene la unidad y habilidad.

  • empezar a leer sobre temas de juegos y sitios web de desarrollo de juegos (GameDev, Gamasutra etc.)
  • inicia juegos de escritura. Clones de los juegos que te gustan, tus propias ideas originales, demostraciones tecnológicas, cualquier cosa que puedas señalar y decir: "Escribí eso, y en el camino aprendí estas cosas y resolví estos problemas".
  • Si hay un área específica de interés para usted, AI, Rendering, Frontend, Tools & Pipelines, Audio, concéntrese en crear proyectos de juegos/demostraciones/demostraciones que lo desafíen en esa área. "Sí, lo he hecho" suena mucho mejor en una entrevista que "sí, he oído hablar de eso".
  • Conozca personas de la industria si puede, a través de foros en línea, amigos de amigos, etc. Un buen contacto puede hacer más por sus posibilidades que semanas de codificación de muestra o meses de envío de currículos. Las compañías de juegos pueden tener casas abiertas o ferias de trabajo.
  • Los trabajos de "nivel de entrada" en el desarrollo de juegos probablemente sean frontend o herramientas. Si has hecho aplicaciones de navegación, suena como que podría ser una buena opción para ti. Si eso incluye más trabajo de bajo nivel y optimización en las plataformas integradas, también puede consultar los roles de los Sistemas.
+0

Buen consejo, gracias. –

+0

Estas son excelentes sugerencias. Definitivamente enfatizaré el punto 2. Escribe tus propios juegos. (Bueno) Las compañías de juegos quieren gente sinceramente apasionada por los juegos. Pocas cosas demuestran su pasión mejor que los proyectos realizados en su propio tiempo. – Quintus

3

Sugiero que comiences a intentar escribir algunos juegos en tu tiempo libre. Tener algunas demostraciones siempre es un buen comienzo cuando vas a una entrevista y te dará algunas ideas sobre cuál será tu trabajo.

Gamedev.net tiene un excelente conjunto de tutoriales para trabajar para obtener una gran cantidad de conceptos de codificación de juegos.

¿Tienen ofertas de trabajo? Si es así, mira lo que piden en el currículum y comienza a educarte en esos conceptos/tecnologías.

ponerse en contacto con ellos y preguntar si tienen ofertas de empleo para ingeniero de software excelente no puede hacer daño, ya sea :)

+0

Las demostraciones ciertamente no dolerá, pero beneficiarían más a un programador graduado o inexperto que busca destacarse. – tenpn

+0

Si nunca has trabajado en el diseño de juegos, creo que este podría ser un buen lugar para empezar a aprender los conceptos básicos. –

1

"industria del juego" es una pregunta amplia. Hay:

programación
  1. AI
  2. de programación gráfica.
  3. Programación de sonido.
  4. Programación de herramientas.
  5. Creación de scripts.
  6. Programación física.
  7. Programación de red.

Probablemente ya pueda ocuparse de # 7, # 5 y # 4.

En cuanto al resto, principalmente se trata de un tipo de API, además de que necesitas una muy buena comprensión de las matemáticas en 3D (a menos que hagas un juego 2D, es decir).

Para matemática 3d no puedo ayudarte. Escogí información en varias fuentes no inglesas, y la mayoría de ellas ya no están disponibles. Sin embargo, creo que this resource puede contener información de interés.

Para información gráfica 3D en general es necesario estudiar DirectX SDK y NVIDIA SDK (tanto DirectX y OpenGL), además de que hay libros de OpenGL hay que leer:
1. Francis s Hill, "Computer Graphics usando OpenGL".
2. OpenGL programming guide aka "Red Book"
3. OpenGL shading language (aka "Orange Book")
4. Y es posible que desee echar un vistazo a OpenGL reference manucal ("Blue Book")

Estoy hablando de OpenGL porque si bien no ofrece mismo nivel de control de los recursos de hardware, se es más fácil de usar que DirectX y está disponible en una mayor selección de plataformas y tiene la misma potencia que DirectX. Además, GLSL no es tan diferente de HLSL (excepto que GLSL no tiene remanentes de programación de shaders de ensamblaje como HLSL), lo suficientemente cerca de C++, por lo que es relativamente fácil comenzar.

Una cosa importante: si realmente quiere ocuparse de 3D, debe ser capaz de imaginar fácilmente las operaciones 3D en su mente. Es decir. cómo rotar objeto, escalar objeto, mover objeto, qué significa matriz, qué vectores de reflexión, cómo cortar polígono con planos, cómo encontrar intersección de dos mallas, etc., y debe tener al menos una comprensión básica de cosas más complejas como operaciones booleanas en mallas poligonales. No tengo idea de cómo desarrollar esta habilidad (está muy cerca del "dibujo mecánico"), pero tendrás muchas dificultades sin ella.

+0

Tengo una formación matemática (visión artificial/procesamiento de imágenes), por lo que las matemáticas 3d no me descifran demasiado. Más la experiencia. Gracias por la info. –

+0

+1 para grandes libros OpenGL. Esos son los mejores para aprender la API. – Sanctus2099

1

Simplemente poner "experimentado desarrollador de C++" en su CV probablemente lo llevará a la puerta. La industria de juegos (al menos en el Reino Unido) está dominada por graduados y programadores inexpertos: los mayores se agotan o son promovidos a la gerencia.

Una gran cantidad de programación de juegos es solo la programación, las habilidades son totalmente transferibles. Y su experiencia en el software de navegación probablemente lo coloque en un rol relacionado con la IA.

Si alguien con su historial se postuló a mí, sin duda les daré una entrevista.

2

Veo que ya aceptó una respuesta, pero voy a tirar mis dos centavos:

Si la compañía tiene la consola (por ejemplo, Xbox360, PS3) o de mano juegos (por ejemplo, DS, iPhone), que sin duda debe enfatiza el aspecto integrado de tu currículum. Algunas anécdotas sobre cómo optimizó el diseño de la memoria de una clase, o aceleró algún código aprovechando una característica oscura del chipset, le mostrará que puede pensar como un programador de consola. Además, si hiciste algún tipo de IA para las aplicaciones de navegación (por ejemplo, A *, Djikstra), es bueno mencionar eso.

Algunas personas recomendaron escribir juegos: ese no es un mal plan a largo plazo si sabes que quieres entrar en la industria, pero no creo que dejes que eso te impida aplicar en esta compañía en particular mientras tanto . Sin embargo, definitivamente deberías recoger una copia de uno de sus juegos recientes, jugarlo durante unas pocas horas durante el fin de semana y poder decir lo que te gusta de él.

En cuanto a los sitios web, apoyo la recomendación de Gamasutra, junto con Kotaku.

¡Buena suerte!

0

Bueno, comencé a los 16 con el desarrollo de juegos (pagos). Busque trabajos en sitios web. Haga sus propios juegos de bajo presupuesto y luego publíquelos de una manera u otra.
Si eres bueno la gente te buscará, de lo contrario tendrás que luchar un poco.

Cuestiones relacionadas