Logo Studenta

Unidad 4 python - Cecilia Delgado

¡Este material tiene más páginas!

Vista previa del material en texto

Introducción a Godot. Interfaz de trabajo. Escenas y nodos. Inspector
Objetivos
● Reconocer la interfaz del programa.
● Reconocer comandos y operaciones básicas del programa.
Temas
● Introducción al motor de desarrollo de videojuegos Godot 3.1.
● Interfaz y área de trabajo.
● Nodos.
● Escenas.
● Inspector.
Introducción al motor de desarrollo de videojuegos Godot
Godot es un motor de videojuegos 2D y 3D multiplataforma, de código abierto, publicado bajo la licencia MIT
y desarrollado por la comunidad de Godot. El motor funciona en Windows, OS X y Linux. Soporta varios
lenguajes de programación, entre ellos C#, Visual Script y GD Script, el cual está basado en la sintaxis y lógica
de programación de Python.
Puede exportar los videojuegos creados a PC (Windows, OS X y Linux), teléfonos móviles (Android, iOS) y
HTML5.
El desarrollador principal, Juan Linietsky, declaró en una presentación que el nombre Godot está relacionado
con la obra teatral Esperando a Godot, de Samuel Beckett, y representa el deseo de añadir continuamente
características nuevas en el motor para acercarlo cada vez más a un producto exhaustivo, pero nunca se llega
al final.
Instalación de Godot Engine en Windows
Podemos descargar Godot desde Steam , pero aquí estamos descargando desde su sitio web.
Para la implementación de Godot, en primer lugar, tenemos que descargar el motor de Godot . Para
descargar el motor Godot , haga clic en el enlace que figura a continuación:
godotengine.org
https://godotengine.org/
En primer lugar, tenemos que descargar Godot Engine en nuestra PC ( sistema operativo Windows ). También
podemos descargar Godot para Mac y Linux desde abajo, como se muestra a continuación en la captura de
pantalla.
Seleccione la versión estándar de 64 bits :
Aquí, el motor Godot se ha descargado con éxito en nuestro sistema.
Después de eso, hemos hecho clic en el archivo Godot_v3.1.1-stable_win64.exe para iniciarlo . Es la última
versión de Godot, que es la versión 3.1.1 .
Primer vistazo al motor de juego de Godot:
Cuando lanzamos Godot , la primera ventana que veremos es el Administrador de proyectos . Nos ayuda
a crear, eliminar, importar o jugar proyectos de juegos . Podemos crear nuestro nuevo proyecto e importar el
proyecto existente también. Y también puede ver muchos ejemplos de juegos de Plantillas para entenderlo.
Interfaz y área de trabajo
Sistemas de archivos: es el sector en el que se podrá visualizar el total de archivos que contendrá nuestro
proyecto.
Escenas: es el sector en el que se podrá visualizar una escena y el total de nodos que la componen.
Menú: es una barra situada en el extremo superior izquierdo de la pantalla, donde se ubican las diferentes
pestañas que contienen las herramientas principales de configuración del motor.
Barra de herramientas: es una barra de rápido acceso a herramientas de uso frecuente.
Visualización: es una barra situada la parte superior central de la pantalla y en ella se ubican los botones que
nos permitirán acceder a las vistas 2D y 3D, al código y a una librería de assets.
Reproducción y testeo: es una barra que contiene los botones que nos permitirán jugar, pausar, detener,
eliminar fallos y errores, y testear nuestro proyecto.
Inspector: es el sector en el que se podrá visualizar y modificar el total de las características de un elemento
seleccionado.
Nodos
Todo dentro de Godot es un nodo y mediante ellos se crean objetos con características definidas. Antes de
continuar, conviene recalcar que la terminología nodo hay que usarla con cuidado. Cuando hablamos
de nodos, nos referimos a pequeñas cajitas que conectan con líneas y que son parte de un gráfico. Cuando
nos referimos a nodos de escena, esto implica que estamos hablando de los elementos que configuran una
escena y que son parte del árbol de dicha escena. El nombre es similar, pero su función es diferente.
Como mencionamos anteriormente, un nodo puede realizar una variedad de funciones especializadas. Sin
embargo, cualquier nodo utilizado tiene siempre los siguientes atributos:
● Un nombre.
● Propiedades editables.
● Puede recibir una llamada a una función (callback) para procesar cada fotograma.
● Se puede extender (para tener más funciones).
● Se puede añadir a otro nodo como un hijo.
Lo último es importante. Los nodos pueden tener otros como hijos. Cuando se disponen de esta manera, los
nodos se convierten en un árbol.
En Godot, la capacidad de organizar nodos de esta manera crea una poderosa herramienta para organizar
proyectos. Como los diferentes nodos tienen diferentes funciones, combinarlos permite la creación de
funciones más complejas.
No te preocupes si esto aún no te hace clic. Continuaremos explorando este tema. El hecho más importante
para recordar por ahora es que los nodos existen y se pueden organizar de esta manera.
Vamos a analizar un ejemplo: pensemos en una roca.
La roca tiene las siguientes características: es un objeto sólido y rígido, por lo tanto, la física newtoniana
influye sobre él, tiene una forma, esa forma delimita el área que ocupa y tiene color y textura, es decir, es
visible.
Para crear una roca en Godot lo haríamos de la siguiente forma:
• (Nodo) RigidBody2D
 ◦ (Nodo) CollisionShape2D.
 ◦ (Nodo) Sprite.
El nodo RigidBody2D le indica al programa que queremos algo en 2 dimensiones, rígido, que tiene masa,
peso, rebote, fricción, es afectado por la gravedad, etc.
El nodo CollisionShape2D le dice al programa cuál será la figura 2D que delimitará el espacio que ocupa el
cuerpo rígido.
Y el nodo Sprite es básicamente la imagen o textura que representará el objeto. Normalmente, entre
el CollisionShape y el Sprite se define la forma del objeto que se crea.
Nótese que los nodos CollisionShape2D y Sprite están dentro del nodo RigidBody2D formando un árbol de
nodos, en el que RigidBody2D es el padre y los nodos dentro de él son los nodos hijos.
Nodos
https://www.youtube.com/watch?v=NxXCOtMSZUQ
Escenas
A su vez, este conjunto de nodos dispuesto en forma de árbol es denominado una escena. Cada objeto
dentro de un juego puede ser una escena. Por ejemplo, si recreáramos el juego Super Mario Bros., Mario
sería una escena que contendría un nodo principal llamado nodo padre y varios nodos hijos que aportarían
una característica o cualidad especial a ese todo llamado Mario. Cada enemigo sería otra escena; el nivel,
otra; los honguitos, otra y así sucesivamente.
Escenas
https://www.youtube.com/watch?v=O3HGNGXGLPg
Script
Pero para hacer que Mario salte o camine, debemos utilizar una herramienta que Godot nos proporciona
llamada script. El script será la hoja en la cual le diremos al programa cómo deben comportarse los nodos
mediante escritura de código y el script será creado y guardado dentro de su correspondiente nodo, es decir,
el script que indica cuándo debe saltar Mario será guardado dentro de Mario; de esta forma, el programa
sabrá que solamente Mario va a saltar y no todo el nivel.
Motor de juego Godot
Después de descargar e instalar el motor de Godot en nuestro sistema, debemos entender cómo crear
cualquier proyecto nuevo e importar cualquier proyecto existente en Godot.
Cuando lanzamos Godot , la primera ventana que veremos es el Administrador de proyectos . Nos ayuda
a crear, eliminar, importar o jugar proyectos de juegos .
https://www.youtube.com/watch?v=NxXCOtMSZUQ
https://www.youtube.com/watch?v=O3HGNGXGLPg
En la esquina superior derecha encontraremos un menú desplegable para cambiar el idioma del editor .
Desde la pestaña Plantillas , podemos descargar plantillas y demostraciones de proyectos de código abierto
para ayudarnos a comenzar más rápido.
Creando o importando un proyecto en el motor Godot
Para crear un nuevo proyecto, haga clic en el botón Nuevo proyecto en el lado derecho. Dale un nombre y
elige una carpeta vacía en nuestra computadora para guardarlo.
¡Bienvenido a Godot! Con nuestro proyecto abierto, deberíamos ver la interfaz del editor con la vista
3D activa. Podemos cambiar elespacio de trabajo actual en la parte superior de la interfaz. Haga clic
en 2d para cambiar al espacio de trabajo 2d .
Ahora podemos ver esta interfaz 2D , con documentos vacíos en el lado derecho
.
En la parte superior, de izquierda a derecha, podemos ver los menús principales , los espacios de trabajo y los
botones de pruebas de juego.
En el lado izquierdo, tenemos el sistema de archivos , donde administraremos nuestros archivos de
proyecto. Y activos . res: // representa el recurso aquí.
En la parte superior izquierda, encontraremos el árbol de Escenas por donde podemos cambiar las escenas
2D y 3D como queramos.
En el lado derecho, veremos la barra Inspector y la barra Nodo .
Y antes de continuar, si queremos cambiar el diseño, debemos hacer clic en estos tres puntos y cambiar las
posiciones de nuestro documento. Y también debemos cambiar desde el lado superior. Todo ha cambiado
desde nuestra pestaña de importación.
Si queremos nuestro tipo predeterminado, podemos elegir el predeterminado; luego de nuevo, vamos al
editor y hacemos clic en predeterminado, y será lo mismo que antes.
También podemos ir a un tema y cambiar los colores si tenemos un montón de regalos que vamos a usar por
defecto . Podemos elegir cualquier color que deseemos. Podemos cambiar el color base así como el color de
acento según nuestro interés; de lo contrario, déjelo predeterminado. Si queremos el valor predeterminado,
elegimos el formulario predeterminado Preset .
En el árbol de escena, siempre hay un nodo raíz, y un nodo raíz puede tener varios nodos secundarios.
Podemos crear un nuevo nodo haciendo clic en el nodo personalizado . El cuadro de diálogo que se ve a
continuación donde todo el nodo ha accedido automáticamente a todas las propiedades que tiene su nodo
principal.
2D es un objeto de juego 2D . El padre de todos los nodos relacionados con 2D tiene una escala
de rotación de posición y un índice z . Si hacemos clic en cualquiera de estos, vemos como 2D. Tendrá acceso
a la rotación de la escala de posición z y al índice z . El nodo 2D tiene acceso a todas las propiedades del
nodo, y esto es lo más simple, y es la clase base .
Si queremos crear un nodo 2D , tenemos que crearlo como se muestra en la siguiente captura de
pantalla. Tiene una propiedad de nodos y elementos de lienzo.
Y si queremos crear un nodo personalizado aquí. Podemos hacer clic en un nodo personalizado como se
muestra a continuación.
Después de crearlo, la siguiente escena se abre en nuestro escritorio.
Podemos editar o crear el nombre del nodo y también cambiar el nombre pero en mayúscula . Y haga clic en
el botón adjuntar script nuevo o existente como un pequeño pergamino con un signo más verde y haga clic,
luego se abre un cuadro.
Estamos usando GDScript aquí.
Haga clic en el botón Crear y, a continuación, se abre la pestaña del script donde podemos codificar lo que
queremos codificar. La primera línea es esencial se extiende, y luego un tipo de nota extiende el nodo. Se
supone que este script funciona en un nodo como en el tipo de nodo llamado nodo .
Extend es una palabra clave que tiene toda la funcionalidad básica de un nodo.
Después de hacer clic arriba del botón de flecha del lado derecho , la barra de código se extiende así:
Tenemos que eliminarlos y, en su lugar, nos quedamos con un solo código como el que se muestra a
continuación.
Estamos codificando aquí para comprender fácilmente el concepto de variable y constante.
Para ejecutar este código, tenemos que hacer clic en la barra de reanudar, que se indica a
continuación. Luego ejecutará nuestro código y abrirá el archivo del juego en el motor. Haga clic en importar
y luego haga clic en el botón Abrir para abrir el área de juego .
Actualmente, podemos ver que no hay nada en el área de juego .
Las variables son un concepto clave en la programación. Las variables son String , Int, Float y en formato
booleano .
GDScript es un lenguaje dinámico. En otras palabras, esta palabra variable podría ser cualquier cosa. Podría
ser una cadena, un entero, un flotante o un valor booleano si hay una variable llamada palabra. Preferimos la
escritura dinámica, pero puede ralentizar el programa y volverlo más cómodo de aprender.
Aquí estamos codificando e intentando ejecutar nuestro primer código simple.
Si hacemos clic en el botón de reanudar a continuación, se abre la pestaña del juego.
Creando el primer proyecto Godot
Como comentamos anteriormente, Node es un bloque de construcción fundamental, y Scene es un objeto o
lugar. Necesitamos crear un nodo en el árbol de la escena . Cuando tenemos que crear un nuevo nodo, cada
nodo es un truco simple donde el azul es 2D y el rojo es 3D . Podemos usar el control para acercar y alejar. 
Si queremos imprimir Hello World , necesitamos un script . Necesitamos el motor del juego también. En
Godot, no podemos crear un script en sí mismo. El script se encuentra en la parte superior del nodo. Un
nodo puede tener un script que no tenga nodo. Entonces necesitamos crear un nodo en la escena .árbol. En
el árbol de escena, tenemos que hacer clic en el símbolo + donde podemos crear un nuevo nodo, y cada
nodo está en esta lista.
Nodos:
Hay muchos tipos de nodos, y algunos muestran imágenes, algunos reproducen sonido y algunos nodos
muestran modelos 3D, etc.
Un nodo es un elemento esencial para la creación de un juego, y tiene las siguientes características:
tiene un nombre
Puede recibir una devolución de llamada para procesar cada cuadro.
Tiene propiedades editables.
se puede extender
El nodo se puede agregar a otros nodos como hijos.
El último es muy importante. Los nodos pueden tener otros nodos como hijos. Cuando se organizan en el
camino, los nodos se convierten en un árbol. En Godot, la capacidad de organizar nodos en la idea crea una
poderosa herramienta para organizar proyectos.
Una escena está compuesta por un grupo de nodos organizados jerárquicamente. Tiene las propiedades
dadas:
Una escena siempre tiene un solo nodo raíz.
Las escenas pueden ser instanciadas
Las escenas se pueden guardar en el disco y volver a cargar.
Ejecutar un juego significa ejecutar una escena.
Básicamente, el editor de Godot es un editor de escenas. Tiene herramientas para editar escenas 2D y 3D ,
así como interfaces de usuario.
Tenemos que crear un nodo 2D . Después de eso, tenemos que hacer clic en él para crear el nodo.
Después de crear, tenemos que hacer clic en Adjuntar secuencia de comandos de nodo para generar
la página de secuencia de comandos .
Aparecerá esta página, que es la página del script donde codificamos.
Aquí, borramos el comentario al código.
A continuación se muestra el código para imprimir " Hola ". Las variables son el concepto clave en cualquier
lenguaje de programación.
Código
1. Extends Node2D 
2. Func _ready(): 
3. Print("Hello") 
Precisamente sigue el mismo proceso donde imprimimos " Hello you! " Como se indica a continuación en la
salida.
Código
1. extends Node2D 
2. func _ready(): 
3. var person="you!" 
4. print("Hello"+person) 
Godot está basado en Python y lenguajes estáticos como C++ y C# . En GDScript , las llaves tienen
diferentes significados pero no son útiles aquí. La sangría es significativa en el motor Godot. Si nos quedamos
atascados en algún lugar, tenemos que mantener el control y hacer clic en él. Trae la documentación de la
función.

Otros materiales