Pour marquer le mini-plateau à l'aide d'indicateurs montrant les carrés de votre plateau ayant subi une attaque, vous devez convertir les coordonnées de carré de plateau en un emplacement du monde sur le mini-plateau.
Convertir les coordonnées de carré en transformation du monde sur le mini-plateau
Pour convertir des coordonnées de carré en un emplacement du monde sur le mini-plateau, procédez comme suit :
Obtenez le facteur d'échelle du mini-plateau.
Convertissez les coordonnées de carré en
vector3en utilisant le facteur d'échelle.Faites pivoter le marqueur en fonction de la rotation du mini-plateau.
Renvoyez la transformation construite.
Créez une fonction nommée GetDimensions pour obtenir les dimensions du plateau de jeu :
using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
using { /UnrealEngine.com/Temporary/Diagnostics }
using { /UnrealEngine.com/Temporary/SpatialMath }
using { /Verse.org/Assets }
using { DataTypes }
using { UtilityFunctions }
board<public> := class(creative_device):
Vous devez ensuite procéder comme suit pour convertir les coordonnées de carré en une transformation située sur le mini-plateau :
Assurez-vous qu'il existe un mini-plateau valide.
Obtenez les dimensions du plateau de jeu.
Obtenez l'échelle relative d'un carré dans l'espace du mini-plateau à partir des dimensions du mini-plateau et des dimensions du grand plateau.
Obtenez la transformation de la caméra.
Définissez la rotation requise pour faire pivoter l'axe de maillage du mini-plateau vers l'avant.
Construisez l'emplacement du monde décalé et pivoté par rapport au centre du mini-plateau.
Obtenez la transformation du mini-plateau.
Ajoutez le décalage du mini-plateau du centre à l'emplacement du mini-plateau pour obtenir la transformation du mini-plateau pour les coordonnées de carré.
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):
...
Placer un marqueur de mini-plateau
Pour placer un marqueur de mini-plateau sur le mini-plateau, vous devez connaître les informations suivantes :
Les coordonnées de carré du plateau où se trouve le marqueur.
S'il s'agit d'un marqueur d'impact ou d'un marqueur d'échec.
Construisez une nouvelle énumération pour représenter le type de marqueur dans le module DataTypes :
using{/Verse.org/Simulation}
using{/Verse.org/Random}
using{/UnrealEngine.com/Temporary/SpatialMath}
DataTypes<public> := module:
...
marker_type<public> := enum<open>:
Hit
Définissez une fonction SetMarker pour placer un marqueur sur le mini-plateau dans la classe de mini-plateau.
Cette fonction exécute les tâches suivantes :
Elle vérifie la présence d'un mini-plateau valide.
Elle détermine le type de maillage de marqueur à utiliser : d'impact ou d'échec.
Elle obtient la transformation du mini-plateau des coordonnées du carré d'entrée.
Elle fait apparaître le marqueur.
Elle ajoute le marqueur à la matrice des marqueurs.
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):
...
Résumé
En résumé, cette page vous a guidé à travers les étapes suivantes :
Placer un marqueur sur le mini-plateau.
Effectuer des conversions entre l'espace du mini-plateau, l'espace du plateau et l'espace du monde.
.udatasmith
using { /Verse.org/Simulation }
using { /Verse.org/Random }
DataTypes<public> := module:
tile_coordinate<public> := class<concrete>:
Left<public>:int = 0
Forward<public>:int = 0
bounds<public> := class<concrete>:
using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
using { /UnrealEngine.com/Temporary/Diagnostics }
using { /UnrealEngine.com/Temporary/SpatialMath }
using { /Verse.org/Assets }
using { DataTypes }
using { UtilityFunctions }
board<public> := class(creative_device):
using { /Fortnite.com/Devices }
using { /Verse.org/Simulation }
using { /UnrealEngine.com/Temporary/Diagnostics }
using { /Verse.org/Assets }
using { /UnrealEngine.com/Temporary/SpatialMath }
using { DataTypes }
# See https://dev.epicgames.com/documentation/en-us/uefn/create-your-own-device-in-verse for how to create a verse device.
# A Verse-authored creative device that can be placed in a level