Soy desarrollador de software (2 años) y quiero comenzar a hacer un juego. ¿Dónde y cómo empiezo?

Empiezas ahora mismo, y aquí o nunca, amigo mío. Mi consejo sería olvidarse completamente del software por un minuto. Busque un gamejam desde aquí Indie Game Jams o aquí Examine Jams – Game Jolt Jams. La próxima semana es Ludum Dare. Si no conoce ludumdare, solo eche un vistazo primero.

No empieces a escribir un motor de juego o a codificar en este momento. Comienza a redactar tus ideas sobre una mecánica de juego que puedas crear prototipos e implementar rápidamente. No intentes implementar los mejores gráficos o modelos 3D en el juego todavía. Trata de hacer algo con arte asqueroso pero con un juego divertido.

Mientras te estás preparando para el atasco de juego que seleccionaste, con la mecánica del juego que deseas prototipar. Cree un estado de trabajo realmente básico de esa mecánica en cualquier motor de juego que pueda encontrar de forma gratuita. En realidad, pruébalos todos. Elija el motor más adecuado para sus necesidades / para las necesidades de su juego / para la plataforma que desea implementar. Ahora que empezaste.

Después de que termine el atasco del juego; sabrá cuáles son sus habilidades fuertes, cuáles son los pros y los contras del motor. Hiciste un juego, comenzaste a hacer juegos. Haz muchos de ellos y encontrarás el que te encantará.
No te olvides de divertirte. Si excluyes las cosas divertidas de la programación del juego, te queda la implementación.

Unidad o irreal es lo que recomendaría.

Ambos son grandes motores, y aquí están las diferencias que conozco:

Unity usa C # y Unreal usa C ++ (también tiene la función de planos, donde no se requiere programación)

Unreal es mejor en los juegos AAA donde se puede usar Unity donde no se requiere un producto AAA.

Si desea apuntar a dispositivos móviles, use Unity. Muchos juegos móviles populares están hechos con Unity: Pokemon GO, Subway Surfers, Temple Run 2.

Puedes tomar un curso o aprender de YouTube.

La unidad es gratuita, pero por $ 1500 obtienes más funciones y una licencia para vender y ganar más de una cantidad determinada. (¿Quizás un millón?)

Unreal es completamente gratis, pero gana más de una cantidad dada y tienes que pagarles tal vez un 5%.

Si estás comenzando, te recomiendo que primero aprendas a hacer juegos en 2D y que hagas en 3D más adelante.

Comienza con una idea para el juego. Esboza el juego. Si planea distribuir el juego (ya sea de forma gratuita o comercial), piense en los entornos objetivo y los canales de distribución; eso afectará las opciones de la plataforma.

Luego, elija un motor de juego / entorno apropiado para el tipo de juego (tenga en cuenta los términos de licencia y los precios al hacerlo, no solo la funcionalidad).

Luego comience a desarrollar (incluyendo no solo código, sino diálogo, música, gráficos, video, etc.).

Bueno, lo primero que tienes que hacer es decidir qué tipo de juego quieres hacer. Eso dictará todo lo demás. Obviamente, cuanto más complejo sea el juego, es menos probable que sea algo que puedas abordar por ti mismo. Es como cualquier otro proyecto de programación: es obligatorio decidir cuál será el producto final.