Battaglia di coordinate utilizza tre diversi spazi di coordinate durante il gameplay:
Spazio mondo: spazio di coordinate utilizzato per posizionare gli oggetti nel mondo di gioco tramite le funzioni dell'API Verse.
Spazio tabellone: spazio di coordinate utilizzato per posizionare gli oggetti sui tabelloni di gioco dei giocatori.
Spazio minitabellone: spazio di coordinate utilizzato per mostrare ai giocatori una visuale del proprio tabellone.
Questi spazi di coordinate si combinano per fornire al giocatore una visione accurata dello stato corrente del gioco e delle prestazioni di gameplay.
Sono necessarie pianificazione e riflessione per progettare una gestione completa dello spazio di coordinate. La maggior parte del lavoro consiste nella conversione tra spazi di coordinate, affinché si possano mappare in maniera affidabile i vettori nello spazio mondo sulle coordinate del tabellone di gioco, sulle coordinate del minitabellone, e viceversa.
Puoi vedere lo spazio tabellone rappresentato dal tabellone di gioco al centro dell'immagine (1) e lo spazio minitabellone rappresentato dal minitabellone nell'angolo in alto a sinistra (2).
Lo spazio mondo è il sistema di coordinate persistenti alla base di UEFN e delle funzioni dell'API Verse. UEFN utilizza il sistema di coordinate tridimensionali Sinistra-Su-Avanti (LUF).
Per maggiori informazioni su questo sistema di coordinate, consulta la documentazione del Sistema di coordinate Sinistra-Su-Avanti.
Spazi di coordinate
Ciascuno degli spazi di coordinate in questa esperienza richiede la conversione di posizioni su superfici diverse, nonché di tipi diversi per posizionare correttamente gli oggetti di gioco nel mondo. Di seguito sono riportate le descrizioni di ciascuno di questi spazi. Questi argomenti verranno discussi in modo più approfondito in questo tutorial.
Spazio mondo
Lo spazio mondo è lo spazio predefinito che UEFN e Verse usano per posizionare gli oggetti nel mondo di gioco. Questo esempio di gioco utilizza principalmente oggetti creative_device. Di conseguenza, la classe Verse utilizzata per rappresentare le posizioni nel mondo di gioco per i dispositivi diventa transform nel modulo /UnrealEngine.com/Temporary/SpatialMath con la definizione:
transform<public> := struct<concrete><computes>:
Scale<public>:vector3
Rotation<public>:rotation
Translation<public>:vector3
in cui vector3 è definito come:
vector3<public> := struct<concrete><computes><persistable>:
X<public>:float
Y<public>:float
Z<public>:float
Il transform definisce la posizione di un oggetto (Translation), in quale direzione è rivolto (Rotation) e quanto è grande (Scale).
Qualsiasi oggetto che deriva dalla classe creative_object ha accesso alle funzioni dell'API Verse per:
GetTransform: ottiene i dati transform correnti di un oggetto.TeleportTo: sposta un oggetto nella destinazione di input senza animazione.MoveTo: crea un'animazione del movimento verso la destinazione di input.
La definizione di transform, insieme a queste funzioni API, fornisce tutto il necessario per definire dove si trova un oggetto nel mondo di gioco e posizionarlo al suo interno.
Spazio tabellone
Lo spazio tabellone è lo spazio utilizzato per il tabellone di gioco principale nella Battaglia di coordinate, identificato dal richiamo (1) nell'immagine in alto. Questo spazio viene utilizzato per designare spazi o tile sul tabellone rispetto al centro del tabellone di gioco.
Spazio minitabellone
Il minitabellone mostra ai giocatori una visuale del proprio tabellone. Gli indicatori di colpi comunicano che un tile del tabellone è stato attaccato e che il nemico ha distrutto una pedina su quel tile. Gli indicatori di mancanza comunicano che un tile del tabellone è stato attaccato e che il nemico non ha colpito nulla. Il minitabellone stesso è una mesh statica posizionata in relazione alla visuale di gameplay, così da apparire come parte dell'interfaccia utente del gioco.
Passaggi per la creazione
Per utilizzare questi tre spazi di coordinate insieme e creare un gameplay efficace, devi eseguire i seguenti passaggi:
Definisci una rappresentazione di un tile nello spazio del tabellone.
Definisci i limiti dello spazio sul tabellone.
Definisci dove si trova lo spazio del tabellone all'interno dello spazio mondo.
Esegui conversioni tra spazio del tabellone e spazio mondo.
Posiziona una pedina sul tabellone in un punto specifico.
Ottieni una pedina dal tabellone.
Rimuovi una pedina dal tabellone.
Posiziona tutte le pedine a caso sul tabellone.
Definisci una rappresentazione di un tile nello spazio del minitabellone.
Definisci i limiti dello spazio minitabellone.
Definisci la posizione dello spazio minitabellone nello spazio mondo.
Posiziona un indicatore sul minitabellone.
Esegui conversioni tra spazio minitabellone, spazio tabellone e spazio mondo.
Definisci le mosse di gioco.
Costruisci il loop di gioco.
Determina quando viene soddisfatta una condizione di vittoria.