Loops y Arrays en Unity
Dentro del desarrollo de videojuegos (y en general dentro de cualquier desarrollo) un aspecto muy importante es el de uso de Arrays, y de los loops (bucles) tan vinculados estos últimos a los primeros.
Tabla de contenidos
Veamos cuales son las características de estos dos elementos.
Arrays en Unity
Para entender el concepto de Array podríamos pensar en una caja que a su vez dentro de ella contiene otras cajas más pequeñas. Podríamos decir que es una especie caja para agrupar elementos de un mismo tipo. Como si tuviésemos en casa una estantería sólo con libros, otra solo con dvds, etc. Así pues cuando nosotros escribimos el código:
public int[5] arrayInts
Lo que estamos definiendo es un array (una caja grande) de números enteros (las cajas pequeñas que contendrá el array podrán ser sólo números enteros) y que además el número de elementos que podrán estar dentro de este array serán 5 elementos. Así que tendremos un array de 5 enteros. Además podremos acceder a estos enteros mediante un índice (empezando siempre el primer índice por el número 0), así tendremos:
arrayInts[0]
Que apuntará al primer elemento (primera caja pequeña) dentro del array (caja grande). Es importante recordar que los índices de los arrays empiezan por 0, ya que si no lo tenemos en cuenta y queremos acceder al 5 elemento del ejemplo anterior deberíamos usar el índice 5, si no accedemos de esa manera, recibiríamos el error de índice fuera de rango (index out of range).
¿Cuál es la ventaja de usar arrays y no crear diferentes variables individuales para cada uno de los elementos que vamos a almacenar dentro de ellos?
Una de las ventajas que podríamos nombrar es que en el ejemplo anterior sólo tenemos 5 elementos dentro del array pero imaginemos una situación en la que el número de elementos fuese mucho superior, por ejemplo cien elementos, deberíamos trabajar con un número ingente de variables lo que haría el código muy engorroso y poco viable. Además, gran parte de la potencia del uso de arrays viene cuando combinamos el uso de estos con el uso de los loops (o bucles).
Loops en Unity
Los loops son una estructura que nos permite iterar sobre un elemento, en este caso nuestro elemento de iteración será el propio array, veamos un ejemplo de uno de los primeros tipos de loop a estudiar, el loop for:
for( int i = 0; i < arrayInts.Length; i++){
}
int i = 0;
Esto quiere decir que vamos a realizar la iteración usando un nuevo número entero al que llamaremos “i” y que empezará valiendo 0, así pues cuando accedamos al elemento del array:
arrayInts[i]
En la primera ejecución del bucle estaremos accediendo al elemento que tenga el índice 0. La segunda condición del bucle:
i < arrayInts.Length;
Nos indica que el bucle se ejecutará siempre y cuando el valor de la variable “i” sea menor que el tamaño del arrary (en nuestro ejemplo el tamaño del array es 5, así que el bucle se ejecutará siempre que la variable i sea menor que 5). Por último tenemos:
i++;
for( int i = 0; i < arrayInts.Length; i++){
Debug.Log(arrayInts[i]);
}
El uso de arrays y de loops nos permite poder manejar mucha información e iterar sobre ella de forma rápida y cómoda. Con pocas líneas de código podemos interaccionar con grandes volúmenes de variables lo que hace que el proceso de programación y el de ejecución se vean muy beneficiados.
Dentro de las estructuras de bucles podemos encontrar otras como pueden ser la función foreach y la función while, teniendo cada una de ellas sus particularidades, el concepto es el mismo, permitiéndonos recorrer de forma fácil un array de elementos para cada uno de los elementos constituyentes o mientras se cumpla una determinada condición respectivamente dependiendo de qué función de loop seleccionemos.
¿Ves la versatilidad en el uso de los arrays y los loops? Déjanos tu comentario
Curso relacionado: Curso Superior de Diseño y Desarrollo de Videojuegos con Unity 3D