Introducció
En aquest tema, explorarem com utilitzar Blueprints per crear scripts complexos dins d'Unreal Engine. Els Blueprints són una eina visual que permet als desenvolupadors crear lògica de joc sense necessitat d'escriure codi. Això facilita la creació de prototips ràpids i la iteració sobre idees de joc.
Objectius
- Entendre els conceptes bàsics de scripting amb Blueprints.
- Aprendre a crear i utilitzar variables, funcions i esdeveniments.
- Desenvolupar scripts complexos utilitzant nodes de Blueprints.
- Implementar lògica de joc avançada amb Blueprints.
Conceptes Clau
- Nodes de Blueprints
Els Blueprints utilitzen nodes per representar diferents operacions i lògica. Aquests nodes es connecten entre si per formar un flux de treball visual.
- Nodes d'Execució: Controlen el flux de l'execució del Blueprint.
- Nodes de Variables: Emmagatzemen dades que poden ser utilitzades i modificades.
- Nodes de Funcions: Representen funcions que poden ser cridades per executar una sèrie d'operacions.
- Nodes d'Esdeveniments: Responen a esdeveniments específics, com ara la premsa d'una tecla o una col·lisió.
- Variables
Les variables són elements fonamentals en qualsevol llenguatge de programació, incloent Blueprints. Poden emmagatzemar diferents tipus de dades, com ara nombres, cadenes de text, vectors, etc.
- Funcions
Les funcions són blocs de codi reutilitzables que poden ser cridats des de diferents parts del Blueprint. Permeten organitzar i modularitzar la lògica del joc.
- Esdeveniments
Els esdeveniments són accions que es desencadenen en resposta a una condició o acció específica. Per exemple, un esdeveniment pot ser desencadenat quan el jugador premsa una tecla o quan un objecte col·lisiona amb un altre.
Exemple Pràctic
Creant un Blueprint per Moure un Personatge
-
Crear un nou Blueprint:
- A l'Editor d'Unreal Engine, fes clic dret a la carpeta del teu projecte i selecciona
Blueprint Class
. - Tria
Character
com a classe base i anomena'lBP_MyCharacter
.
- A l'Editor d'Unreal Engine, fes clic dret a la carpeta del teu projecte i selecciona
-
Afegir un Esdeveniment de Tecla:
- Obre
BP_MyCharacter
i ves alEvent Graph
. - Fes clic dret i cerca
InputAction MoveForward
. Afegeix aquest node al gràfic.
- Obre
-
Afegir Nodes de Moviment:
- Afegeix un node
Add Movement Input
i connecta'l al nodeInputAction MoveForward
. - Configura el
World Direction
a(1, 0, 0)
per moure el personatge cap endavant.
- Afegeix un node
-
Afegir una Variable de Velocitat:
- A la secció
My Blueprint
, fes clic a+ Variable
i anomena-laSpeed
. - Configura el tipus de dada a
Float
i assigna-li un valor per defecte, per exemple,600.0
.
- A la secció
-
Utilitzar la Variable de Velocitat:
- Arrossega la variable
Speed
al gràfic i seleccionaGet
. - Connecta la sortida de
Speed
a l'entradaScale Value
del nodeAdd Movement Input
.
- Arrossega la variable
Codi de Blueprint
Event InputAction MoveForward -> Add Movement Input - World Direction: (1, 0, 0) - Scale Value: Speed
Exercici Pràctic
Exercici 1: Crear un Objecte Interactiu
-
Crear un nou Blueprint:
- Crea un nou
Blueprint Class
basat enActor
i anomena'lBP_InteractiveObject
.
- Crea un nou
-
Afegir un Esdeveniment de Col·lisió:
- Afegeix un component
Box Collision
al Blueprint. - Afegeix un node
OnComponentBeginOverlap
per alBox Collision
.
- Afegeix un component
-
Afegir una Funció Personalitzada:
- Crea una nova funció anomenada
Interact
. - A la funció
Interact
, afegeix un nodePrint String
per mostrar un missatge quan l'objecte és interactuat.
- Crea una nova funció anomenada
-
Cridar la Funció des de l'Esdeveniment:
- Torna al
Event Graph
i connecta el nodeOnComponentBeginOverlap
a la funcióInteract
.
- Torna al
Solució
Event OnComponentBeginOverlap (Box Collision) -> Interact Function Interact -> Print String ("Object Interacted!")
Errors Comuns i Consells
- No connectar nodes correctament: Assegura't que tots els nodes estan correctament connectats per evitar errors d'execució.
- No inicialitzar variables: Sempre inicialitza les variables amb valors per defecte per evitar comportaments inesperats.
- Oblidar cridar funcions: Assegura't que les funcions personalitzades són cridades des dels esdeveniments o altres parts del Blueprint.
Conclusió
En aquest tema, hem après els conceptes bàsics de scripting amb Blueprints, incloent la creació de variables, funcions i esdeveniments. També hem vist un exemple pràctic de com moure un personatge i un exercici per crear un objecte interactiu. Amb aquests coneixements, estàs preparat per crear lògica de joc més complexa utilitzant Blueprints a Unreal Engine.
Curs d'Unreal Engine
Mòdul 1: Introducció a Unreal Engine
- Què és Unreal Engine?
- Instal·lant Unreal Engine
- Navegant per la Interfície
- Creant el teu Primer Projecte
Mòdul 2: Conceptes Bàsics
Mòdul 3: Blueprints Intermedis
- Variables i Tipus de Dades
- Funcions i Esdeveniments
- Comunicació entre Blueprints
- Creant Objectes Interactius
Mòdul 4: Blueprints Avançats
Mòdul 5: Programació en C++ a Unreal Engine
- Configurant el teu Entorn de Desenvolupament
- Sintaxi Bàsica de C++
- Creant Classes en C++
- Integrant C++ amb Blueprints
Mòdul 6: Programació Avançada en C++
Mòdul 7: Temes Avançats
- Física i Col·lisió
- Renderització i Postprocessament
- Generació de Contingut Procedural
- Desenvolupament de Realitat Virtual