Saltar navegación

Activa JavaScript para disfrutar de los vídeos de la Mediateca.

Primeros pasos en Unity. Añadiendo Scripts (parte 1) - Contenido educativo

Ajuste de pantalla

El ajuste de pantalla se aprecia al ver el vídeo en pantalla completa. Elige la presentación que más te guste:

Subido el 18 de abril de 2026 por Alvaro H.

28 visualizaciones

Veamos cómo se añaden los scripts a un proyecto de Unity para empezar a escribir nuestro código.

Descargar la transcripción

Vamos a introducirnos ya en el mundo de la programación dentro de Unity y para eso lo haremos viendo cómo se crean los scripts, la estructura básica de un script en Unity y veremos cómo lo que habíamos visto con respecto a otros lenguajes de programación se aplica también aquí con ciertas salvedades ya que estamos en programación orientada a objetos. 00:00:07
Pero vamos, los conceptos suelen ser los mismos. 00:00:28
Tengo aquí un proyecto de Unity totalmente vacío, 00:00:31
donde tenemos la cámara y la luz que él crea por defecto, 00:00:34
así como la escena que él también crea por defecto, 00:00:38
que por supuesto podemos cambiar el nombre en cualquier momento. 00:00:41
La distribución de la ventana es la que a mí me gusta. 00:00:44
¿Cómo se crea un script en Unity? 00:00:47
Lo primero que tenemos que saber es que los scripts tienen que estar asociados a un GameObject, 00:00:50
es decir, a algo que esté en la escena. 00:00:54
no en el proyecto 00:00:56
eso 00:00:57
recuerdo que lo que está en el proyecto 00:00:59
no significa que esté en nuestra escena 00:01:02
significa que está disponible para nosotros 00:01:04
pero no que esté en la escena 00:01:06
así que para que yo pueda 00:01:07
poner un script tiene que haber algo en la escena 00:01:09
veremos que luego 00:01:12
el script queda asociado a ese GameObject 00:01:14
y que cuando llamemos a sí mismo 00:01:15
lo que estamos llamando es al propio GameObject 00:01:18
que lo contiene 00:01:20
voy a poner un ejemplo 00:01:21
voy a añadir un cubo 00:01:22
Apunte. Si en un momento dado queremos crear scripts pero no queremos crear GameObjects en la escena, 00:01:26
pues para eso existe dentro de GameObjects la opción de crear un objeto vacío. 00:01:31
De hecho tiene su atajo porque es algo que usaremos bastante a menudo. 00:01:38
Cada vez que queremos crear algo en la escena pero que no tiene contenido, 00:01:41
pues creamos un objeto vacío, no solo para crear scripts sino también para ponerle elementos jerárquicamente. 00:01:44
Hay varias formas para añadir scripts. 00:01:52
Pues la primera, quizá la más rápida, si quiero asociar ese script a este GameObject es directamente aquí en el botón de Add Component, pues lo pinchamos. 00:01:53
Si es la primera vez que lo abrimos nos saldrá este desplegable y ahí es donde yo os diría a la opción de New Script y escribir aquí el nombre del complemento 00:02:03
o incluso si empezamos ya a escribir, pues C Sharp, pues ahí incluso reconoce que lo que queremos añadir es un nuevo script. 00:02:14
Lo añadimos y como podemos ver, muy importante, he añadido el archivo a mis assets, lo he 00:02:20
añadido también a mi disco duro y ya está disponible para nosotros y está, como podéis 00:02:27
ver, aquí vinculado en el inspector como un componente más de nuestro GameObject. 00:02:31
Voy a ir a mis assets y le voy a crear una carpeta, le voy a llamar scripts y este que 00:02:36
he creado lo rastro aquí. 00:02:43
Igual ocurrirá también en el disco duro. 00:02:47
¿Otra forma de crear scripts? Pues nos podemos ir directamente a la carpeta donde yo quiero crearlo y darle con el botón derecho crear y nos aparecerá, como podéis ver, una de las primeras opciones, un script en C Sharp. 00:02:49
La diferencia es que ahora mismo este script no está asociado con ningún GameObject. ¿Quiero asociarlo? Pues yo puedo, por ejemplo, para que veamos qué es la diferencia, yo puedo crear una esfera. 00:03:04
tengo la escena seleccionada, con lo cual la tengo en el inspector 00:03:16
e igual que algo con los demás componentes puedo arrastrar 00:03:20
cuidado, tenemos que pinchar y arrastrar, porque si pinchamos en el script 00:03:25
pues lógicamente dejamos de seleccionar la esfera, pero si pinchamos la esfera y cogemos 00:03:28
el script y lo arrastramos al inspector 00:03:32
pues de nuevo también queda vinculado 00:03:36
¿Cómo editarlos? De nuevo, podemos editarlo con cualquier programa 00:03:40
No dejan de ser archivos de texto plano disponibles en nuestro disco duro, pero lo normal es asociarlos con un programa que edite los scripts. 00:03:44
De hecho, en Unity, si nos vamos a las preferencias, en External Tools, veremos que podemos seleccionar qué editor externo queremos que utilice para nuestros scripts. 00:03:54
Por ejemplo, yo aquí tengo el Visual Studio, que es el que uso para editar mis scripts en Unity. 00:04:09
Yo, por ejemplo, si me dirijo a mi script que está aquí en el inspector, si me voy a este menú contextual que aparece aquí, le puedo dar y decirle que edite el script. 00:04:15
Y entonces se me abrirá el programa que tengo vinculado con los scripts. 00:04:28
Es lo mismo que si le doy un doble clic al propio script en la ventana de proyecto y se me abre en mi programa. 00:04:32
Analizo brevemente la estructura del script porque veremos que no se ha creado vacío, sino que ya directamente tiene algo. 00:04:39
Lo comento de pasada. 00:04:44
Como podemos ver, lo primero que nos llama la atención es que, como ya digo, no está vacío. 00:04:46
Él automáticamente ha cargado unas librerías, que lógicamente no debemos cambiar, salvo que sepamos lo que estamos haciendo. 00:04:51
Al contrario, llegará un momento en el que tendremos que añadir nuevas librerías para usar ciertas funcionalidades que no vienen por defecto. 00:04:57
Vemos que ha creado una clase, ya en otro momento veremos lo que es la programación orientada a objetos y el concepto de clase, 00:05:04
que tendrá el nombre del archivo que hemos creado. 00:05:10
Esto es una clase heredada, hablaremos de ello cuando también hablemos de programación orientada a objetos, de nuevo no tenemos que tocarlo porque eso es lo que nos permite usar todas las funcionalidades, los métodos y las clases incorporadas en Unity. 00:05:13
Y estos son dos métodos, acordémonos que en programación orientada a objetos a lo que normalmente se le llama funciones, pues aquí lo llaman métodos, son dos métodos que vienen ya por defectos. 00:05:25
¿Qué significa? Este, como bien indica aquí en los comentarios, se ejecutará cuando lance el juego 00:05:35
Es decir, una vez 00:05:44
Y sin embargo, este se ejecutará, es decir, lo que hay adentro se ejecutará una vez por fotograma 00:05:46
¿Qué significa? Que si estamos trabajando o el juego está a 48 fotogramas por segundo 00:05:53
Pues esto será como una especie de bucle que se ejecutará 48 veces por segundo 00:05:58
Así que bueno, lo encontraremos la utilidad, pero yo ahora para lo que me interesa lo voy a borrar 00:06:02
porque estos son métodos que no son necesarios si no los vamos a usar, es decir, que los podemos borrar y no pasa nada. 00:06:07
El de Start sí lo necesito porque quiero que se lance algo cuando ya lance el juego. 00:06:13
Para empezar, como buena programación orientada a objetos, en C Sharp lo primero que le tenemos que decir es las variables que voy a usar 00:06:18
y el ámbito de las variables 00:06:28
y qué tipo de variables van a ser 00:06:30
es decir, que si yo creo una variable 00:06:32
por ejemplo, que solo quiero 00:06:35
que esté disponible en mi 00:06:36
clase 00:06:38
lo llamo privado 00:06:40
ahí tengo que decir que si no le decimos nada 00:06:42
él entenderá que es privado 00:06:45
luego, le tengo que decir qué tipo de 00:06:46
variable es, si es una cadena 00:06:49
de texto, por ejemplo, pues le diré 00:06:51
que es 00:06:52
un string 00:06:53
y a continuación el nombre de la variable 00:06:56
por ejemplo le voy a llamar myString 00:06:59
y ya está, con esto he declarado la variable 00:07:01
quiero que ya asignarle un valor 00:07:04
pues como en cualquier otro lenguaje 00:07:08
también si yo ya sé el valor 00:07:09
se lo puedo asignar al mismo tiempo que lo creo 00:07:10
por ejemplo, hola mundo 00:07:12
bien, algo que tenemos que saber 00:07:16
es que aunque yo he creado ahora mismo 00:07:19
una variable que está disponible en mi clase 00:07:22
yo no puedo llamarla cuando quiera 00:07:24
De hecho, si yo intento aquí utilizar esta variable, veremos que me da error. 00:07:26
Directamente el propio programa me dice que esta variable no existe en el contexto actual. 00:07:37
Y la acabamos de declarar justo encima. 00:07:45
¿Qué nos está diciendo aquí? 00:07:47
Nos está diciendo realmente que tiene que estar dentro de un método, que no lo podemos usar en el RAID. 00:07:49
así que de hecho si nos vamos a cualquier método como este que ya está 00:07:54
creado y aquí si le digo que mi variable tiene otro valor como 00:07:58
podemos ver aquí no nos da error vamos a probar a mandarlo con sólo se manda 00:08:07
consola en unity de nuevo tenemos que estar dentro de un método no lo puedo 00:08:12
hablar no puedo llamar a la función de consola aquí tiene que ser por ejemplo 00:08:18
en la función Start, en el método Start. 00:08:24
Y aquí, por ejemplo, le voy a mandar a la consola. 00:08:28
¿Cómo se manda a la consola? Pues tenemos varias opciones. 00:08:30
Podemos mandarlo usando el sistema debug log y entre paréntesis lo que queremos mandar. 00:08:32
Me voy a mi Unity. 00:08:41
Tengo muy importante abierta la consola para poder verlo. 00:08:44
Hay varias funciones aquí. Una de ellas muy interesante es la de clear on play, 00:08:49
que significa que cada vez que lance el Play de Unity me limpia la consola 00:08:52
y así no tengo ahí líneas de código que molesten. 00:08:57
Pero si yo lanzo el Play, recuerdo, aquí lo doy y automáticamente en la consola 00:09:01
vemos que efectivamente me saluda. 00:09:06
Vale, paro. 00:09:10
Otra forma de comunicarme con la consola es utilizando la opción Print. 00:09:12
El efecto es el mismo. 00:09:20
vemos que aquí me ha saltado algún aviso pero es temporal 00:09:21
de hecho las alertas que tenga pueden ser o bien alertas tipo warning 00:09:25
es decir que no impiden que se ejecute el script pero que debemos prestarle atención 00:09:31
pero si aparece una alerta de tipo rojo significa que el script no se podrá ejecutar 00:09:37
ahora probaremos alguna 00:09:42
pero si le doy el play como he dicho se limpia la consola y efectivamente me lo lanza igualmente 00:09:43
Pues ya a estas alturas, por ejemplo, podemos, para ver cómo funciona, decirle, oye, pues cuando se lance el script, mándame a consola la variable myString y luego vuélvemelo a mandar, pero con el cambio de valor. 00:09:48
Algo que no he comentado, pero que veremos, que habremos notado, es que yo cada vez que le doy a guardar, por ejemplo, ahora le doy a guardar el script, automáticamente Unity se quedará pensando y actualiza el script. 00:10:02
Es más, ahora si le lanzo al Play, pues vemos que me saluda y luego ha cambiado de valor. 00:10:18
Idioma/s:
es
Materias:
Informática, Imagen y Sonido
Niveles educativos:
▼ Mostrar / ocultar niveles
  • Formación Profesional
    • Ciclo formativo de grado superior
      • Primer Curso
      • Segundo Curso
Autor/es:
Álvaro Holguera
Subido por:
Alvaro H.
Licencia:
Reconocimiento - No comercial - Sin obra derivada
Visualizaciones:
28
Fecha:
18 de abril de 2026 - 17:51
Visibilidad:
Público
Centro:
CFP JOSÉ LUIS GARCI
Duración:
10′ 26″
Relación de aspecto:
1.78:1
Resolución:
1280x720 píxeles
Tamaño:
179.74 MBytes

Del mismo autor…

Ver más del mismo autor


EducaMadrid, Plataforma Educativa de la Comunidad de Madrid

Plataforma Educativa EducaMadrid