8

¿Con qué lenguajes de programación se desarrollan videojuegos?

12282Puntos

hace 7 años

¿Quieres programar juegos? ¿Quieres saber con qué lenguajes se programan los juegos para móviles, consolas o escritorio? En este programa te hablamos de Unity3D, GameMaker, Unreal Engine, C#, Javascript, UnrealScript, GameML, C++, Source de Valve y cómo desarrollar juegos profesionales. Aprende más en la Carrera de Videojuegos

Ahora Platzi tiene cursos de:

Transcripción

Nintendo acaba de lanzar una nueva consola llamada “Nintendo Switch”. Es una sorpresa gigantesca porque es básicamente Nintendo diciendo “yo ya no le tengo temor a Dios”. Y lanzando una consola muy compleja. Es una consola que tiene un dock para conectarla al televisor, que tiene dos controles que se pueden desacoplar o acoplar a una pantalla central y la pantalla central puede no transmitir y mandar la señal al televisor, o transmitir y mostrar y “renderear” y tenerla inmóvil. Tiene, como les mencionaba, el dock y se puede jugar en el televisor. Pero también lo puedes sacar y jugar en el parque y que, obviamente, te roben. Usa game cards, que no es una memoria SD, que es un error común. Es un formato estándar propietario de Nintendo.

También puedes enlazar varias de estas consolas para jugar con amigos y puedes desconectar los controles laterales para que varios amigos lo usen. Muy similar al concepto del Wii remote. Puedes jugar en un automóvil, si tienes un soporte al mareo de un piloto de aviones de combate. Hay un control profesional porque otro tema de Nintendo es que quieren meterse al mundo de los eSports, sobre todo con juegos exitosos que ellos han tenido ya en eSports, como Super Smash Bros, Mario Kart o Splatoon. Tiene una rendija para poderlo poner en el avión. Y, como les decía, se puede conectar o usar como un control externo.

Es muy interesante, pero lo más interesante es la perspectiva para los desarrolladores. El problema eterno de toda la vida de Nintendo es que Nintendo no atrae desarrolladores de perfil triple A. Normalmente los mejores juegos de Nintendo los tiene que hacer Nintendo o sus otras casas de estudio a las que está acoplado, como Game Freak, que hacen los juegos de Pokémon, o la gente que hace los juegos de Metroid o la gente que hizo Splaton, ectétera. Entonces, teniendo en mente esa realidad, qué va a hacer Nintendo ahora para realmente impulsar el desarrollo de consolas, perdón, el desarrollo de juegos para consolas dentro del Nintendo Switch.

Y es aquí algo que me parece muy interesante de parte de ellos. Ellos están usando un chip de NVIDIA que es completamente estándar, es muy similar al que tienen las tables o los laptops de alto rendimiento y que permite correr juegos en un motor multiplataforma que se llama “Unity”. Unity 3D es el motor multiplataforma que nosotros mostramos en el Curso de Creación de Videojuegos, al que tú puedes entrar ya mismo si eres parte de la suscripción mensual o anual de Platzi. Enseñamos desde cero a crear juegos en Unity. Unity tiene algo muy particular, y es que Unity te permite crear juegos que, con pequeños cambios, puedan funcionar en consolas, en PC, en Mac, en iPhone o en Android, que en este momento son las plataformas más importantes. Históricamente era difícil hacer juegos desde Unity hacia plataformas de Nintendo, se podía pero se necesitaba usar una serie de librerías especiales.

Ahora tenemos a Unity nativo por defecto dentro del mundo de Nintendo Switch, y eso hace que probablemente Nintendo Switch sea un éxito gigante, como lo fue el Wii. O de pronto es una consola de nicho, como lo fue el Wii U. Todo lo que sabemos es que Nintendo nunca pierde. Lo muy interesante de Unity no es solamente el hecho de que es multiplataforma, sino que Unity está detrás de muchos juegos increíbles, más de los que tú creerías. Unity también está detrás de la revolución de la realidad virtual. La mayoría de las experiencias de realidad virtual son hechas con Unity, en particular para el Oculus Studio.

Los lenguajes de programación

Y por último, como algo curioso, es posible programar en Unity en dos lenguajes, que es de lo que quería hablar en este video. En JavaScript o en C#. La inmensa mayoría de los lenguajes de programación orientados a videojuegos están basados en C, por ende se va a parecer la sintaxis a la de Java, a la de JavaScript, a la de C, a la de C++ o a la de C#. En este caso en particular, Unity te permite programar en C# o en JavaScript. Obviamente tienes mucho más rendimiento en C# porque C# tiene un just in time compiler mucho más avanzado que el de JavaScript. Pero puedes desarrollar juegos completos y complejos con este sistema.

¿Qué estudian los que hacen videojuegos?

El competidor número uno de Unity es un entorno de desarrollo de videojuegos que se llama “Unreal Engine”, Unreal Engine solía ser absurdamente caro. Los desarrolladores de videojuegos tenían que pagar en el orden de millones de dólares para tener acceso al Unreal Engine. Pero gracias a que Unity cambió el juego y a que las plataformas de desarrollo de juegos móviles como iPhone o Android se dispararon de una manera tan increíble, Unreal se abrió mucho más y ahora existe Unreal Engine 4, que hace las cosas más fáciles y permite hacer desarrollo móvil, permite obviamente preparar todo el sistema para que ustedes no tengan que programar tanto, tiene sus propias herramientas de modelado, de integración de modelos internos, o de scripting directamente, tiene su propio lenguaje de programación.

Un lenguaje que se llama “Unreal Script”, y por supuesto también está disponible para realidad virtual, el Unreal Script se parece mucho a Java, si ustedes aprenden Java o sabían ActionScript 3 de Flash, ya están listos, o si ustedes tomaron el Curso definitivo de JavaScript de Platzi que ustedes encuentran en https://platzi.com/cursos/basico-javascript/ ese curso entre otras cosas les enseña ECMA Script 6 y todo lo que tiene que ver con el nuevo ECMA script, que es muy similar a lo que usa Unreal Script, lo interesante es que Unreal Engine es de estos motores súper profesionales a los que históricamente la gente no tenía acceso.

Uno de los juegos más avanzados de realidad virtual se llama Eve Valkyrie, yo le he gastado como unas 8 horas a ese juego es maravilloso, marea un montón, y gran parte del juego (de hecho todo el juego) está desarrollado en Unreal Engine por que es lo que usa la gente de CCP para desarrollar EVE ONLINE uno de los massive multiplayer online (MMO) del espacio más grandes del mundo. Pero incluso solamente usando el Unreal Engine, un poquito de Unreal Script y el sistema de scripting de narrativa que ellos tienen, es posible desarrollar sin saber tanto programación y esto por supuesto lo enseña todo alguno de los cursos de la Carrera de Desarrollo de videojuegos de Platzi, hay uno que no enseñamos pero seguro que vamos a expandir con cursos dentro de poco aunque no esperen a que lo tengan tenemos muchos cursos, es hora de tomarlos ya, y es GameMaker, GameMaker es intrigante por que GameMaker es desarrollar juegos con arrastrar y soltar, es desarrollar juegos obviamente con scripting si es necesario pero juegos mucho más sencillos donde el enfoque es más en el gameplay y en lo que pueden hacer, una de las cosas maravillosas de GameMaker es que GameMaker tiene un workflow multiplataforma.

Por qué aprender a programar

Como les digo por supuesto que tiene código de programación, si ustedes no saben programar va a ser muy difícil que hagan videojuegos, pero es muy, sencillo es extremadamente sencillo el código que ustedes encuentran en GameMaker, y lo mágico de GameMaker es que primero tiene esta interfaz “Drag and Drop”, tiene su propio lenguaje, está derivado de C, se llama GameMaker Languaje y ustedes pueden hacer en un solo archivo un juego que corra en Android, en iPhone, en Windows, en Mac, en Linux, en consolas en Xbox, en Playstation 3, en Playstation 4, en PS Vita o simplemente que corra en la web a través de un motor especial que ellos tienen desarrollado con Canvas 3D de HTML5.

Descubre los mejores 10 juegos de programación

Es realmente interesante ustedes pueden hacerse directamente juegos como Angry Birds con GameMaker. Uno de los juegos que para mí más me gusta, por que es uno de los juegos Indie más vendidos últimamente es Undertale, y Undertale está 100% hecho en GameMaker, Undertale es un Jueguito que parece una aventura gráfica que luego se pone súper complejo los gráficos son así de sencillos, miren lo sencillos que son, ahí están son súper sencillos, pero se volvió un éxito del mercado impresionante, es un juego súper súper súper creativo, 100% hecho en GameMaker, cualquier persona lo puede hacer.

Luego tenemos los motores grandes ya hablamos de Unreal Engine, otro de los motores grandes lo hace una de las empresas más respetadas del mercado, Valve. Ustedes conocen a Valve como los desarrolladores de Steam, de Steam Box, los que están empujando el mundo de la realidad virtual con el HTC Vive, ellos también generan Dota 2 que inicialmente nació como un mod de Warcraft III pero eventualmente ellos compraron el equipo y crearon su propio juego, y es uno de los juegos más importantes en el mundo de eSports junto con League of Legends, ellos también desarrollan Counter Strike, desarrollan Portal, obviamente son los creadores de Half-Life, de Left 4 dead, pero lo más importante que ha hecho históricamente Valve, es Steam, Steam es la plataforma para videojuegos profesionales, y para gamers serios, los gamers que aprenden y que juegan en PC, en estos PC’s increíbles que se arman ellos mismos.

Steam tiene su propio motor de desarrollo de juegos que se llama Source, es un motor difícil, ellos tienen un entorno integrado de desarrollo donde se puede experimentar en Source, de hecho hay un juego muy famoso llamado Garry’s mod, que luego tuvo problemas en la comunidad, que era básicamente probar todas las cosas que tenía el motor Source, Source fue desarrollado para poder hacer juegos que con un uso muy bajo de recursos tengan gráficos increíbles en consola en PC o en lap, inicialmente para la caja naranja que fue donde salió Half-Life 2 episodio 1, episodio 2, Portal, eventualmente Portal 2, luego salió Dota, Counter Strike: Global Offensive, etc.

Source ha ido mejorando y ha ido creciendo a lo largo del tiempo, pero se siente algo abandonado para ser honestos y Source se programa con C++. Entonces quizás lo más importante que ustedes están aprendiendo con esto y que quiero que se queden es que, el lenguaje central que ustedes deberían aprender es un lenguaje basado en el estándar ECMA, JavaScript, Java, C#, C++, con que ustedes dominen uno de estos y entiendan claramente la programación orientada a objetos de estos lenguajes, va a ser muy fácil para ustedes entrar en el mundo del desarrollo profesional de videojuegos, y si ustedes no lo dominan, este es el momento.

Conoce el lenguaje de programación más fácil

Curiosamente en Platzi, por supuesto si ustedes entran a https://platzi.com/cursos/c-sharp/ van a encontrar un curso básico de C# y también tenemos un curso profesional avanzado de .Net y C#, ese lo encuentran en el curso profesional de C# y ASP.net que les enseña todo lo que necesitan de C y de C# y de ASP.NET para poder desarrollar aplicaciones, y con ese conocimiento o solamente con los conocimientos básicos de programación, ustedes ya pueden entrar al curso de creación de videojuegos, que les enseña a entender el negocio, a comprender la evolución comercial, a familiarizarse con cómo realmente se crea un videojuego, a crear algo que ustedes deben hacer que es el GDD, el Game Design Document o documento de diseño de juego, luego pueden hacer si quieren y tienen la parte artística o pueden unirse con alguien que la tenga la animación y el arte de los juegos, el arte 2D, el arte 3D, el pixel art, los escenarios, la creación de personajes etc.

Obviamente entender del negocio de los juegos, si ustedes solo lo programan no van a tener éxito, si solo lo diseñan no van a tener éxito, tienen que saber cómo promocionarlo, cómo lanzarlo, cómo hablarle a la prensa, cómo monetizarlo, qué modelo de negocio ponerle, hay muchos modelos de negocio, cómo hacerle marketing y cómo difundirlo a la audiencia correcta, y por último por supuesto tienen que programar.

Y nuestro curso, el curso de programación de videojuegos, enseña de cero cómo se hace un juego completo, tenemos un juego dentro del curso que se llama Day of the Danza 100% creado en Unity 3D, recuerden que la carrera de videojuegos es una de las inversiones más grandes que ha hecho Platzi, vienen más cursos, viene un curso más avanzado y a profundidad de Unity 3D, vienen cursos de Unreal Engine, y ustedes mismos nos pueden pedir que otros cursos le hacen falta a la carrera de videojuegos.

La cantidad de profesores que tiene este curso es impresionante y la calidad de estos profesores es magnifica, ustedes van a aprender de narrativa de los escritores de los mejores juegos del mundo, ustedes van a aprender de composición de audio y de música de la gente que estuvo detrás de éxitos increíbles como Castlevania, entonces no lo duden, completamente en español no existe un curso como este, no existe en YouTube, no existe en ninguna otra plataforma, la carrera de videojuegos de platzi es única y pueden entrar ya mismo en https://platzi.com/videojuegos/ y recuerden mi consejo: ¿quieren aprender a desarrollar juegos? aprendan C++, aprendan JAVA, aprendan C#.

Es increible lo que podemos aprender de la experiencia de usuario con videojuegos, mira estas 6 características que sin duda encontrarás en productos y juegos que amas y #NuncaDejesDeAprender

Juan Pablo
Juan Pablo
unmalnick

12282Puntos

hace 7 años

Todas sus entradas
Escribe tu comentario
+ 2
2
2150Puntos

si tan solo pudiera pagar esos 39 dolares para los cursos
de platzi

1
22506Puntos

Impresionante, me falta mucho por aprender, pero algún día lo lograre, muchas gracias