Activa JavaScript para disfrutar de los vídeos de la Mediateca.
Primeros pasos en Unity. Añadiendo scripts (parte 2) - Contenido educativo
Ajuste de pantallaEl ajuste de pantalla se aprecia al ver el vídeo en pantalla completa. Elige la presentación que más te guste:
Continuamos viendo cómo añadir código en Unity.
Aquí he creado una variable privada, que significa que solo estará disponible en esta clase.
00:00:07
Si yo la declaro pública, significa que estará disponible fuera de la clase y que desde otras clases la podré llamar a esta variable.
00:00:13
Pero no solo eso, si yo la declaro pública ocurre algo en Unity, lo vamos a ver.
00:00:22
Y es que si me voy al objeto que la tiene vinculada, el script, de repente me aparece esto.
00:00:26
justo en el componente del script
00:00:34
me aparece mi variable
00:00:37
con el valor que yo le he dado
00:00:38
de hecho incluso si yo le quito aquí este valor
00:00:41
la declaro nada más
00:00:43
me vuelvo
00:00:45
a Unity
00:00:48
veis se actualiza
00:00:50
y una vez actualizado
00:00:53
esto lo quito porque se ha quedado de antes
00:00:54
veré que yo le puedo dar el valor a esa variable
00:00:56
esto será tremendamente útil
00:00:59
porque nos permitirá ir cambiando los valores de las variables
00:01:00
sin necesidad de entrar en código. Si yo aquí a la variable le digo
00:01:03
que es... ¿qué tal? Pues cuando lance el script
00:01:06
veremos que donde antes me decía hola mundo, pues ahora me dice
00:01:11
¿qué tal? De hecho existen variables que no son de tipo string
00:01:15
que las veremos más adelante, que son por ejemplo de tipo... voy a hacerle pública
00:01:19
gameObject y le doy nombre.
00:01:23
Veremos que aquí nos aparece también la variable gameObject, pero no aparece
00:01:29
una caja de texto como antes. No, no. Me aparece un selector donde yo le puedo pinchar y seleccionar
00:01:33
los objetos que tengo en la escena. O incluso arrastrarlo. Puedo coger esta esfera y arrastrarla
00:01:39
hasta aquí. Si nosotros queremos tener disponible una variable en nuestro interfaz de Unity
00:01:50
pero no queremos que sea pública, para eso existe otra opción mucho más recomendable
00:01:58
que es esta. SerializeFailed. Y funciona exactamente igual. Y la tenemos disponible
00:02:03
también en Unity. Se actualiza. Ahí está. Vamos a hacer algo con el código similar
00:02:11
a las prácticas que hemos hecho en clase para que veamos que el concepto es más o
00:02:22
menos igual. Voy a crearle un bucle con un for, por ejemplo, como hemos hecho en clase.
00:02:26
¿Qué es lo que ocurre?
00:02:32
Que le tenemos aquí, normalmente, cuando le decíamos n es igual a 0,
00:02:34
aquí me va a dar error. ¿Por qué?
00:02:41
Porque me está diciendo que la variable no está definida.
00:02:43
Aquí sí que tenemos que definirla. Tenemos dos opciones.
00:02:45
O definirla aquí mismo, ¿de acuerdo?
00:02:47
Y podemos decir, oye, voy a crear una variable de tipo integrer llamada n cuyo valor es 0.
00:02:50
Ahora sí me lo reconoce, ¿de acuerdo?
00:02:59
y donde le decíamos de nuevo a n ya está declarada, no hace falta decirle más,
00:03:01
n sea menor que 10, pues n más más.
00:03:06
La verdad es que esta variable la podríamos haber declarada antes,
00:03:10
es decir, le podríamos haber dicho que voy a crear una nueva variable de tipo integer llamado a n
00:03:12
y ya está. Entonces esto ya no era necesario.
00:03:18
Ya tengo un bucle, voy a ver.
00:03:24
Le voy a decir que mande a consola la letra n, o sea, la variable n.
00:03:28
eso significa que me mandará de 0 a 9 acabo de crear un bucle de 10 le doy a
00:03:33
play y efectivamente veo aquí un bucle me dice dónde lo está mandando en cada
00:03:39
momento voy a crear un método lo que antes que llamamos funciones voy a
00:03:49
crear un método y aquí cuidado porque entramos en terreno delicado para
00:03:53
empezar os recuerdo que ahora mismo estamos
00:03:56
dentro de un método de estar que se lanza cuando carga el juego si yo quiero
00:04:00
crear otro método, lo suyo sería fuera. Mi propio método. ¿Cómo funciona la sintaxis
00:04:03
para crear un método? En Csharp, primero, le tenemos que decir qué va a devolver ese
00:04:13
método. Es decir, si va a devolver un número entero, si va a devolver una cadena de texto
00:04:18
o si no va a devolver nada. Por ejemplo, voy a hacer un método que no devuelva nada, que
00:04:24
sencillamente salude y como le decimos a un método que no va a devolver nada voy
00:04:29
esto es importante es decir aunque vaya a ser un método que no va a devolver
00:04:33
nada si lo tenemos que indicar si nos fijamos de hecho el método estar es un
00:04:38
método que está pensado para no devolver nada sencillamente para ejecutar esas
00:04:42
líneas de código así que lo mismo aquí le voy a crear un método que se llame
00:04:45
saludar saludar y no hace falta diferencia de javascript o de php no
00:04:48
hace falta decirle function, no hay que especificarle que es una función, porque en el momento
00:05:03
en el que nosotros le ponemos los paréntesis, él ya entiende que es una función. No hace
00:05:07
falta indicar nada más. Ya he creado mi propio método. ¿Y qué va a hacer mi método? Pues
00:05:11
saludar, pues efectivamente mandar a consola hola. Ahora hay que llamar al método. Así
00:05:17
que, por ejemplo, igual que hemos hecho en clase, en este bucle que se ejecuta 10 veces,
00:05:25
en vez de mostrarme en la consola le voy a decir que llame al método, saludar, así que si todo va bien me mandará 10 veces hola a la consola, vamos a comprobarlo, ahí están, hola, hola, hola, hola, hola, 10 veces.
00:05:31
subamos un poquito de nivel
00:05:58
igual que hemos visto que las funciones pueden recibir variables y retornar valores
00:06:00
también en C Sharp y también con los métodos de programación orientado a objetos
00:06:05
voy a hacer un ejemplo que hemos hecho en clase
00:06:10
para ver que funciona más o menos igual
00:06:12
y para que nosotros también podamos ponerlo ya en práctica
00:06:14
voy a crear una función que sea multiplicar
00:06:17
a la cual requiera dos números
00:06:20
y que devuelva el resultado
00:06:22
¿de acuerdo?
00:06:25
vamos a ello
00:06:27
me voy a mi código, voy a borrar esta función
00:06:28
veis que automáticamente en cuanto la he borrado aquí me da error
00:06:32
indicando que efectivamente esta función no existe
00:06:38
de hecho voy a borrar
00:06:41
todo esto porque voy a empezar a decir, entonces voy a crear una función y lo primero que le tengo que decir
00:06:46
es que me va a devolver un resultado, ¿de qué tipo?
00:06:50
pues por ejemplo que sea de tipo
00:06:53
float. Es decir, me va a devolver
00:06:56
un número con decimales. Y a diferencia del anterior método
00:07:02
que hemos creado, este sí que requiere variables. Y
00:07:06
como estamos en C Sharp, ya no se nos puede olvidar que cada vez que declaramos una variable le tenemos que
00:07:09
decir qué tipo de variable es. Por ejemplo, si va a ser un número decimal
00:07:14
decimos que la primera variable
00:07:18
es de tipo float y se llama num1. Y la segunda variable también es
00:07:22
de tipo float y se va a llamar num2. ¿Y qué va a hacer este método? Pues declarar una
00:07:26
variable de tipo float que se va a llamar resultado. Aquí me está dando un error indicándome
00:07:38
que este se ha declarado pero nunca se ha usado, por eso está en verde. Y aquí me
00:07:49
está dando un error, fijaros hasta qué punto es preciso el entorno de desarrollo, porque
00:07:54
sabe que estaba este método tiene que devolver algo y ahora mismo no lo
00:08:00
devuelve si nos ponemos encima me lo dice
00:08:05
que no está devolviendo nada voy a hacer que lo devuelva return
00:08:09
resultado de acuerdo y ya si desaparece ese error ahora me da
00:08:14
otro me dice que vale que estás devolviendo el resultado pero que no
00:08:23
tiene ningún valor pues vamos a dárselo resultado es igual al número que me han
00:08:25
pasado por la función multiplicado por un 2 es decir exactamente igual que lo
00:08:32
que hacemos en clase vemos que ya no hay ningún error ahora
00:08:35
esta función este método existe pero no se ha llamado en ningún momento vamos a
00:08:40
llamarlo de hecho voy a crearle la variable de tipo privada que sea el tipo
00:08:44
float y llamado may bar por ejemplo ya está
00:08:51
¿Por qué? Porque esa variable que acabo de crear va a ser lo que me devuelva a la función multiplicar.
00:08:57
Multiplicando, por ejemplo, 5,4.
00:09:07
Muy importante, siempre que pongamos un número y ese número sea decimal, es decir, que sea un número de tipo decimal,
00:09:13
Aunque no tenga decimales, aunque sea 5, pero yo quiero que el programa entienda que es un número decimal, le tenemos que poner una f.
00:09:23
Es decir, ese 5 con 4, para que el programa entienda que es un decimal, le tengo que poner f.
00:09:31
Si no, él entendería que es un número entero y entonces daría error.
00:09:38
Así que me va a multiplicar 5 con 4 por, qué sé yo, 6 con 3.
00:09:42
aunque sea 6, yo le puedo decir que me lo multiplique por 6
00:09:49
pero si para mí ese 6 es un número decimal, no un número entero
00:09:53
se lo tenemos que indicar con una F al final
00:09:57
así que va a multiplicar 5,4 por 6 y me va a devolver un número decimal
00:09:59
le voy a decir que me lo mande a consola
00:10:05
pues igual que vimos en clase, al comienzo creo mis variables
00:10:07
de acuerdo, luego
00:10:22
en este método que se va a ejecutar cuando lance yo el juego
00:10:24
le he dicho que esa variable que he creado antes
00:10:29
tome el valor que le devuelve el método multiplicar
00:10:32
y este método requiere dos variables num1 y num2
00:10:38
y creo una variable que contendrá ese resultado
00:10:41
cuyo valor será la multiplicación de num1 y num2
00:10:46
Si quiero ser incluso más eficiente hasta puedo cortar esto y pegarlo aquí y me ahorro una línea de código.
00:10:50
Al mismo tiempo que declaro la variable le asigno el valor y lo devuelvo, muy importante, y al devolverlo se lo estoy asignando a esta variable.
00:10:57
Así que si ahora mismo lanzo el juego, si todo va bien, debería mandarme a consola el resultado de la multiplicación.
00:11:07
Vamos a ver. Le doy al play y si todo va bien, ahí está el resultado de la multiplicación.
00:11:13
Bueno, como hemos visto, más o menos los conceptos son los mismos, puede cambiar sutilmente la sintaxis, que aquí tenemos que añadir una f, que aquí le tenemos que decir qué tipo de variable es, que no tenemos que escribir function, es decir que nos iremos acostumbrando ya a la sintaxis del lenguaje que estemos usando, pero los conceptos son los mismos.
00:11:21
Declarar variables, decir qué tipo de variables, darle valor a las variables, crear funciones o lo que aquí llama métodos, llamar a esos métodos, crear bucles, pues eso, para crear ciclos y en cada ciclo hacer algo.
00:11:38
El funcionamiento es prácticamente el mismo.
00:11:50
- Idioma/s:
- 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:
- 22
- Fecha:
- 18 de abril de 2026 - 17:47
- Visibilidad:
- Público
- Centro:
- CFP JOSÉ LUIS GARCI
- Duración:
- 11′ 53″
- Relación de aspecto:
- 1.78:1
- Resolución:
- 1280x720 píxeles
- Tamaño:
- 271.69 MBytes