Cómo crear juegos en lenguaje C

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.

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!

¿Por qué quieres hacer esto? ¿Sin interes? Para una tarea de clase? Si lo que quieres es hacer un juego, no recomendaría este enfoque.

Dicho esto, deberías hacer lo siguiente:

1. Cree un ejecutable compilable de un programa en C.
2. Dependiendo de su sistema operativo, necesita generar un programa con una ventana / ventana gráfica.
3. Debe agregar una biblioteca de gráficos de bajo nivel al programa que pueda acceder a su GPU, como OpenGL o DirectX.
4. Debe escribir un bucle de juego que se muestre en la ventana gráfica y se actualice periódicamente para dibujar un cuadrado.
5. Debe usar un patrón de diseño Modelo-Vista-Controlador para implementar los objetos del juego y cómo aparecen en la pantalla.

Hay tutoriales sobre cómo hacer esto. Esto puede estar un poco desactualizado, pero NeHe Productions: todo OpenGL puede ser un buen lugar para comenzar.

Primero, aprenda C. Obviamente, no puede codificar un juego si no conoce un lenguaje de programación.

En segundo lugar, configure Allegro en su computadora. ¿Por qué allegro? Es el motor de juego más maduro de CI. La mayoría de los otros son solo una biblioteca gráfica, como sdl. Pero es una biblioteca 2d. Para 3D, probablemente tendrá que optar por opengl o directx, que probablemente sea demasiado complicado para un principiante.

Por lo tanto, ahora es el momento de comprender la terminología común utilizada en el juego, como el bucle del juego, la programación controlada por eventos, el doble almacenamiento en búfer, etc.

Para terminar, codifica tu juego. Tomará tiempo pero será muy satisfactorio al final

Skyd1400 / roseta

Este enlace es un proyecto que nos dieron en mi segundo año en la Universidad, completamente en C.

No hay una respuesta simple: ¿qué juegos?

Un juego en el que la computadora te haga preguntas de prueba y hagas una respuesta de opción múltiple sería una propuesta MUY diferente de (por ejemplo) un juego de gráficos 3D en línea multijugador masivo como EverQuest.

La primera podría ser realizada por un programador razonablemente bueno en quizás 100 líneas de código en un par de horas; la última requeriría al menos un millón de líneas de código y el apoyo de varios cientos de artistas, músicos, etc.

Así que creo que necesitas reducir tu enfoque en un género de juego en particular, y luego, tal vez podamos ayudarte.

Recomiendo SDL para esta tarea. Es una biblioteca C muy antigua (pero actualizada regularmente) orientada al desarrollo de juegos de computadora y al desarrollo de aplicaciones interactivas en general. Tiene una amplia variedad de características para soportar esto con una amplia gama de plataformas compatibles y, en general, es bastante maduro.

Si eres un principiante completo en la programación y / o no tienes experiencia en hacer juegos o diseñar interfaces gráficas de usuario, querrás comenzar con un juego solo de línea de comandos para aprender los conceptos básicos de cómo funciona. Por ejemplo, este fue el primer programa que escribí. Escribí un tutorial básico sobre cómo entrar en la codificación aquí.

}

más{

fgets (la respuesta de Doug Johnson a ¿Cómo se crean juegos en lenguaje C?);

}

respuesta de regreso;

}

¿C?

O C ++?

O C #

Si no hay ningún motor que yo conozca que lo use, entonces debería usar código puro

Si C ++ tienes Unreal Engine y Cry Engine

Si C # tienes unidad

Los idiomas son solo herramientas … Así que úselos sabiamente. Para crear un buen juego, puede ser más fácil usar XNA o Unity3D. Dominar C es un buen primer paso, pero debes aprender C ++, D, python, lua … C ++ es un lenguaje muy difícil. Así que úsalo con cuidado.

Sí, por supuesto, los juegos se pueden hacer en c. De hecho, todos los primeros juegos de PC, gba y nes se hicieron en C. Pero ahora C parece ser un poco viejo. Tienes que escribir demasiado para sacar algo de él. Pero es tu elección.

He encontrado un gran motor de juego en pure c orangeduck / Corange

BUENA SUERTE

Un juego en C, sí, es posible sin una biblioteca externa, puedes hacer un juego de texto como un juego de aventura de texto.
Hay bibliotecas como allegro que puedes usar para hacer juegos gráficos.
incluso puedes usar openGL para hacer juegos.

Ir a buscar héroe hecho a mano Héroe hecho a mano

Él hace exactamente eso, vive todos los días hábiles.