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

  1. 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ó.

  1. 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.

  1. 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.

  1. 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

  1. 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'l BP_MyCharacter.
  2. Afegir un Esdeveniment de Tecla:

    • Obre BP_MyCharacter i ves al Event Graph.
    • Fes clic dret i cerca InputAction MoveForward. Afegeix aquest node al gràfic.
  3. Afegir Nodes de Moviment:

    • Afegeix un node Add Movement Input i connecta'l al node InputAction MoveForward.
    • Configura el World Direction a (1, 0, 0) per moure el personatge cap endavant.
  4. Afegir una Variable de Velocitat:

    • A la secció My Blueprint, fes clic a + Variable i anomena-la Speed.
    • Configura el tipus de dada a Float i assigna-li un valor per defecte, per exemple, 600.0.
  5. Utilitzar la Variable de Velocitat:

    • Arrossega la variable Speed al gràfic i selecciona Get.
    • Connecta la sortida de Speed a l'entrada Scale Value del node Add Movement Input.

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

  1. Crear un nou Blueprint:

    • Crea un nou Blueprint Class basat en Actor i anomena'l BP_InteractiveObject.
  2. Afegir un Esdeveniment de Col·lisió:

    • Afegeix un component Box Collision al Blueprint.
    • Afegeix un node OnComponentBeginOverlap per al Box Collision.
  3. Afegir una Funció Personalitzada:

    • Crea una nova funció anomenada Interact.
    • A la funció Interact, afegeix un node Print String per mostrar un missatge quan l'objecte és interactuat.
  4. Cridar la Funció des de l'Esdeveniment:

    • Torna al Event Graph i connecta el node OnComponentBeginOverlap a la funció Interact.

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.

© Copyright 2024. Tots els drets reservats