Mi hijo (15) ha decidido que quiere seguir una carrera como programador de juegos. He dicho que debería comenzar ahora con un juego simple. Todavía no tiene experiencia en programación, pero yo soy un programador (aplicaciones de negocios, no juegos), así que puedo enseñarle programación, pero ¿cuál sería una buena plataforma para comenzar? Inicialmente estoy buscando algo que pueda proporcionar resultados rápidos, para mantener su entusiasmo.
¿Qué sugieres?
Respuestas:
XNA es una buena solución para un programador bastante seguro. Sería un buen objetivo apuntar en el futuro.
El Unreal Development Kit es una forma de obtener resultados mucho más rápida y fácilmente, y podría ser un buen lugar para comenzar. Los comentarios han indicado que el UDK es en realidad una alternativa bastante mala , por lo que no puedo recomendarlo.
La unidad es una alternativa, se ejecutará en teléfonos que es algo que UDK no puede hacer (que yo sepa). Entonces, si está interesado en programar juegos para teléfonos, ¿quizás la unidad sería mejor?
fuente
También tengo 15 años, así que supongo que eso podría ayudar. :PAGS
Recientemente comencé a aprender Python (he estado haciendo C ++ durante un año más o menos), y me resulta mucho más fácil aprender que C ++. Hay muchas menos trampas, y necesitas poco código para obtener algo en la pantalla; lo que encuentro hace que quieras continuar.
Y hay envoltorios como Pygame y Pyglet sobre SDL / OpenGL para el lado de los gráficos.
Antes de que empiece a hacer juegos simples, le aconsejaría aprender un idioma durante al menos un par de meses. (Por supuesto, los juegos basados en texto como adivinar el número y el ahorcado son buenos ejercicios durante este tiempo)
fuente
Una respuesta poco ortodoxa aquí:
Starcraft II Galaxy Editor.
Puedes hacer casi cualquier juego dentro de Starcraft 2.
También enseña la mayoría de las construcciones de programación como bucles y sentencias if de forma centrada en la GUI.
Una vez que tenga confianza en lo básico, puede tenerle cosas de guiones.
Si es bueno en eso y lo encuentra interesante, le encantará la programación adecuada del juego.
fuente
Dividiría aproximadamente las herramientas de desarrollo de juegos en tres amplias categorías:
Para las personas sin experiencia en programación, generalmente les aconsejo que comiencen en la primera categoría, solo para comenzar a hacer ALGO. Cuando se sienten cómodos con una herramienta de autor determinada pero realmente sienten que las limitaciones superan los beneficios, es hora de aprender algo en la siguiente categoría.
fuente
Sé que esto me saldrá un poco, pero al crecer realmente disfruté de P-Robots . Hay un objetivo realmente simple (vencer a los otros robots), una API simple y un corto período de tiempo entre los cambios en el código y ver los resultados. Se divide en inteligencia artificial, patrones de diseño e incluso estructura de código a mayor escala (algunos de estos robots pueden hacerse bastante grandes, ¿y qué hay de compartir código entre robots?). Si puede encontrar algo similar pero más nuevo, sería una buena manera de obtener la parte de "programación inicial". Sugerencias:
Una vez hecho esto, considera optar por un juego de disparos de desplazamiento en 2D, un juego de plataformas o un juego de "estilo arcade" similar, puedes usar SDL o XNA o lo que sea más familiar. Incluso conseguir un clon de pong en funcionamiento no es del todo trivial. Esto le da un pequeño eco de lo que es construir algo "molido".
Después de esto, explore: un mod para un juego 3D existente (un nuevo objeto, o un bot, o algo) para dar una pequeña idea de los motores más grandes.
Las claves, por lo que he visto, parecen ser:
fuente
Mi consejo es hacer juegos basados en la web. ¿Por qué? Bueno, antes que nada, JavaScript es un lenguaje hermoso que le enseñará todos los conceptos básicos de programación y de hecho puedes hacer un gran juego competente y multiplataforma con él. También lo calificará para muchas más cosas además de simplemente hacer juegos ... Si, por alguna razón, no le gustaría que su hijo entrara en el desarrollo web, entonces sugiero usar Python, con un módulo llamado PyGame. También tengo experiencia con eso, y soy increíble. Lo que no sugiero es comenzar con C / C ++, eso es lo que hice y es horrible y podría dejarlo desmotivado para programar por completo.
En otra nota, probablemente eres un padre increíble, ¡felicidades!
fuente
Mindstorms Roboter son realmente geniales. Conseguimos algunos NXT en la escuela, y la semana pasada comenzamos a programar cosas como seguir una línea y esas cosas. Puede obtener resultados fácilmente.
También encontré www.3dgamestudio.de hace un tiempo. No me metí más en eso, pero fue realmente interesante. Puedes programar con lite-C que es:
En el http://tutorial.3dgamestudio.net/ entras en él. Y también hay un editor de nivel, modelo y terreno.
PD: Tengo 16 años y comencé con un amigo que programaba un sitio web y personalizaba un servidor de juegos programado. Entonces esto también podría ser interesante para él.
fuente
No puedo sugerir esto lo suficiente, pero construye sus propios niveles para su juego favorito .
Para alguien de ese nivel de edad / habilidad, deben comenzar construyendo niveles en su motor de juego favorito .
Muchos juegos geniales vienen con un editor de niveles que permite muchos grados de libertad.
RPG : serie de herramientas electrónicas NWN 2 de Obsidian , rollos de Elder
RTS : el editor de niveles de Warcraft III es un fantástico editor de RTS e incluso se separó de su propio juego ( liga de leyendas y héroes de newerth ).
FPS : Hammer for Half-Life 2. Counterstrike fue originalmente un mod de Half-Life.
Haga clic aquí . Crear niveles para tu juego favorito es probablemente el mejor lugar para comenzar.
fuente
Aunque toda la información aquí es útil, quería mencionar que el Desafío STEM (una competencia nacional de juegos promovida por la Casa Blanca y la ESA) tiene algunas sugerencias sobre las plataformas http://www.stemchallenge.org/about/Default.aspx
Gamestar Mechanic, Gamemaker, Kodu, Scratch, PBS KIDS Stream listo para aprender
Tengo la sensación de que hay recursos comunitarios sobre estas plataformas específicamente en lo que se refiere a STEM.
Vea también este excelente tutorial sobre python y pygame (que también es un libro en línea) http://inventwithpython.com/chapters/ aquí está el PDF de la secuela del libro específicamente sobre pygame http://inventwithpython.com/blog/making -juegos-con-python-pygame /
Aquí hay otro artículo del NYT http://www.nytimes.com/2011/11/10/technology/personaltech/computer-programming-for-children-minus-cryptic-syntax.html?_r=2&sq=mitchel+resnick&st=cse&adxnnl= 1 & scp = 1 & adxnnlx = 1322489239-tMp1Wjl9FUcI8rLaJ6cbOw
Actualización: aquí hay una discusión sobre slashdot http://ask.slashdot.org/story/11/12/27/152228/ask-slashdot-tools-for-teaching-high-school-kids-how-to-make-games
fuente
Game Maker es una excelente opción para personas sin experiencia en programación. Tiene una versión gratuita y una versión paga relativamente barata. Le permite crear juegos rápidamente con una interfaz de arrastrar y soltar, pero incluye soporte para secuencias de comandos más avanzadas.
fuente
Como Martin mencionó, el UDK es probablemente la forma más rápida de hacer que algo funcione, ya que viene con tantas cosas prefabricadas como IA, modelos y también una gran cantidad de libros. Tiene un editor de mapas muy bueno, y el lenguaje es Java-esque (y similar a un script ECMA).
Una alternativa podría ser intentar hacer juegos en Flash o Silverlight: comience con juegos 2D simples. Cualquier género de juegos que le guste dicta el juego de herramientas.
fuente
Viniendo de un niño de 14 años, este consejo puede ser útil. Creo que la mejor manera de elegir una plataforma es la plataforma más adecuada para ese propósito. He hecho esta publicación muchas veces antes.
Desde Reddit -
Mira juegos como Minecraft. Claro está escrito en Java, un lenguaje que tiene una cuota de mercado extremadamente pequeña en la industria de desarrollo de juegos. Sin embargo, ¿les importa a los consumidores? No. Se preocupan por la funcionalidad.
Sin embargo, como su hijo no tiene experiencia en programación, le sugiero que aprenda un lenguaje que sea rápido de codificar, como Python, o que use una plataforma existente, como XNA. Personalmente, amo Slick2D con Java, pero creo que esa es mi preferencia ...
fuente
Me presentaron la programación a una edad temprana (menor de 15 años), y mi papá decidió usar VB (1.0). Hicimos una versión retorcida de pong usando un objeto temporizador y un dibujo GDI. Me gustó eso porque comenzamos con un lienzo en blanco y pudimos aprender los conceptos básicos de las estructuras de programación al intentar hacer algo divertido.
Hoy, creo que elegiría XNA y elegiría un juego 2D simple. C # y XNA son bastante sencillos y te dejan mucho espacio para crecer, y son gratuitos.
fuente
Si solo quiere hacer juegos, entonces debe usar XNA, Unreal, Unity, etc. Si quiere ser un programador de juegos, primero debe aprender C / C ++ y OpenGL / SDL o D3D.
XNA, Unreal, Unity, etc. son geniales para hacer juegos, pero son muy malos para hacer demasiado por ti. Estoy seguro de que la gente no estará de acuerdo conmigo en esto, pero estos básicamente te convierten en un programador perezoso y cuando llegue el momento de aprender cosas como los puntos en C ++, será más difícil porque elegiste primero las opciones más fáciles.
Peronally, nunca sugiero usar otro C / C ++ como primer lenguaje para aprender si quieres ser un programador de juegos. La razón principal es que incluso si vas y aprendes C # / XNA, si realmente te conviertes en un desarrollador de juegos, tendrás que conocer C o C ++ en algún momento porque nadie te contratará de otra manera. Entonces, si se toman en serio la profesión, solo retrasarás el aprendizaje de lo que se espera de ti.
fuente