¿Quieres comenzar el desarrollo del juego en Unity?  Necesitará familiarizarse con uno de estos idiomas compatibles con Unity.

7 Unity Game Development Idiomas para aprender: ¿cuál es el mejor?

Anuncio Desarrollar juegos nunca ha sido tan fácil. Las plataformas de desarrollo de juegos como Unity hacen posible la creación de todo, desde simples plataformas en 2D hasta juegos de disparos en 3D en primera persona completamente detallados. Unity es gratuito para los desarrolladores pequeños, y hay una gran cantidad de tutoriales sobre la mejor manera de usar el editor para crear prototipos de sus ideas. A

Anuncio

Desarrollar juegos nunca ha sido tan fácil. Las plataformas de desarrollo de juegos como Unity hacen posible la creación de todo, desde simples plataformas en 2D hasta juegos de disparos en 3D en primera persona completamente detallados. Unity es gratuito para los desarrolladores pequeños, y hay una gran cantidad de tutoriales sobre la mejor manera de usar el editor para crear prototipos de sus ideas.

Aprender a usar el programa Unity solo te llevará hasta cierto punto. El núcleo real de tu juego será el código que determina su comportamiento. Determinar qué idioma aprender para el desarrollo del juego puede ser difícil, pero en el caso de Unity, es simple.

1. La mejor opción: C #

Para cualquier persona que comience con Unity, o cualquier persona con conocimientos previos de programación orientada a objetos, C # es el lenguaje adecuado para aprender para Unity. De hecho, C # es el único lenguaje que vale la pena aprender para la plataforma, y ​​con buenas razones.

Unity usa Mono, que es una implementación multiplataforma del marco .NET de Microsoft. C # es el lenguaje principal de .NET, y todas las bibliotecas de Unity se crean utilizando el código C #. Decir que C # es el lenguaje de la Unidad no sería una exageración. Unity ha dejado en claro que consideran que C # es el único lenguaje para usar con el motor en el futuro.

Estas son buenas noticias, ya que C # es un lenguaje poderoso y fácil de aprender. La unidad es solo una de las muchas buenas razones para aprender C # 7 Razones prácticas para aprender la programación C # 7 Razones prácticas para aprender la programación C # Hay muchos lenguajes de programación, ¿cuál debería elegir para aprender? Aquí hay varias razones para aprender C #. Lea más, y si es un principiante, incluso puede encontrarlo más accesible. El desarrollo de juegos da estructura al aprendizaje, y los objetivos basados ​​en proyectos conducen a una mayor comprensión de los nuevos temas.

Con la introducción del sistema de trabajo C # y ECS, Unity está impulsando lo que se puede hacer con C # más y más, y el nuevo compilador Burst lo hace más rápido que nunca.

2. La alternativa actual: JavaScript

Unity también admite JavaScript, conocido como UnityScript. Desde su lanzamiento, JavaScript se ha sentado junto a C # como un lenguaje de desarrollo de Unity con todas las funciones. La referencia de secuencias de comandos de Unity tenía un código de ejemplo en C # y JavaScript para la mayoría de los elementos de la biblioteca.

Esto fue útil para los desarrolladores provenientes de un fondo de JavaScript, ya que a pesar de las diferencias en la forma en que se estructuraba el código, podían usar una sintaxis familiar. Hubo, sin embargo, un problema.

Si bien UnityScript parece similar a JavaScript, no lo es. UnityScript tiene clases, algo que JavaScript no tiene. Las características de JavaScript, como la declaración de variables múltiples y los puntos y comas opcionales, no están disponibles en UnityScript.

Quizás de manera crucial, la búsqueda de ayuda de JavaScript en proyectos de Unity siempre ha causado confusión, ya que la mayoría de las personas se referían a él como JavaScript en lugar de UnityScript. Los resultados para el diseño web y el desarrollo de juegos se desdibujaron, y la diferencia entre los idiomas fue un punto de discusión para los desarrolladores de JavaScript puro.

Quizás, como era de esperar, Unity anunció que iban a retirar el soporte para UnityScript, y ahora hay una línea de tiempo para desmantelarlo. Todavía puedes usar JavaScript con Unity, pero sabiendo que va a terminar, ¿por qué lo harías?

3. La vieja tercera opción: Boo

En los primeros días de Unity, existía la opción de usar Boo, un lenguaje similar a Python. Quizás esto no sea sorprendente ya que Rodrigo B. De Oliveira, el diseñador de Boo, trabajó para Unity. El lenguaje es compatible con .NET y Mono y se implementaría completamente con el motor del juego. ¿Qué salió mal?

No lo usaron suficientes personas, probablemente asumiendo que simplemente estaba tratando de imitar a Python. Con el tiempo, Unity dejó de ser compatible con Boo, y los próximos cambios en UnityScript harán que todos los scripts de Boo antiguos sean inútiles en Unity. Algunos podrían ver esto como una oportunidad perdida, ya que Boo fue un gran intento de sintaxis similar a Python para la programación .NET.

Sin embargo, los amantes de Python tienen otra opción.

4. La extraña elección: IronPython

Si quieres desarrollar juegos, Python probablemente no sea el lenguaje para ti 4 razones por las que Python no es el lenguaje de programación para ti 4 razones por las que Python no es el lenguaje de programación para ti El lenguaje de programación Python es extremadamente popular, pero aquí están Algunas razones por las que es posible que desee evitar Python. Leer más, pero es posible. En su blog de Microsoft Developer Community, Charlie Calvert describe cómo ejecutar Python desde C #, pero no es para los pusilánimes. Casi diez años después, IronPython todavía está en desarrollo activo.

En resumen, deberá descargar las bibliotecas IronPython de GitHub y hacer referencia a ellas en su proyecto C #. Esto le permitirá llamar a los scripts de Python desde los scripts de C # como lo haría con cualquier otra biblioteca. IronPython también permite llamar a bibliotecas .NET desde Python. Tan útil como suena, dado que Unity se basa en C #, esta funcionalidad no ayuda.

IronPython, e IronRuby, su proyecto hermano que vincula C # con el lenguaje de programación Ruby, son proyectos fantásticos, pero no son prácticos para usar con Unity.

5. La elección interesante: Lua

Una de las mejores implementaciones de un lenguaje externo para Unity es MoonSharp, un intérprete de Lua. Este proyecto no está diseñado para reemplazar C # como lenguaje, más bien actúa como un puente. El caso de uso perfecto para MoonSharp sería agregar de una manera para que los jugadores de tu juego creen mods de juego en el idioma Lua.

También puede usarlo para describir objetos y niveles de diseño por separado de su código de juego principal.

Si ya está codificando en C # y está buscando una forma interesante de interactuar con su código, merece la pena considerar MoonSharp. Dado que está disponible de forma gratuita en la tienda de activos de Unity, puede importarlo directamente en sus proyectos.

6. El mejor lenguaje para complementos: C / C ++

A pesar de la robusta biblioteca de Unity y todas las herramientas disponibles que C # ofrece, a veces es posible que desee sus propios complementos. Las principales razones por las que las personas optan por los complementos incluyen la velocidad o el acceso a una base de código ya escrita en otro idioma. La creación de estos scripts en complementos de DLL ahorra el código de rehacer y puede mejorar el rendimiento en algunos casos.

En la mayoría de los casos, C ++ será el lenguaje utilizado para la creación de complementos, pero C funcionaría igualmente bien. Siempre que el código se convierta en una DLL, se puede colocar en la carpeta del complemento de Unity y hacer referencia al código. Sin embargo, lo más probable es que si ya se siente cómodo codificando en C / C ++, ¡aprender C # sería una tarea relativamente simple!

7. Nuevo lenguaje para complementos: óxido

Rust es un lenguaje con mucho ruido alrededor. Los programadores experimentados lo adoran por la increíble cantidad de control que brinda mientras evitan las trampas de escribir en lenguajes menos seguros como C ++. Rust fue creado por Mozilla en 2009, como una forma para que los desarrolladores desarrollen rápidamente software de alto rendimiento.

Si bien no es posible escribir Rust en Unity directamente, puede acceder a las funciones y métodos escritos en Rust desde su código de Unity. Jim Fleming cubre cómo hacerlo en detalle en su publicación en Medium.

Si esto parece familiar, es porque esta es otra forma de crear complementos nativos. Al aprovechar la capacidad de Rust para interactuar con otros lenguajes, puede llamar a las funciones de Rust directamente desde el código C # utilizando el atributo DllImport de Unity. ¡Naturalmente, hay varios pasos intermedios, y se recomienda leer la publicación de seguimiento de Jim junto con obtener una buena comprensión de las FFI (interfaces de funciones extranjeras)!

Una eleccion simple

La actitud de Unity hacia cualquier lenguaje que no sea C # es clara, y las mejoras constantes a Unity dependen de esta determinación. Combine esto con la mejora continua de Microsoft de C # como lenguaje, y aprender C # para el desarrollo de juegos de Unity es obvio. Y asegúrese de consultar Unity Learn para obtener una forma más fácil de aprender el desarrollo de juegos Unity Learn es la forma más fácil de dominar el desarrollo de juegos Unity Learn es la forma más fácil de dominar el desarrollo de juegos ¿Desea comenzar a desarrollar sus propios juegos? Unity Learn es la mejor y más fácil forma de aprender y dominar lo que necesita saber. Lee mas .

Sin embargo, esta no es su única opción, Unity es solo un motor, y hay muchas opciones de software de desarrollo de juegos 5 Herramientas de software de desarrollo de juegos gratis para hacer sus propios juegos 5 Herramientas de software de desarrollo de juegos gratis para hacer sus propios juegos Software de desarrollo de juegos gratis es una excelente manera de comenzar a hacer videojuegos. Hemos compilado el mejor software de juegos del mercado. Lea más para elegir.

Explore más sobre: ​​C, Desarrollo de juegos, JavaScript, Unity.