C es una excelente opción para crear un juego, principalmente porque se ejecutará rápidamente y en una gran cantidad de hardware, y tendrá acceso a un gran ecosistema de interacción de software y hardware. Lamentablemente, puede que no sea la mejor opción.
La desventaja de C es que es un lenguaje muy cercano a la arquitectura de la CPU, por lo que no es tan fácil de programar como, por ejemplo, Python. Sin embargo, el C era prácticamente mi primer idioma y, aunque era difícil de aprender, he llegado a apreciar realmente el control que le brinda que prácticamente ningún otro lenguaje, excepto C ++, puede igualar. Con la práctica, en realidad puede escribir código C que sea tan bueno o mejor que el código en otros lenguajes, y puede ser muy competente en la producción de código relativamente rápido. Esto mitiga pero no elimina sus desventajas. Sin embargo, te felicito por buscar aprender sobre C y programar juegos en él. Escuchará que muchas personas critican a C como una opción, alegando que es una pérdida de tiempo, difícil de codificar correctamente, etc., pero recuerde que la mayoría de los juegos profesionales están escritos en C o C ++, y si tiene un conocimiento sólido de cómo se hacen los juegos en C, tienes una sólida comprensión de cómo se hacen los juegos en cualquier lenguaje. Lo contrario no es necesariamente cierto.
OpenGL es una biblioteca maravillosa para programar GPU, pero es realmente difícil de aprender, más difícil que solo el propio C porque requiere una comprensión bastante sólida de las matemáticas detrás de los gráficos en 3D, así como también aprender un lenguaje de sombreador que se ejecuta en la GPU. Entonces, si está dispuesto a abordar eso, puede intentarlo, sin embargo, si desea hacer un juego 2D simple, le recomiendo usar una biblioteca como Allegro, una biblioteca de programación de juegos.
Allegro hace que todos los aspectos de la programación del juego (carga y visualización de imágenes, sonidos, lectura desde el teclado y el mouse) sean fáciles y en un solo lugar. Hay muchos tutoriales, probablemente el mejor para comenzar con Getting Started – Allegro Wiki.
- ¿Por qué disminuyó el mercado de los juegos de aventura?
- ¿Cuál es la importancia del juego?
- ¿Podría una comunidad rural con una red de fibra comunitaria atraer potencialmente a las personas en la industria del juego para que se muden?
- ¿Por qué las compañías de juegos indias no tienen juegos gráficos de alta gama con sede en India?
- ¿Crees que los juegos se están volviendo poco impresionantes?
Otra opción para la programación de juegos es SDL, Simple DirectMedia Layer. SDL es más difícil de usar y aprender que Allegro, pero no es tan difícil como usar directamente OpenGL o las bibliotecas del sistema operativo, y es mucho más versátil que Allegro, lo que permite la integración de OpenGL y otras cosas. Como puede ver en su página, cuentan con una gran cantidad de uso en juegos profesionales.
¡Feliz codificación!