O minitabuleiro mostra ao jogador uma visualização do seu próprio tabuleiro. Marcadores de acerto indicam que um ladrilho do tabuleiro foi atacado e o inimigo destruiu um pawn com sucesso nesse ladrilho. Marcadores de erro indicam que um ladrilho do tabuleiro foi atacado e o inimigo não acertou nada.
O minitabuleiro propriamente dito é uma malha estática posicionada em relação à câmera de jogabilidade para que apareça como parte da interface de usuário do jogo. Para posicionar o minitabuleiro, algumas coisas precisam ser conhecidas:
A transformação da câmera de jogabilidade.
Qual a distância de deslocamento do minitabuleiro a partir da câmera.
O tamanho da grade do tabuleiro.
A malha estática a ser usada para o minitabuleiro.
A transformação da câmera pode ser acessada a partir da câmera de jogabilidade, então adicione uma referência a essa câmera de jogabilidade. A segunda pode ser feita por tentativa e erro por meio do UEFN, para que possa ser um vetor editável. A terceira pode ser acessada por meio de uma referência ao tabuleiro do jogo do jogador. A última pode ser armazenada por meio de uma referência ao ativo gerado por Verse Assets.digest.verse.
O minitabuleiro foi criado no modo Modelagem do UEFN para modelar uma malha estática simples. O nome dele é SM_Miniboard.
A câmera de jogabilidade é uma câmera de ponto fixo olhando para baixo, na direção do tabuleiro.
Como estruturar a classe do tabuleiro
Para definir a classe do tabuleiro, crie um novo arquivo do Verse denominado miniboard.verse e adicione um novo dispositivo Verse denominado minitabuleiro.
using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
using { /UnrealEngine.com/Temporary/Diagnostics }
using { /Verse.org/Assets }
using { /UnrealEngine.com/Temporary/SpatialMath }
using { DataTypes }
miniboard<public> := class(creative_device):Adicione as variáveis discutidas anteriormente à classe:
using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
using { /UnrealEngine.com/Temporary/Diagnostics }
using { /Verse.org/Assets }
using { /UnrealEngine.com/Temporary/SpatialMath }
using { DataTypes }
miniboard<public> := class(creative_device):
@editable
Posicionar o minitabuleiro
Para posicionar o minitabuleiro, crie uma nova função chamada Position. Essa função não precisa de informações além da transformação de CameraDevice, StaticMesh e BoardOffsetFromCameraDevice.
A função de posição posiciona o minitabuleiro em relação à câmera de jogabilidade para fazer com que pareça fazer parte da interface de usuário do jogo.
Essa função executa as seguintes etapas:
Obtém a transformação da câmera de jogabilidade.
Predefine uma correção de rotação para a malha do minitabuleiro.
A malha do minitabuleiro é orientada de modo que fique voltada para o eixo Z ou para cima.
Essa rotação gira a malha de modo que ela fique voltada para o eixo X ou para a frente.
Constrói a transformação de minitabuleiro.
A translação do minitabuleiro começa na câmera, em seguida, adiciona o deslocamento do dispositivo da câmera, rotacionado para ficar de frente para a câmera.
A rotação é feita de forma a ficar de frente para a câmera e ser correta em relação ao eixo principal do minitabuleiro.
O adereço de minitabuleiro surge e a malha estática é definida.
using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
using { /UnrealEngine.com/Temporary/Diagnostics }
using { /Verse.org/Assets }
using { /UnrealEngine.com/Temporary/SpatialMath }
using { DataTypes }
miniboard<public> := class(creative_device):
...
Para colocar o minitabuleiro assim que o jogo começar, substitua a função OnBegin do minitabuleiro:
using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
using { /UnrealEngine.com/Temporary/Diagnostics }
using { /Verse.org/Assets }
using { /UnrealEngine.com/Temporary/SpatialMath }
using { DataTypes }
miniboard<public> := class(creative_device):
...
Resumo
Em suma, esta página guia você pelas seguintes etapas:
Definir uma representação de um ladrilho no espaço do minitabuleiro.
Definir os limites do espaço do minitabuleiro.
Definir onde o espaço do minitabuleiro está localizado no espaço do mundo.
Arquivos
using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
using { /UnrealEngine.com/Temporary/Diagnostics }
using { /Verse.org/Assets }
using { /UnrealEngine.com/Temporary/SpatialMath }
using { DataTypes }
miniboard<public> := class(creative_device):
@editable