No tengo dinero para ayudar a otros, pero quiero ayudar a otros. Sólo puedo hacer lo que los hechos pueden hacer
Este artículo está dirigido a personas que quieren crear sus propios juegos pero tienen poca o ninguna experiencia en programación. De hecho, voy a asumir que el lector no tiene absolutamente ningún conocimiento de programación. Me centraré en los aspectos de programación y diseño del juego más que en los aspectos artísticos. Tampoco voy a hablar de la industria del juego (porque hay demasiada información disponible), pero te explicaré algunas de las cosas que debes hacer antes de jugar. Para ser claros, no pienses en el método que he presentado aquí como la única o mejor manera de aprender el juego, pero ha funcionado para mí y para otros.
1. Elige un idioma
Lo primero que debes hacer es elegir un idioma. Tiene muchas opciones, incluidas Basic, Pascal, C, C++, Java, etc., y hay muchos debates sobre qué lenguaje es mejor para los principiantes. Para obtener una descripción general de los pros y los contras de varios idiomas, consulte el excelente artículo de John Hattan ¿Qué idioma debo utilizar?
Recomiendo usar C y C. Algunas personas piensan que estos lenguajes son demasiado difíciles para los principiantes, pero yo personalmente no lo creo porque yo mismo comencé en C. Además, C/C++ es, con diferencia, el lenguaje más utilizado, por lo que puede encontrar una gran cantidad de información y ayuda. No es una gran pregunta si aprender C o C primero, porque una vez que aprendes uno, aprender el otro no será un gran problema. Sin embargo, si elige C desde el principio, asegúrese de comprender y dominar la programación de procedimientos antes de aprender la programación orientada a objetos. (Por ejemplo, si no puedes programar sin usar las clases, no te apresures a aprender las clases todavía).
Si te resulta difícil aprender C/C, no te preocupes, puedes ir Regrese y elija un idioma que sea más fácil de aprender, como Basic o Pascal, pero creo que si lo sigue y encuentra buen material, no tendrá problemas para aprender C/C. Si sigues adelante y encuentras buen material, no creo que tengas muchos problemas para aprender C/C.
Tu siguiente pregunta es: ¿Cómo aprender C/C? Me alegra que hayas hecho esta pregunta. Lo mejor que puedes hacer es tomar una clase. Tener un maestro que te ayude a responder tus preguntas tendrá un gran impacto en tu desarrollo, y las tareas de programación asegurarán que realmente comprendas lo que estás aprendiendo.
Si no quieres ir a clase, lo mejor es buscar algunos buenos libros. No te concentres en los libros "grandes", porque terminarás leyendo algunos de ellos. Le sugiero que vaya a su librería local y dedique algún tiempo a explorar libros C y C hasta que encuentre uno que pueda comprender y del que pueda aprender. Mientras tanto, es posible que necesites algunos libros avanzados o de referencia, pero una vez que tengas una comprensión parcial del idioma, tendrás una mejor idea de lo que necesitas. Puedes encontrar algunas sugerencias en el canal LIBROS.
Aquí quiero explicar brevemente los problemas que preocupan a muchos programadores principiantes, especialmente a los jóvenes, que he visto: libros gratuitos u otras cosas. En primer lugar, hay muchos recursos disponibles de forma gratuita, incluidas bibliotecas y Macmillan Computer Publishing (tienen cientos de libros de programación). En segundo lugar, si quieres convertirte en un buen programador, debes considerar invertir en esta área. Utilice cualquier medio (legal;lt;) para conseguir algo de dinero.
Hay muchos tutoriales para aprender C y C en Internet, pero creo que son más adecuados como material de referencia para aprender libros que como materiales independientes.
2. Elige el compilador adecuado
Puedes escribir programas o código fuente en archivos de texto, o incluso escribir programas C/C en el Bloc de notas. Sin embargo, debe haber algo que convierta el código fuente en un archivo ejecutable.
Para C y C, esto es el compilador.
Existe una gran cantidad de compiladores disponibles, muchos de los cuales son gratuitos. Elegir el compilador adecuado es muy importante y una ventaja de los compiladores gratuitos es que puedes probarlos todos para ver cuál te gusta más. Sin embargo, los compiladores gratuitos suelen tener menos funciones que los compiladores comerciales o carecen de un buen soporte técnico. Afortunadamente, la mayoría de los compiladores comerciales tienen una versión inicial o de aprendizaje que tiene la misma funcionalidad que la versión completa pero es mucho más económica, con la única restricción de que no puedes distribuir programas que usen el compilador (definitivamente te quedarás atrapado en el mantener el programa a largo plazo).
Básicamente, el compilador que elijas depende de cuánto dinero puedas gastar y en qué sistema operativo y plataforma programarás. Si va a contribuir con Windows, le recomiendo utilizar Microsoft Visual C. Tiene un entorno potente que te lo pone fácil y ningún otro compilador es más adecuado para el software de Windows. Si eres estudiante, puedes conseguir una copia por un precio muy reducido. Si estás programando en DOS, lo mejor es utilizar el DJGPP gratuito.
3. Elige una plataforma de destino
Aunque puedes terminar programando en múltiples plataformas, igualmente debes elegir una plataforma para aprender. Cuando aprende un idioma, es posible que desee utilizar un sistema operativo que no sea GUI, como DOS o UNIX, antes de comenzar la programación gráfica. Esto le ayudará a concentrarse en aprender el idioma y evitar algunos de los problemas de nivel superior, como Windows. programación.
Pero una vez que estés listo para empezar a jugar, es hora de considerar cambiar de plataforma de destino. A continuación se muestran algunas plataformas comunes:
Windows: si desea trabajar a tiempo completo en la industria del juego o si desea que un gran grupo de personas juegue, entonces Windows es su primera opción. La mayoría de su público objetivo utiliza Windows y eso no va a cambiar pronto. Muchos juegos de Windows hoy en día utilizan una tecnología de la que probablemente hayas oído hablar, DirectX, una biblioteca que te permite manipular directamente el hardware, en el que puedes confiar para escribir juegos de alto rendimiento.
DOS: DOS fue alguna vez la plataforma dominante para juegos, pero eso es cosa del pasado. Aunque algunos entusiastas todavía usan DOS para juegos, ningún juego comercial ya usa DOS, y con Microsoft finalizando el soporte para DOS, DOS está a punto de retirarse. Si recién estás comenzando a jugar, no elijas DOS, y si ya elegiste DOS, no te quedes ahí. Nota: Debido a que hay muchos libros de programación de juegos escritos para DOS, es posible que sienta que jugar juegos en DOS tiene sentido al estudiar estos libros. Sin embargo, a medida que aumenta el número de libros de programación de juegos de Windows, esta afirmación se vuelve cada vez menos aplicable.
Linux: Linux es una variante de UNIX que se está volviendo cada vez más popular debido a factores como su estabilidad, asequibilidad y trama anti-Microsoft. Si bien todavía hay relativamente pocos usuarios de Linux, se está convirtiendo en una opción viable para las plataformas de destino a medida que sus entusiastas y su campo crecen potencialmente.
Macintosh: los usuarios de Mac son pequeños pero tremendamente leales, y casi todos los entusiastas de Mac que conozco tienen un fuerte deseo de tener más juegos para Mac. No he leído mucho sobre los juegos de Mac, pero estoy seguro de que los habrá, por lo que es una elección lógica.
Consolas domésticas: El mercado de las videoconsolas (como Playstation, N, Dreamcast, etc.) es enorme y tiene amplias perspectivas. Sin embargo, por diversas razones, actualmente es poco probable que existan juegos de consola no comerciales. La mayoría de los juegos de consolas son juegos comerciales.
4. Completamente cargado
Ahora es el momento de hablar sobre cómo crear el juego.
Aunque mucho de lo que digo se aplica a otros lenguajes, por razones de simplicidad voy a asumir que usted elige C/C como su lenguaje de programación de Windows.
En primer lugar, debes tener un buen conocimiento de C y C++ antes de siquiera pensar en cómo empezar a crear juegos. Debe conocer y dominar punteros, matrices, estructuras, funciones y clases. Una vez que hayas hecho esto, estarás listo para comenzar a crear tu juego.
Este artículo no puede enseñarte todo lo que necesitas saber sobre el juego. Afortunadamente esto tampoco es necesario. Hay muchos libros sobre el tema y cientos de tutoriales en línea. GameDev debería tener todo lo que necesitas ahora mismo. Estos son algunos de mis consejos para comenzar:
Estudie uno o varios libros. Para los programadores de juegos que son nuevos en Windows, "Consejos de los maestros de programación de juegos de Windows" es un buen libro para presentar la programación de Windows. Hay muchos libros excelentes enumerados en la sección "Libros" de este sitio web. Lea estos libros, repita todas las rutinas y revise los capítulos que no comprenda.
Complemente el libro con tutoriales en línea. Además de aclarar algo de lo que ha leído, los tutoriales en línea suelen cubrir temas que no se tratan en el libro.
Pide a expertos que respondan. Si no puede encontrar la respuesta en un libro o tutorial, consulte el foro de mensajes o la sala de chat de este sitio, donde hay muchas personas dispuestas a ayudar.
No pienses en los puntos anteriores como un proceso ordenado, sino como un proceso paralelo que comienza y comienza de nuevo.
No basta con estudiar y pensar, también debes aplicar lo aprendido. Comience con un juego simple y avance. Puedes leer el artículo de Geoff Howland ¿Cómo crear un juego? El artículo "El camino hacia el desarrollo de juegos".
Primero, haz un plan para lo que quieres hacer. No se apresure a unirse a un equipo, ya que eso solo ralentizará su proceso de aprendizaje. Cuando tengas experiencia con varios partidos aportarás más al equipo.
Una cosa a tener en cuenta sobre los libros: necesitas leer otros libros además de programación de juegos. Para crear el tipo de juegos que ves en las tiendas, debes profundizar en temas más avanzados que los que enseñan la mayoría de los libros de programación de juegos. Algo de esto lo puedes encontrar en tutoriales, pero aún necesitas tener algunos libros sobre gráficos, inteligencia artificial, redes, física, etc. Esta es una forma segura de obtener un título en informática porque se te pedirá que tomes cursos que crees que no tienen nada que ver con la programación de juegos, pero en realidad sí lo tienen.
5. Resumen
A continuación se muestran algunas técnicas que pueden marcar una gran diferencia:
Para comprender el conocimiento resumido, la aplicación es clave. Si no utiliza este conocimiento, no podrá conocerlo ni comprenderlo realmente. Realice algunos pequeños programas de prueba para aplicar lo que ha aprendido y, de hecho, complete los ejercicios después de cada capítulo del libro.
Juega más juegos. Encontrarás inspiración que te ayudará a dominar mejor el juego. Por supuesto, esta también es una excelente manera de alejarse del estrés de la programación.
Ayuda a los demás. Aprenderá más mientras ayuda a otros.
Haz tu trabajo. No caigas en la trampa de pensar: "Sé que puedo terminar este juego, pero tengo una idea mejor y voy a hacer este gran proyecto". Aprenderá más si se atiene a lo que comienza y termina, y tendrá el trabajo para demostrar que no es todo palabras. Mantenlo simple y no pruebes grandes juegos complejos hasta que tengas mucha experiencia.
¡Empecemos! Es hora de tener en tus manos Quake 4. Por supuesto, puede que no sea tan fácil, pero al menos puedes empezar en esta dirección y saber dónde buscar más información. ¡Después de años de arduo trabajo, definitivamente lo lograrás!