PYBLOCKS / DOCUMENTACIÓN
Escenas y objetos
Un juego está hecho de escenas, y una escena está hecha de objetos. Aprendé a crearlos, ordenarlos y transformarlos, y a pasar de una escena a otra mientras el juego corre.
#Escenas
Una escena es una pantalla o un nivel de tu juego: un menú de título, un nivel, una batalla. Cada escena es un archivo .pbscene.json en la carpeta scenes/ del proyecto, y guarda cada objeto con sus propiedades y sus bloques.
| CtrlN | Scene → New Scene |
|---|---|
| CtrlO | Scene → Open Scene |
| CtrlS | Save Scene |
| CtrlShiftS | Save Scene As... |
New Scenete pide un nombre y arranca una escena vacía. Tiene archivo recién cuando la guardás por primera vez; el diálogo de guardado te sugiere la carpetascenes/.- También podés abrir una escena con doble clic en el panel
Project. - Hay una sola escena abierta a la vez. Si hay cambios sin guardar, PyBlocks te pide guardarlos antes de cambiar.
La escena con la que arranca un juego exportado se elige en Project → Project Settings (Start Scene:). Mirá Exportar.
#Crear objetos y usar la Hierarchy
Creá objetos desde el menú GameObject o con el botón Add arriba de la vista de escena:
Create Empty(Ctrl+Shift+A): un objeto invisible, útil como padre, punto de aparición o para guardar un script.Create Square: un rectángulo visible. Ponele un sprite y se convierte en un personaje, una plataforma o un fondo.Create Camera: decide qué parte del mundo muestra el juego y con qué resolución.GameObject → UI → Text / Image / Button: elementos de interfaz. Mirá UI y fuentes.
La Hierarchy lista todos los objetos. Hacé clic en uno para seleccionarlo (la vista de escena y el Inspector lo siguen). Con clic derecho tenés Locate (Ctrl+W, centra la vista en el objeto), Copy, Paste, Duplicate y Delete (Supr). Las cámaras además tienen Camera Settings... para la resolución.
Jerarquía padre-hijo: arrastrá un objeto sobre otro en la Hierarchy para hacerlo hijo, o usá GameObject → Make Child Of.... Los hijos se mueven con su padre. Arrastralo de vuelta al nivel principal o usá GameObject → Clear Parent para soltarlo. Si borrás un padre también se borran sus hijos (PyBlocks te pregunta antes).
#Inspector y transformaciones
El Inspector muestra las propiedades del objeto seleccionado en grupos: Transform (Name, Visible, Position X, Position Y, Rotation, Width, Height), Collider, Rigidbody, Sprite Renderer y Animator, más UI Text, UI Image o UI Button en los objetos de interfaz. Escribí un valor o usá las flechitas de cada campo.
En la vista de escena también podés transformar el objeto seleccionado directamente:
- Mover: arrastrá el objeto.
- Cambiar el tamaño: arrastrá una de las ocho manijas cuadradas. Mantené Shift para conservar las proporciones y Alt para escalar desde el centro.
- Rotar: arrastrá la perilla redonda. Mantené Shift para girar de a 15°.
- Apretá Esc mientras arrastrás una manija para cancelar.
| Flechas | Mover el objeto seleccionado 1 píxel |
|---|---|
| ShiftFlechas | Moverlo 10 píxeles |
| Ctrl+Rueda del mouse | Zoom en la vista de escena |
| Arrastrar con botón del medio / Espacioarrastrar | Desplazar la vista de escena |
| CtrlHome | Encuadrar la cámara |
La Y crece hacia abajo: un Position Y mayor ubica el objeto más abajo en la pantalla. La rotación va en grados, en sentido horario.
#Formas, sprites y cámaras
Un cuadrado nuevo se dibuja como un rectángulo liso. Para ponerle una imagen:
- Importá la imagen: en el panel
Project, hacé clic derecho en una carpeta (por ejemploassets/sprites) y elegíImport Files. Acepta archivos PNG, JPG, WEBP, BMP y GIF. - Seleccioná el objeto y, en
Sprite Renderer, hacé clic enSelect From Project. - Elegí la imagen y hacé clic en
Select. El objeto conserva suWidthyHeight, así que ajustá el tamaño si hace falta.
Para hojas de sprites, hacé clic derecho en la imagen dentro del panel Project y abrí Tile Editor. Configurá Tile Width y Tile Height (y Margin y Spacing si la hoja tiene separaciones), hacé clic en Auto Slice y después en Save Tileset Metadata. Después usá Select Tile/Slice en el Inspector para mostrar un solo tile. Los tiles también sirven como cuadros de animación (mirá Animación). Clear y Clear Slice quitan la imagen o el tile.
La cámara decide qué muestra el juego. Hacé clic derecho sobre ella en la Hierarchy y elegí Camera Settings... para elegir una resolución (HD 1280 x 720, Full HD 1920 x 1080, ...) y la escala de la vista del juego. Los bloques de cámara pueden seguir objetos, hacer zoom y sacudirla mientras el juego corre.
#Cambiar de escena mientras el juego corre
Usá los bloques de escena para pasar de una escena a otra:
- Load Scene carga una escena por nombre. Fade to scene primero funde a un color y después muestra la escena nueva con un fundido.
- Load Next Scene y Load Previous Scene siguen el orden alfabético de los archivos de
scenes/y vuelven a empezar al llegar al final. - Reload Scene reinicia la escena actual.
Las escenas se cargan desde el disco, así que guardá cada escena a la que quieras llegar. Las variables de objeto arrancan de cero en cada escena; las variables globales (Set global variable) pasan a la escena siguiente.
Cuando apretás Stop, el editor vuelve a la escena desde la que apretaste Play, con tus cambios sin guardar intactos.
#Deshacer y rehacer
| CtrlZ | Deshacer |
|---|---|
| CtrlY o CtrlShiftZ | Rehacer |
Deshacer cubre todos los cambios de la escena: crear, mover, renombrar y borrar objetos, cambios en el Inspector, la jerarquía y los bloques. Un arrastre completo cuenta como un solo paso. Si deshacés hasta el último guardado, la escena vuelve a figurar como guardada.
- Deshacer está en pausa mientras el juego corre. Pará el juego primero.
- Cada escena tiene su propio historial, que empieza de nuevo cuando abrís otra escena.
- En el workspace
Animate, Ctrl+Z y Ctrl+Y deshacen los cambios de animación (mirá Animación).