NOVEDADES IMPORTANTES

Acceso a todos los contenidos

Hace unos meses decidimos suspender nuestra actividad de formación online en Digital Learning SL (propietaria de esta web).

Desde entones hemos mantenido operativos nuestra plataforma de teleformación y webs de contenidos Academia Android y Digital Learning, habilitando un acceso libre y gratuito a todos estos recursos, incluyendo cursos y contenidos Premium que antes requerían un registro y pago previo, lo que ha propiciado un volumen de visitas constante de usuarios que consultan esta formación.

Venta-traspaso de los contenidos

Creemos que estas webs por sus contenidos, posicionamiento SEO y atracción de tráfico (junto a sus cuentas en redes sociales asociadas, incluyendo Twitter y Facebook de nuestro curso de Community Manager) pueden ser una oportunidad para emprendedores o compañías de diversos ámbitos (formación, marketing y publicación online, desarrollo software,…) que quieran:

  • Captar usuarios, alumnos o clientes para sus proyectos, productos y servicios.
  • Comercializar los contenidos bajo múltiples fórmulas: venta de publicidad, modelos freemium o de pago, suscripciones…
  • Crear un nuevo proyecto a partir de esta infraestructura de recursos.

Si tú o tú empresa estáis interesados en adquirirlos, ofrecemos su traspaso en propiedad exclusiva. Puedes contactar conmigo en «contacto@digitallearning.es» (por favor entiende que los correos que no vengan suficientemente identificados no vamos a atenderlos). Gracias.

Manuel Cabello (Socio-Director de Digital Learning/Academia Android)

Este es el número de tutoriales publicados:

Pincha en los textos de los contadores de Tutoriales publicados, Premium o Series de tutoriales para tener un detalle de las publicaciones que comprenden.

Desde hace unos meses, todos los contenidos, incluidos los Premium, son accesibles libre y gratuitamente.

  • Premium
  • Acceso libre
130
Acceso libre
126
Premium

Algunos datos sobre los contenidos que hemos publicado hasta la fecha:

74
Videos
61
Proyectos descargables
contacto[arroba]digitallearning.es

Creación de scripts en Unity

Post Series: Conociendo Unity3D (IV)

En este tutorial vamos a explicar cómo podemos crear scripts propios en Unity y asignarlos a cualquier GameObject de la escena. Además veremos algunos de los métodos y secuencias de comandos más utilizados, y cómo acceder a los diferentes componentes de un GameObject.

Recordemos que un script no es más que un archivo de texto plano, formado por una serie de procedimientos y órdenes que proporcionan una funcionalidad específica. Mediante componentes de tipo Script, Unity coordina el código del videojuego con los modelos. Al tratarse de una pieza de código, esta puede asignarse a uno o varios GameObjects como si tratara de un componente más, posibilitándonos un abanico inmenso de variantes para el desarrollo de un juego.

Ya vimos que Unity admite de forma nativa tres lenguajes de programación: C# (muy similar a Java), UnityScript (variación de Javascript) y Boo (derivado de Python, aunque descontinuado en las nuevas versiones de Unity). Además, dentro de las posibilidades que ofrece Unity, es posible utilizar otros lenguajes .NET, para lo que sólo será necesario poder compilar una DLL compatible.

Creación de script

Para la creación de un nuevo script para utilizar en cualquier GameObject al que se desee implementar una determinada lógica (por ejemplo la inteligencia artificial de un enemigo), se podrá realizar de la siguiente forma:

  1. Con el botón derecho del ratón sobre cualquier carpeta de la ventana «Project», y seleccionando la ruta Create > Javascript, C# Script o Boo Script (también es posible acceder a esta opción a través de la ruta Assets > Create).
  2. Otra posibilidad, es seleccionando el botón «Add Component» situado al final de la ventana «Inspector» del GameObject seleccionado, y pulsando sobre la opción New Script (a continuación se deberá indicar el nombre del script y el lenguaje de programación en el que se desea programar):

Pantalla creación script en Unity

Estructura básica de un script (C#)

Al crear un nuevo script, bastará con realizar doble clic para acceder al editor de texto, que en el caso de Unity utiliza MonoDevelop.

Dentro de la estructura básica al crear un script, se puede apreciar como hereda de la clase MonoBehaviour ( public class MainPlayer : MonoBehaviour ), que es la clase base de la que derivan todos los scripts, y excepto en C#, no es necesario escribirla para llamar a cualquiera de sus funciones. Además se pueden diferenciar dos métodos:

  • Método Update(), que implementa el código que se actualizará por cada fotograma del videojuego, en tiempo de ejecución
  • Método Start(), que será invocado antes del inicio del juego, y donde se deberán realizar las inicializaciones para los elementos declarados en el script.

También comentar el método Awake(), que será invocado justo un fotograma antes que Start(), por lo que también es práctico para inicializar variables, sobretodo variables que puedan tener conflictos de tiempo con Start().

Otra de las particularidades que proporciona Unity, y más concretamente en la declaración de variables dentro de un script, es la posibilidad de poder acceder a los valores de cualquier variable desde el propio editor de Unity (ventana Inspector).

Para acceder a dichos valores, en el caso de Boo Script y C# Script deberán declararse como «public» (pública, accesible desde otras clases). En el caso de UnityScript, no será necesario indicar el modificador de acceso de forma explícita, ya que son de tipo «public» por defecto. Esta opción proporciona un mayor control sobre los valores iniciales que se establecen en el juego, e inclusive poder realizar modificaciones durante el desarrollo del mismo.

En el supuesto de crear un script directamente en una carpeta, y querer asignarlo a un GameObject ya creado, sólo será necesario seleccionar y arrastrar el script al GameObject donde se desee añadir.

Acceso a componentes de un GameObject

Una de las tareas básicas, y muy común en el desarrollo de un script, es el acceso a diferentes componentes situados dentro del mismo GameObject. Esta opción permite variar los valores de las propiedades establecidas en el «Inspector» del GameObject, y por ejemplo cambiar la posición de un elemento en pantalla.

Para ello bastará con utilizar la función getComponent , que permitirá obtener una referencia a la instancia del componente. Posteriormente, será posible acceder a las propiedades del componente y asignar un nuevo valor. Otra de las posibilidades, que no se puede realizar desde la ventana «Inspector«, es la llamada a las diferentes funciones que se pueden encontrar a partir de la instancia del componente:

Nota: Es posible acceder a otro script utilizando la función getComponent, e indicando el nombre de la clase o archivo.

Acceso a GameObject

Otra de las opciones que es posible que resulten de gran utilidad a la hora del desarrollo de un script, es el acceso a otros objetos definidos en la escena. Para acceder a otro GameObject, será necesario declarar una variable de este tipo, estableciendo su modificador de acceso en «public», para posteriormente desde el editor de Unity, arrastrar el objeto ya construido como inicialización del GameObject:

Ejemplo Script GameObject

En el siguiente tutorial veremos un ejemplo básico de uso de GameObjetcs y Prefabs en Unity, y cómo podemos crear y asociarles scripts para que tengan funcionalidades concretas dentro de nuestro videojuego