Soy desarrollador web y me gustaría comenzar a programar juegos. ¿Cuáles son las diferencias y qué debo aprender primero?

Dado que muchos juegos están en línea ahora, el desarrollo web es un gran componente de la programación de juegos hoy en día. Entonces, si todavía estás interesado en ser un desarrollador de back-end, es posible que ya tengas muchas de las habilidades necesarias para producir backends robustos para juegos de varios jugadores.
No podría decirte cuáles son los lenguajes de programación más comunes para el lado del servidor de juegos, pero al menos donde vivo en Tokio hay muchas compañías que usan lenguajes ‘web’ como Ruby, PHP y Perl e incluso lenguajes más nuevos como Go para hacer el trabajo
Las compañías de juegos más grandes y más establecidas parecen querer desarrolladores de backend con conocimiento de C y C ++, pero aun así, les gusta los hackers de Linux con buenos conocimientos de lenguajes de scripting.

Una de las principales diferencias entre el desarrollo web y el juego es que los datos del juego no se pueden almacenar en caché tan fácilmente como los datos del sitio web. Si bien los sitios web con frecuencia se centran en servir los mismos datos a muchos usuarios y, por lo tanto, pueden beneficiarse mucho del almacenamiento en caché adecuado, los juegos funcionan mucho con los estados del usuario (cuántos elementos tiene uno o cuánta salud). El almacenamiento en caché sigue siendo importante, pero tendrá que trabajar más para eliminar los cuellos de botella a nivel de código y asegurarse de que su esquema db sea eficiente.

Muchos juegos para iPhone, tabletas y juegos ligeros usan API simples a través de HTTP, pero desde que dijiste juegos de consola y PC, es posible que quieras aprender sobre TCP y UDP. Muchos juegos de gama alta definen sus propios protocolos cuando envían datos entre clientes y servidores porque la pérdida de paquetes es menos importante que la velocidad, lo que hace que HTTP no sea adecuado para juegos RTS o FPS.

Solo pensé en poner eso ahí afuera. Los juegos son un gran campo, y las empresas buscan todo tipo de talento en diferentes áreas. No todos los que van a los juegos tienen que ser del tipo ‘C ++ estudiado en la universidad, con experiencia en el uso del motor de gráficos _____’.

Tire casi todo lo que sabe.

Lo digo en serio. Si solo es un desarrollador web, todo lo que ha estado haciendo es programar sistemas que otros han construido. Los desarrolladores de juegos tienen que diseñar e implementar sistemas.

Comience con un sólido título en informática con énfasis en la organización de máquinas. Una vez que tenga eso, debe comenzar a aprender sobre la codificación casi en tiempo real y la codificación de gráficos. Y estoy hablando de bajo nivel, poco empujador en ambos casos.

También necesitarás matemáticas serias si aún no las tienes. El álgebra lineal es un nivel mínimo de matemáticas para comprender realmente los gráficos en 3D.

Si quieres mojarte los pies, puedes comenzar en 2D y volver a implementar un clásico juego de arcade en 2D como los asteroides. NO use un motor de juego, construya el suyo propio. Aprenderá mucho sobre los fundamentos de cómo se construyen los juegos a partir de tal ejercicio.

Comience simple.

Desarrollar juegos es difícil. Necesita recursos (material gráfico, audio, etc.). Casi todos los juegos son realizados por un equipo.

Dado que has hecho desarrollo web. Yo diría, lea “desarrollo de juegos jQuery”, le daría una buena base.

O

Sabes C, por lo que podrías escribir un juego basado en texto. Hay algunos buenos ejemplos con código fuente. Solo haga una búsqueda en Google. Yo diría que hacen X y Os.

More Interesting

¿Qué tipo de sitio web debo hacer? Quiero un sitio que permita a las personas publicar su experiencia sobre un tema determinado. ¿Es este un blog o qué?

Estoy trabajando de forma remota en un sitio web. ¿Cuál es la mejor manera de enviar código HTML / CSS a los desarrolladores? ¿Permitirles ver el código o copiarlo en un documento separado?

Estoy tratando de desarrollar una aplicación de prueba en línea que muestre preguntas al azar. Estoy usando php y mysql y no sé cómo hacerlo. alguien me puede decir como empezar?

Ahora estoy trabajando como aprendiz en Python y Django. ¿Crees que esta combinación está lista para superar a la pila LAMP en el desarrollo web?

Tengo un presupuesto de $ 12,000 y una buena idea de aplicación. ¿Puedo obtener una aplicación hecha con el mismo nivel de pulido y calidad que tienen las aplicaciones de Facebook y Twitter si subcontrato a la India?

Aprendí HTML de W3Schools pero no CSS. ¿Debo comenzar a aprender JavaScript o debo aprender algo más primero?

¿Soy un mal programador si uso bibliotecas o marcos de terceros?

Cómo implementar código Java mientras se usa AWS

Cómo construir una solución de gestión de API

Estoy interesado en el desarrollo web pero no tengo antecedentes en él. ¿Qué lenguaje (s) de programación debo elegir y por qué?

Estoy planeando solicitar un programa de pasantía y capacitación para desarrollo web. ¿Qué debería aprender allí para construir un sitio web con tendencia moderna?

Cómo hacer un mapa y usarlo en mi archivo HTML

Estoy interesado en aprender Angular JS, ¿debería usar Angular 1.xy luego transferir a Angular 2.xo directamente a Angular 2?

¿Son suficientes 4 GB de RAM para hacer un desarrollo web básico (por ejemplo, HTML, PHP, JS y CSS)?

Tengo todas las habilidades necesarias para crear aplicaciones de software web a gran escala. También soy muy introvertido y encuentro que sentarme en una oficina es totalmente agotador. ¿Cuál es la mejor manera de abordar la situación?