Un Script es un documento que contiene instrucciones de programación en un determinado lenguaje, que es el que entiende la herramienta que estamos utilizando para desarrollar cualquiera sea la aplicación que requiera programación.
Algunos Ejemplos de utilización de Scripts
Por ejemplo, un Script puede contener una lista de instrucciones para que un Arduino cumpla una función. También puede contener una serie de reglas que definen el estilo de una página web. Un juego simple podría ser codificado en un Script.
Scripts en lenguaje C# que se usan en el motor Unity
En nuestro caso vamos a utilizar Scripts dentro del motor Unity, estos Scripts estarán escritos en lenguaje C# y la mayor parte del tiempo haremos que estos Scripts cumplan una determinada función dentro de Unity, utilizando los objetos y componentes de la jerarquía y realizando operaciones lógicas y matemáticas necesarias para el desarrollo de la mecánica del juego.
Qué hay dentro de un Script en Unity
Al crear un nuevo Script en Unity, en el interior se definirá por defecto una CLASE DE PROGRAMACIÓN con el mismo nombre que le dimos al archivo, la cual extenderá de la clase MonoBehaviour de Unity, además traerá definidos dos métodos (o funciones), la función Start y la función Update.
Cómo se ejecutan los Scripts en Unity
Para que el código que definimos dentro de un Script de Unity se ejecute, el Script debe estar asignado a al menos un GameObject en la jerarquía (el Script tiene que extender de MonoBehaviour para poder añadirlo a un GameObject).
Con esto es suficiente para que Unity lo añada a su ciclo de ejecución, al entrar en el modo juego, Unity ejecutará en determinados momentos algunas de las funciones que están definidas dentro del Script, por ejemplo las funciones Start, Update y FixedUpdate, y lo hará de manera automática.
Para qué sirven los Scripts en Unity
Unity es un software que se conoce como motor gráfico, este software facilita muchas cuestiones técnicas a la hora de crear aplicaciones gráficas, ya que si no contáramos con él, deberíamos manualmente programar funciones que le digan a las tarjetas gráficas cómo renderizar lo que queremos que aparezca en pantalla, haciendo uso de librerías como DirectX u OpenGL. Unity además nos provee de un motor de física que permite detectar colisiones y representar interacciones entre objetos como si se tratase de cuerpos rígidos, con las propiedades físicas más comunes que estos tienen. El procesamiento del audio también es un punto importante.
Unity nos ofrece una serie de herramientas muy útiles y que de otra forma requerirían mucho conocimiento técnico, pero para poder manejar esas herramientas se necesitan dos cosas, una es conocer el motor Unity, es decir familiarizarse con estas herramientas y entender qué función cumplen. Y lo segundo que necesitamos es saber programar para hacer uso de estas herramientas, y eso lo haremos a través de Scripts de programación.