Você está na página 1de 48

GUIA DE REFERNCIA RPIDA DE BLUEPRINTS

UNREAL ENGINE 4

(atualizado at a verso 4.12.5)

Crditos iniciais: Marcos Romero

Reviso e acrscimos: Otavio S. Souza

Sobre este documento:


Blueprints uma linguagem visual de script criada pela Epic Games para a Unreal Engine 4. Este
documento apresenta algumas Aes Blueprints importantes com exemplos contextuais de seu uso.
O objetivo desta reviso ampliar o compndio inicial e contribuir para a disponibilizao de material de
suporte em portugus para o desenvolvimento de jogos e aplicaes na engine.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 1


NDICE

Attach actor to component 25 Set Actor Location 36


Bind Event 23 Set Timer by Event 14
Branch (If... Then) 6 Set View Target With blend 26
Build String() 34 Sign 44
Cast To 16 Spawn Actor from Class 10
Clamp() 41 Switch on Int 7
Clear Timer by Handle 15 Timeline 27
Compare 42 Get World Delta Seconds 3
Delay 20
Delta Seconds 3
Dot product 21
Draw Text 33
Ease 47
Enable/Disable Input 37
Event Dispatcher 22
FCeil 45
Find Look at Rotation 48
FlipFlop 38
Floor 45
For Each Loop 8
For Loop 43
Format text 24
Game Instance 5
Game State x Game Mode 6
Gate 19
Get (...) Vector 39
Get Actor Eyes View Point 31
Get All Actors of Class 9
Get Control Rotation 40
Is Valid 18
Lerp 17
LineTraceForObjects 29
Macros e Funes 5
Make Pulsating Value 46
Math Expression 28
MultiLineTraceByChannel 30
Nearly Equal 46
Open Level 12
Play Dynamic Force Feedback(vibrador) 35
Quit Game 13
Random Integer in Range 11
Receive Draw Hud 32
Retriggerable Delay 20
Round 45
Select 44

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 2


DIFERENA ENTRE MACROS E FUNES
Podemos criar novas Funes em Blueprints. Assim como as Macros, as funes permitem que um
conjunto de aes que so executadas em vrias partes do Blueprint seja reunida em um nico local para facilitar
a organizao e manuteno do script. Uma vantagem das Funes em relao as Macros que elas podem ser
chamadas a partir de outros Blueprints. Em relao a Eventos Customizados, as funes tem a vantagem de poder
ter valores de retorno.
Macros ou Funes Puras(Pure): no possuem pinos de execuo(entrada e sada). Apenas execues internas.
So funes matemticas.
Macros: podem ter vrios pinos de execuo de entrada e sada.

DELTA SECONDS, DELTA TIME OU GET WORLD DELTA SECONDS


A Unreal chama a funo Tick() em cada quadro. Em um caso ideal ser chamada 60 vezes por
segundo(60fps). Mas isso nem sempre acontece. s vezes, seu cdigo pode demorar mais tempo de CPU e
resultar em menos ticks por segundo. Assim, no se pode presumir que a durao entre cada Tick() a mesma.
Para resolver essa situao, Get World Delta Seconds informa o tempo decorrido desde que o ltimo Tick() foi
chamado. Isso DeltaTime(30fps: Delta Time = 0,0333. 60fps: Delta Time = 0,0166). usado quando a lgica
depende do tempo passado(como uma lgica de recarga de feitio, onde o jogador deve esperar um certo tempo
at poder usar um feitio de novo), ou atualizar algumas variveis baseadas na taxa de variao.

CLASSES COMUNS
Na criao de um Blueprint so apresentadas algumas sugestes de classes comuns para serem usadas
como classe Pai do Blueprint. Essas classes comuns so conhecidas como "Gameplay Framework" e so usadas
para representar jogadores, personagens, controladores e regras do jogo.
Para usar outra classe como classe Pai, basta expandir a categoria "All Classes" e pesquisar a classe
desejada. As classes "Actor Component" e "Scene Component" permitem a criao de componentes usando
Blueprints.

GAME INSTANCE
Classe Global que gerencia todas as variveis globais do jogo. acessvel globalmente e pode armazenar
todos os dados que voc quer realizar entre os nveis. Onde normalmente voc teria que escrever dados para um
arquivo de configurao ou arquivo binrio para a transferncia entre os nveis, agora voc pode usar a classe
Game Instance. Game Instance um blueprint e pode ser programado normalmente. Fica em Project Settings,
Maps & Modes. Exemplo de como chamar uma funo da Game Instance por um trigger em um Level Blueprint:

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 3


GAME STATE X GAME MODE
Game State uma extenso da Game Mode, uma vez que Game Mode no replicada e existe apenas na
memria dos servidores por razes de segurana. Ento Game State permite que os clientes acessem alguns
dados do jogo que voc normalmente colocaria em Game Mode, como placares e tempo de jogo. Esta a nica
informao que o cliente ter, enquanto Game Mode deve conter as informaes que s o servidor deve saber.
Voc pode ignorar Game State se voc criar um jogo do tipo single player. Para jogos multiplayer usar Game
State e Player State.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 4


Guia de Referncia Rpida de Blueprints por Otavio S. Souza 5
BRANCH

Direciona o fluxo de execuo de um Blueprint baseado no valor da varivel Booleana Condition, que
pode ser true ou false (verdadeiro ou falso).

Entrada:
Condition: Este valor Booleano pode ser obtido de uma varivel Booleana ou pode ser o resultado de uma
expresso.

Exemplo:
No final de uma partida verificado se a pontuao do jogador foi maior do que o recorde atual. Se for
verdadeiro, ento a pontuao salva como o novo recorde na varivel High Score.

Em outro exemplo, quando o evento AnyDamage acionado, o novo valor da varivel Health se torna
seu valor antigo menos o valor do dano (damage) recebido. Se o valor de Health for menor que zero, o Ator
destrudo.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 6


SWITCH ON INT

Determina o fluxo de execuo de acordo com o valor inteiro de entrada.

Entrada:
Selection: Valor inteiro que determina a sada. Se o valor no for encontrado, a sada ocorre no pino Default.

Exemplo:
A dificuldade de um jogo armazenada em uma varivel inteira chamada Difficult que pode ter os
valores de 0 a 3. O nmero total de inimigos definido de acordo com a dificuldade.

Em outro exemplo, o Switch On Int usado para escolher uma resposta de acordo com o nmero da
questo que foi perguntada.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 7


FOR EACH LOOP

Recebe como parmetro de entrada um Array e executa um conjunto de aes que esto associadas ao
pino de sada Loop Body para cada elemento da Array que pode ser obtido do pino de sada Array Element.
Depois disso o fluxo de execuo direcionado para o pino de sada Completed.

Entrada:
Array: Array contendo os elementos que sero usados no loop.

Sada:
Array Element: Referncia ao elemento atual do Array.
Array Index: ndice do elemento atual do Array.

Exemplo:
Um ForEachLoop usado para iterar atravs de um Array que contm as pontuaes dos jogadores.
Para cada valor um teste feito para verificar se a pontuao mais alta, se for verdadeiro o valor armazenado
na varivel Best Score e o ndice do jogador no Array armazenado na varivel Best Player.

Em outro exemplo, quando o jogador sobrepe um Blueprint, todas as lmpadas no Array Lamps sero
desligadas exceto a lmpada cujo ndice est armazenado na varivel "LampIndextoKeepOn".

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 8


GET ALL ACTORS OF CLASS

Pega as referncias de todos os Atores que pertencem classe especificada ou a uma subclasse.

Entrada:
Actor Class: A classe que ser usada na busca dos Atores.

Sada:
Out Actors: Array contendo as referncias dos Atores da classe especificada.

Exemplo:
Imagine um jogo de Pac Man com um blueprint Plula e um blueprint Ghost que possui uma varivel
Booleana Scared (assutado). Quando a Plula pega, ela tem de informar a todos os Ghost para ficarem
assustados.

Em um segundo exemplo, antes de criar um inimigo, a funo Get All Actors of Class usada para
verificar quantos inimigos existem no nvel. Se houver menos do que o nmero mximo, ento um novo inimigo
criado.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 9


SPAWN ACTOR FROM CLASS

Cria um Ator no nvel de acordo com a classe e a transformao especificadas.

Entrada:
Class: A classe do Ator que ser criado.
Spawn Transform: A transformao que ser usada pelo Ator.
Collision Handling Override: Define como utilizar a coliso no momento da criao.

Sada:
Return Value: Referncia ao Ator criado.

Exemplo:
Quando este Blueprint destrudo no jogo, ele cria um Ator do tipo Coin (moeda) no mesmo lugar.

Neste exemplo, um For Loop usado para criar 10 Pickup Item em posies aleatrias.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 10


RANDOM INTEGER IN RANGE

Funo que retorna um valor inteiro aleatrio dentro de uma faixa de valores especificados.

Entrada:
Min: O menor valor que pode ser gerado.
Max: O maior valor que pode ser gerado.

Sada:
Return Value: Valor inteiro aleatrio entre Min e Max.

Exemplo:
O evento customizado Random Bonus cria um tipo de bnus aleatrio baseado no resultado da funo
Random Integer in Range.

O evento customizado abaixo simula um ataque em um simples RPG baseado em dois dados de seis faces.
Se a soma dos dois dados for 12, o jogador executa um dano crtico. Cada vez que Random Integer in Range
acessado, ele gera um novo nmero aleatrio.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 11


OPEN LEVEL

Carrega um novo nvel do jogo.

Entrada:
Level Name: Nome completo do nvel. (Caminho + Nome)

Exemplo:
Imagine um blueprint Teletransporte que ao ser sobreposto pelo jogador, carregar um novo nvel. O
nome do nvel que deve ser carregado informado na varivel editvel "Destination".

Em outro exemplo, quando um boto UMG clicado, um teste feito para verificar se para carregar o
nvel do tutorial ou o nvel do mundo do jogo. Depois disso o widget UMG removido da tela.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 12


QUIT GAME

Sai do jogo ou move a aplicao para background.

Entrada:
Quit Preference: Pode ser "Quit" ou "Background".

Exemplo:
Quando o boto Back do Android pressionado, um teste feito para verificar se o jogo est na tela de
Menu. Se verdadeiro, a aplicao movida para background.

Em outro exemplo, depois de clicar em um boto UMG para sair do jogo, a configurao do jogo salva e
depois a aplicao fechada.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 13


SET TIMER BY EVENT

Um Timer programado para executar um determinado evento depois de passar o tempo especificado.

Entrada:
Event: Uma referncia para o evento.
Time: Tempo em segundos.
Looping: Indica se o Timer deve sempre repetir ou se apenas uma execuo.

Sada:
Return Value: Uma referncia para o Timer conhecido como Timer Handle que pode ser armazenada em uma
varivel do tipo Timer Handle para que o Timer possa ser manipulado posteriormente.

Exemplo:
Quando a tecla E pressionada, um Timer ativado para executar o evento customizado
DetonateBomb depois de 60 segundos.

Outro Timer programado para chamar a cada 5 segundos um evento que cria uma nave inimiga.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 14


CLEAR TIMER BY HANDLE

Pra o Timer que referenciado pelo Timer Handle informado.

Entrada:
Handle: Timer Handle que referencia um Timer.

Exemplo:
Quando o evento DefuseBomb (desarmar bomba) chamado, ele ir parar o Timer que foi usado para a
contagem regressiva da exploso.

Em um evento customizado GameOver, uma Macro chamada para limpar os valores das variveis e
o Clear Timer by Handle chamado para que o Timer que cria inimigos no continue a executar.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 15


CAST TO

Converte o tipo da varivel de referncia para o novo tipo especificado. Isto necessrio em algumas
situaes para ser possvel acessar as variveis e funes de uma classe ou blueprint.

Entrada:
Object: Uma referncia para um objeto.

Sada:
Cast Failed: Pino de execuo que usado se o objeto referenciado no for do tipo usado no Cast.
As [novo tipo]: Uma referncia usando o novo tipo especificado no Cast.

Exemplo:
Um novo blueprint foi criado com o nome Machine. Ele do tipo Actor. Este blueprint possui uma
funo chamada Recharge Battery. Uma referncia do tipo Actor pode ser usada para manipular este novo
blueprint, mas ela no teria acesso funo Recharge Battery porque ela pode apenas acessar as variveis e
funes que foram criadas no tipo Actor. Para acessar a funo Recharge Battery preciso uma referncia do
tipo Machine. Veja a ilustrao abaixo:

Em outro blueprint chamado Recharger existe um evento de sobreposio. Se o Ator que sobrepor for
do tipo Machine ento ser chamada a funo Recharge Battery usando a referncia do tipo Machine que
foi fornecida no Cast To.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 16


LERP

Lerp uma abreviao de "Interpolao Linear". A funo gera um valor situado entre dois valores
informados, baseado no valor do parmetro "Alpha".

Entrada:
A: Valor fracionrio que representa o menor valor que pode ser retornado.
B: Valor fracionrio que representa o maior valor que pode ser retornado.
Alpha: Valor fracionrio entre 0 e 1. Se Alpha for 0 retorna o menor valor e se Alpha for 1 retorna o maior valor.

Sada:
Return Value: Valor fracionrio entre A e B dependendo do valor de Alpha.

Exemplo:
Imagine uma corrida que ocorre ao longo do eixo X. A corrida inicia na posio X=1500 e termina na
posio X=9500. Se usarmos a funo "Lerp" passando como parmetros A=1500, B=9500 e Alpha=0.5, o
resultado ser a posio 5500 que representa o meio da corrida.

A imagem abaixo mostra uma funo que recebe um valor entre 0 e 1 que indica quanto j foi
completado da corrida e retorna a posio X equivalente.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 17


IS VALID

Macro que verifica a validade do objeto de entrada. Para um objeto ser vlido ele no pode ser nulo e
nem estar marcado para ser destrudo.

Entrada:
Input Object: Referncia para um objeto.

Sada:
Is Valid: Pino de execuo que usado se o objeto referenciado estiver vlido.
Is Not Valid: Pino de execuo usado caso o objeto esteja invlido.

Exemplo:
Em um Blueprint chamado "Machine" foi criada uma varivel editvel que ser usada para referenciar
outro Blueprint chamado "Recharger". Ao adicionar um Blueprint "Machine" no nvel, podemos observar que o
contedo da varivel "Recharger" est "None", conforme imagem abaixo:

Isto significa que a varivel "Recharger" no est referenciando nenhum objeto, ou seja, ele no est
vlido. Esta varivel deve receber a referncia para algum objeto "Recharger" que esteja no nvel. Podemos
verificar no incio do jogo se a varivel "Recharger" recebeu esta referncia, caso no tenha recebido ento ser
escrito uma mensagem no Log, conforme imagem abaixo.

Em outro exemplo, imagine que o Blueprint "Machine" responsvel por proteger um Blueprint
"Recharger" que est no nvel. Se o Blueprint recharger que ele estava protegendo for destrudo, ele precisa
buscar outro "Recharger" para proteger:

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 18


GATE

Gate uma ao de controle de fluxo que pode estar aberto ou fechado. Se estiver aberta ela permite a
execuo das aes ligadas ao pino de sada.
Resumindo: se Open receber sinal, deixa o fluxo passar de Enter para Exit. Se Close receber sinal,
o fluxo entre Enter e Exit cortado.

Entrada:
Enter: Pino de execuo que recebe o fluxo de execuo atual.
Open: Pino de execuo que muda o estado do Gate para aberto (Open).
Close: Pino de execuo que muda o estado do Gate para fechado (Close).
Toggle: Pino de execuo que alterna o estado atual do Gate.
Start Closed: Varivel booleana que determina se o Gate deve iniciar a sua execuo no estado fechado.

Sada:
Exit: Este pino ser executado se o Gate estiver aberto.

Exemplo:
No exemplo abaixo temos um Ator chamado "HealthGenerator". Quando o jogador estiver colidindo com
este ator, a sua sade ser restaurada lentamente a cada evento "Tick".
Se o jogador se afastar do "HealthGenerator", o "Gate" ser fechado e as aes que restauram a sade
deixaram de ser executadas. A ao "Min" usada para que o valor da varivel "Health" nunca seja maior que
100.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 19


DELAY / RETRIGGERABLE DELAY

Delay e Retriggerable Delay so funes latentes que executam as aes conectadas ao pino "Completed"
somente aps passar o tempo especificado no parmetro "Duration". As funes latentes no seguem o fluxo
normal de execuo dos Blueprints. Elas executam em paralelo e podem levar vrios ticks at a sua concluso.
Durante a contagem regressiva, Delay ignora novas chamadas ocorridas pelo pino de entrada. J
Retriggerable Delay, se receber uma nova chamada, interromper a contagem regressiva e a reiniciar.

Entrada:
Duration: Tempo em segundos que a funo Delay deve esperar.

Sada:
Completed: Pino de execuo que ser ativado depois que o tempo de Duration acabar.

Exemplo:
Suponha que em um jogo existem vrios fatores que podem levar ao spawn de um inimigo. Foi criado o
evento customizado "SpawnEnemy" com um delay para garantir que tenha passado pelo menos 5 segundos antes
da criao de um novo inimigo. Mesmo que o evento "SpawnEnemy" seja chamado em menos de 5 segundos, a
funo Delay no permitir que um novo inimigo seja criado.
A imagem abaixo mostra que o evento "SpawnEnemy" est executando e tambm mostra que ainda falta
"2.244" segundos para que um novo inimigo seja criado.

Em outro exemplo existe um evento customizado "GameOver" que exibe uma tela de game over e depois
de 3 segundos muda o valor de uma varivel que guarda o estado do jogo para que o jogo volte ao Menu.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 20


DOT PRODUCT

O Dot product pode ser usado para verificar a relao entre dois vetores, por exemplo, se eles so
perpendiculares ou paralelos.

Entrada:
A: Vetor A.
B: Vetor B.

Sada:
Return Value: Valor fracionrio que representa o Dot product entre os vetores A e B.

Exemplo:
Se os dois vetores estiverem normalizados, o dot product igual ao coseno do ngulo formado entre os
vetores e pode variar de -1 a 1. A imagem abaixo mostra alguns exemplos de dot product entre dois vetores.

No script abaixo, um inimigo s pode ser destruido se for atingido por um tiro direto. Este teste feito
baseado no dot product entre o "Forward Vector" do projetil e o vetor "Hit Normal" do inimigo. Eles precisam ser
opostos, por isso o dot product deve ser prximo de -1.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 21


EVENT DISPATCHER

Permite um tipo de comunicao entre classes Blueprint e o Level Blueprint. Ele criado em uma classe
Blueprint e pode ser implementado no Level Blueprint.

Exemplo:
Imagine que estamos criando um blueprint "BP_Button" para representar um boto que pode ser
pressionado. O objetivo deste blueprint apenas informar quando o boto for pressionado. Desta forma
podemos usar este boto para diversas situaes diferentes. As aes que iro ocorrer quando o boto for
pressionado sero definidas no Level Blueprint.
Na aba "MyBlueprint" do "BP_Button", crie um EventDispatcher com o nome "ButtonPressed":

Quando a tecla "Enter" for pressionada, o evento dispatcher "ButtonPressed" ser chamado:

Adicione um "BP_Button" no nvel e selecione-o. Abra o Level Blueprint e clique com o boto direito no
EventGraph para adicionar o evento "Button Pressed" relacionado ao EventDispatcher.

Assumindo que existe um Blueprint chamado "Rocket" no nvel e que ele possui uma funo chamada
"Starts Rocket Launch". O Level Blueprint responsvel por chamar a funo "Starts Rocket Launch" quando o
boto for pressionado.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 22


BIND EVENT

Vincula um evento a outro evento ou Event Dispatcher, que pode ser de outro Blueprint. Quando um
evento chamado, todos os outros eventos que esto vinculados a ele tambm so chamados.

Entrada:
Target: Objeto que possui o evento que receber o bind.
Event: Referncia para um evento que ser vinculado (bind) a outro evento, para ser chamado posteriormente.

Exemplo:
H um blueprint PickupManager que responsvel por criar "PickupItem" e manter na varivel
"ItemCount" a quantidade de "PickupItem" que existe no nvel. Para isso foi criado um evento customizado
"RemoveItem" que diminiu em 1 o valor da varivel "ItemCount".
O evento RemoveItem vinculado (bind) ao evento "OnDestroyed" do "PickupItem" que foi criado.
Desta forma, quando o "PickupItem" for destrudo no jogo, o evento "RemoveItem" ser chamado.

Em outro exemplo existe um blueprint chamado "PlayerWarrior" que usado pelo jogador. Este blueprint
possui um event dispatcher com o nome "GoalAchieved". Ao iniciar o jogo, o Level Blueprint faz um bind com o
event dispatcher "GoalAchieved". Quando o event dispatcher "GoalAchieved" for acionado pelo jogador o Level
Blueprint mudar para o prximo nvel.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 23


FORMAT TEXT

Ao blueprint que constri um texto baseado em parmetros que podem ser especificados na
propriedade "Format".

Entrada:
Format: Texto que far parte do resultado final. Para definir parmetros, basta colocar um nome entre os
delimitadores {} para cada parmetro.
Parmetros definidos no Format: Para cada par de {} gerado um novo parmetro de entrada com o nome
que est entre {}.

Sada:
Result: Texto final construdo com os valores do parmetro Format e dos outros parmetros.

Exemplo:
Ao final de uma partida ser exibido um texto com o resultado. Este texto contm o valor de 4 variveis
relacionadas aos nomes e pontos de dois jogadores.
O texto usado no parmetro "Format" foi:
Result: {Player1Name} = {Player1Score} X {Player2Name} = {Player2Score}
Aps inserir o valor de "Format" o editor de Blueprint gera os outros parmetros de entrada. A imagem
abaixo mostra como ficou o Format Text com os parmetros.

Este um exemplo do texto gerado:

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 24


ATTACH ACTOR TO COMPONENT

Anexa um Ator ao componente de outro Ator. O Ator anexado sofre as transformaes do componente
pai.

Entrada:
Target: Ator que ser anexado.
In Parent: Componente que receber o Ator.
In Socket Name: (Opcional) Nome do Socket para anexar o Ator.
Attach Location Type: Pode ser AbsoluteWorld, RelativeOffset or SnapTo.

Exemplo:
O evento customizado abaixo equipa o SkeletalMesh do jogador com uma espada usando um socket com
o nome HandSocket que indica onde a espada deve ficar no SkeletalMesh.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 25


SET VIEW TARGET WITH BLEND

Esta funo encontrada na classe PlayerController. Muito til para alternar a viso do jogo entre
diversas cmeras.

Entrada:
Target: Referncia para um Player Controller.
New View Target: Ator que ser definido como view target. Geralmente uma cmera.
Blend Time: Tempo que leva para completar a transio entre as views.
Blend Func: Tipo de funo usada na transio.

Exemplo:
O evento abaixo pertence a um Level Blueprint que acionado quando o jogador entra em uma sala.
Neste evento a funo Set View Target with Blend usada para mudar a viso do jogo para a cmera que est
na sala.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 26


TIMELINE

Permite a criao de animaes baseadas em tempo dentro dos Blueprints. Depois de adicion-la no
editor de Blueprints, as Timelines podem ser editadas dando duplo-clique nelas.

Entrada:
Play: Executa a partir da posio atual.
Play from Start: Executa a partir do incio.
Stop: Pra a Timeline na posio atual.
Reverse: Reverte a Timeline a partir da posio atual.
Reverse from End: Reverte a Timeline a partir do fim.
Set New Time: Define a posio atual com o valor do parmetro New Time.
New Time: O valor em segundos usado por Set New Time.

Sada:
Update: Pino de execuo chamado constantemente enquanto a Timeline est executando.
Finished: Pino de execuo chamado quando a execuo termina.
Direction: Indica a direo da Timeline (forward or backward).

Exemplo:
Depois de abrir uma Timeline dando duplo-clique nela, os keyframes de animao podem ser adicionados
clicando com o boto direito no centro da Timeline e escolhendo Add Key.

Este Blueprint de uma plataforma que se move entre duas posio ao longo do eixo X. As variveis
X_Initial e X_Final mantm as posies onde a plataforma se mover no mundo. A ao Flip Flop usada
para alternar a execuo da Timeline entre a direo normal e a reversa.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 27


MATH EXPRESSION

Este um tipo especial de ao que gera um sub-graph a partir de uma expresso matemtica informada.

Entrada:
Expression: Expresso que ser analisada.
Parmetros definidos em Expression: Para cada nome de varivel encontrado na expresso gerado um novo
parmetro de entrada.

Sada:
Return Value: Resultado da expresso.

Exemplo:
O evento abaixo calcula o dano de ataque e armazena o resultado em uma varivel. utilizado o
Math Expression com a seguinte expresso:
(BaseWeaponDamage + AbilityModifier + Enhancement ) * CurrentStatus
A partir desta expresso, foram gerados os parmetros de entrada.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 28


LINE TRACE FOR OBJECTS

A funo LineTraceForObjects testa a coliso ao longo de uma linha definida e retorna o primeiro objeto
encontrado que pertena a um dos tipos de objetos especificados na chamada da funo.

Entrada:
Start: Vetor que define o incio da linha que ser usada para o teste de coliso.
End: Vetor que define o fim da linha de teste de coliso.
Object Types: Array que contm os tipos de objetos que sero testados na coliso.
Trace Complex: Valor booleano que indica se deve ser usado colises complexas.
Actors to Ignore: Array de Atores que devem ser ignorados nos testes de colises.
Draw Debug Type: Permite o desenho da linha que est sendo usado no teste de coliso.
Ignore Self: Valor booleano que indica se o Blueprint que est chamando a funo deve ser ignorado no teste.

Sada:
Out Hit: Estrutura "HitResult" que contm diversas informaes sobre a coliso encontrada.
Return Value: Valor booleano. Se for verdadeiro, significa que uma coliso foi encontrada.

Exemplo:
Em um blueprint chamado "AlarmDevice", a funo LineTraceForObjects usada para ativar um alarme
se um objeto do tipo Pawn for detectado. A imagem abaixo mostra este exemplo. Foi usada uma macro para
obter a posio inicial e final da linha.

Para criar o Array com o tipo de objetos, clique e arraste o pino "Object Types" e escolha a opo "Make
Array".
A macro TraceLocations ficou assim:

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 29


MULTI LINE TRACE BY CHANNEL

Possui duas diferenas em relao a funo LineTraceForObjects. Ela fornece como sada um Array que
pode conter vrios elementos como resultado da coliso. O teste de coliso baseado no "Trace Channel".
Observe nos detalhes de um StaticMeshActor, em "Trace Responses", definido como um objeto vai responder
ao teste de trace nos canais "Visibility" e "Camera". Por exemplo, um material transparente, vai definir o
"Visibility" como "Overlap", porque ele pode ser visto e no bloqueia a linha de viso. A funo encerra
imediatamente se for encontrado um objeto com "Block" para o Trace Channel usado.

Entrada:
Start: Vetor que define o incio da linha que ser usada para o teste de coliso.
End: Vetor que define o fim da linha de teste de coliso.
Trace Channel: Canal usado para o teste de coliso. Pode ser "Visibility" ou "Camera".
Trace Complex, Actors to Ignore, Draw Debug Type e Ignore Self: idem funo LineTraceForObjects.

Sada:
Out Hits: Array de estrutura "HitResult" contendo as colises que foram encontradas.
Return Value: Valor booleano. Se for verdadeiro, significa que uma coliso foi encontrada.

Exemplo:
O jogador possui um dispositivo que acionado usando a tecla "Enter". Este dispositivo usa a funo
MultiLineTraceByChannel para pegar os objetos visveis e adicionar a um sistema de radar que o jogador possui.

A Macro TraceLocationFPS calcula as posies usadas no Trace baseado na cmera usada pelo jogador.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 30


GET ACTOR EYES VIEW POINT

Devolve o ponto de vista do ator. Note que isto no significa a cmera, mas os "olhos" do ator. Por
exemplo, para um peo, isso iria definir a localizao da altura dos olhos, e vista de rotao (o qual diferente do
peo rotao que tem um componente de campo de zero). A viso da cmera em primeira pessoa vai utilizar este
ponto de vista. A maioria dos traos (de armas, AI) ser feito a partir deste ponto de vista.

Entrada:
Target: ator de referncia.

Sada:
Out Location: localizao do ponto de vista.
Out Rotation: viso de rotao do ator.

Exemplo:

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 31


RECEIVE DRAW HUD

Evento disponvel em Blueprints baseados na classe HUD usado para desenhar na tela. As Aes para desenhar na
tela so encontradas na categoria "Call Function -> HUD" conforme a imagem abaixo:

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 32


DRAW TEXT

Desenha texto na tela atravs da HUD.

Entrada:
Text: Texto que ser desenhado. O valor do tipo String.
TextColor: Basta clicar no quadrado colorido para escolher a cor do texto que ser desenhado.
Screen X: Posio horizontal onde ser desenhado o texto na tela. Varia de 0 a "Size X".
Screen Y: Posio vertical onde ser desenhado o texto na tela. Varia de 0 a "Size Y".
Scale: Altera o tamanho do texto. O tamanho normal multiplicado por este valor.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 33


BUILD STRING()

Constri uma string formada por Append To + Prefix + In(...) + Sufix.

Entrada:
In: aceita valores do tipo Boolean, Color, Float, Int, Name, Object, Rotator, Vector e Vector 2D.

Sada:
Return Value: a nova string resultante.

Exemplo1:

Exemplo2:

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 34


PLAY DYNAMICS FORCE FEEDBACK

Controla a reproduo do feedback de fora(vibradores do dispositivo). Comea quando Start


chamado. Chamando Update ou Stop se o feedback no estiver ativo no ter nenhum efeito. Termina
quando Stop chamado ou a durao termina. Quando Update chamado, Intensity, Duration, e
Affect so atualizados com os valores de entrada.

Entrada:
Start: inicia o vibra.
Update: atualiza os valores do vibra.
Stop: para o vibra.
Target: um player controller.
Intensity: intensidade do sinal. Os valores vo de 0.0 a 1.0. Dizem que acima de 0.3 aciona os vibras.
Duration: tempo o feedback deve durar. Se o valor for negativo ele vai vibrar at ser parado.
Affect: servos que sero acionados.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 35


SET ACTOR LOCATION

Move o ator instantaneamente para o local especificado.

Entrada:
Target: o ator de referncia.
New Location: a nova localizao para teleportar o ator.
Sweep: provoca sobreposies ao longo do caminho e para aqum da meta se bloqueada por alguma coisa(se a
coliso estiver ligada).
Teleport: Se ns teletransportar o estado de Fsica(se a coliso do objeto estiver habilitada). Se for verdade, a
velocidade fsica para esse objeto no alterado (partes por isso ragdoll no so afetados pela mudana de
localizao). Se a velocidade falsa, fsica atualizado com base na mudana de posio(afetando partes ragdoll).
Se CCD ligado e no teletransporte, isso vai afetar objetos ao longo de todo o volume varrido.

Sada:
Sweep Hit Result: o hit resultante da jogada, se Sweep estiver marcado.
Return Value: se o local foi configurado com sucesso(se no varrido), ou se ocorreu movimento em todos(se
varrido).

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 36


ENABLE/DISABLE INPUT

Ativa/desativa o controle(entrada de comandos) do ator.

Entrada:
Target: ator de referncia.

Exemplo:

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 37


FLIPFLOP

Alterna entre as sadas A e B, iniciando pela A.

Sada:
Is A: retorna true sempre que a sada A utilizada.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 38


GET (FORWARD, RIGH, UP) VECTOR

Obtm o vetor de direo para frente(X), para a direita(Y) ou para cima(Z) a partir da posio do objeto no
espao do mundo.

Entrada:
Target: componente alvo.

Sada:
Return Value: X= 1,0,0. Y= 0,1,0. Z= 0,0,1.

Obs: o 1 no absoluto. Os valores acrescem/decrescem conforme o ngulo do objeto em relao ao vetor.

Exemplo:
Resultado de Get Forward Vector para ngulos diferentes:

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 39


GET CONTROL ROTATION

Obtm a rotao do controlador, muitas vezes a rotao 'view' deste Peo.

Entrada:
Target: o peo de referncia.

Sada:
Return Value: o valor do rotator.

Exemplo:
Controle de rotao do personagem para se mover para frente, trs, direita e esquerda.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 40


CLAMP()

Retorna um valor informado por Value limitando-o entre A e B, inclusive.

Entrada:
Value: valor de entrada.
Min: valor mnimo.
Max: valor mximo.

Sada:
Return Value: valor float de sada.

Exemplo:
Neste exemplo, se a informao recebida for vlida, limita o tamanho do vetor entre -20 e +140 e salva o
resultado na varivel Velo.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 41


COMPARE(INT OU FLOAT)

Compara dois valores e aciona a sada correspondente se o valor de input for maior, igual ou menor que o
valor de comparao.

Entrada:
Input: valor de entrada.
Compare With: valor de comparao.

Exemplo:

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 42


FORLOOP

Dispara um pulso de execuo para cada ndice entre o incio e fim. Ateno: iteraes de loop ocorrem
entre os frames, de modo que grandes loops podem incorrer em uma queda de desempenho.

Entrada:
First Index: valor inteiro que representa o primeiro ndice do loop.
Last Index: valor inteiro que representa o ltimo ndice do loop.

Sada:
Loop Body: gera um pulso de execuo em cada iterao do loop enquanto se move entre os ndices.
Index: ndice atual do loop.
Completed: pino de sada que acionado quando o loop for concludo.

Exemplo:
Neste exemplo simples, o loop acionado quando o jogador toca um gatilho de nvel simples. O loop itera
10 vezes, cada vez que chamar o Print String, registra uma mensagem com a iterao atual.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 43


SELECT(FLOAT, INT, STRING, ROTATOR, VECTOR, COLOR, TRANSFORM, CLASS, OBJECT)

Se Pick A for verdadeiro, retorna o valor de A, caso contrrio retorna o valor de B.

Entrada:
A: valor de entrada.
B: valor de entrada.

Sada:
Return Value: valor de sada de acordo com a condio Pick A.

SIGN(FLOAT ou INT)

Retorna -1 se A for menor que 0, 0 se A for zero ou 1 se A for maior que 0.

Entrada:
A: valor de entrada.

Sada:
Return Value: valor de sada do tipo float.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 44


FLOOR

Arredonda o valor de entrada do tipo float para o maior nmero inteiro anterior.

Entrada:
A: valor do tipo float.

Sada:
Return value: valor tipo integer arredondado para menos do valor da entrada A.

FCEIL

Arredonda o valor de entrada do tipo float para o menor nmero inteiro seguinte.

Entrada:
A: valor do tipo float.

Sada:
Return value: valor tipo integer arredondado para mais do valor da entrada A.

ROUND

Arredonda o valor de A para o nmero inteiro mais prximo.

Entrada:
A: valor do tipo float.

Sada:
Return Value: valor do tipo integer arredondado para o mais prximo.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 45


MAKE PULSATING VALUE

Funo simples para criar um valor escalar pulsante.

Entrada:
In Current Time: no tempo atual.
In Pulses Per Second: em pulsos completos por segundo.
In Phase: montante fase opcional, entre 0,0 e 1,0 (para sincronizar os pulsos).

Sada:
Return Value: valor pulsante entre 0,0 e 1,0.

NEARLY EQUAL (FLOAT ou TRANSFORM)

Retorna verdadeiro se A quase igual a B(A B) considerando a margem de tolerncia.

Entrada:
A: valor tipo float.
B: valor tipo float.
Error Tolerance: margem de tolerncia.

Sada:
Return Value: valor tipo booleano.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 46


EASE

Interpola do valor A para o B aplicando uma funo de atenuao especfica.

Entrada:
Function: tipo de interpolao a ser aplicada. Pode ser: Linear, Step, Sinusoidal In, Sinusoidal Out, Sinusoidal In
Out, Ease In, Ease Out, Ease In Out, Expo In, Expo Out, Expo In Out, Circular in, Circular Out e Circular In Out.
Alpha: Valor fracionrio entre 0 e 1. Se Alpha for 0 retorna 100% do valor de A. Se Alpha for 1 retorna 100% do
valor de B.
A: valor inicial a ser interpolado. Aceita float, integer, e outros sem precisar de converso.
B: valor final a ser interpolado. Aceita float, integer, e outros sem precisar de converso.
Shortest Path: se marcado, interpola usando o caminho mais curto.

Sada:
Result: valor fracionrio entre A e B proporcional ao valor de Alpha.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 47


FIND LOOK AT ROTATION

Encontra a rotao que um ator precisa para focar o ator alvo. Faz o clculo para que o Forward Vector do
ator de origem aponte para o ator alvo.

Entrada:
Start: vetor de localizao do ator de origem.
Target: vetor de localizao do ator alvo.

Sada:
Return Value: rotao necessria para o ator de origem focar o ator alvo.

Guia de Referncia Rpida de Blueprints por Otavio S. Souza 48