Sistema di costruzione

*Questo contenuto è tradotto usando AI (Beta) e potrebbe contenere errori. Per visualizzare questa pagina in inglese, clicca qui.

Roblox Battle Royale presenta un sistema di costruzione che consente agli utenti di costruire le proprie strutture per raggiungere un terreno più alto per un miglior angolo di fuoco o per fornire copertura durante la battaglia.Usando un menu, l'utente può selezionare da un numero di diversi tipi di piastrelle e posizionarli nel Mondo.

Building Example

Per mantenere un sistema ordinato e strutturato:

  • Ogni piastrelle deve connettersi ad un'altra piastrelle esistente o al terreno.
  • Posiziona tutti i mattoni di costruzione all'interno di una griglia coordinata con il mondo di gioco in modo che i mattoni si connettano correttamente e non si sovrappongano.

Composizione della piastrelle

Affinché gli utenti possano costruire nuovi riquadri rapidamente e facilmente, il sistema di costruzione deve comprendere quali riquadri sono connessi l'uno all'altro e dove possono essere posizionati nuovi riquadri sulla griglia.

Le piastrelle utilizzano 3 componenti: il oggetto visivo che viene utilizzato come oggetto di piastrelle, informazioni sullo spazio che la piastrelle occupa in riferimento ad altri oggetti del mondo in riferimento ad altri oggetti del mondo e i punti di connessione di una piastrelle che consentono di connettere piastrelle agli angoli disponibili.

Attività

Un'asset è una BasePart ( Part , MeshPart , ecc.) posizionata in ReplicatedStorage/BuildingSystem/Assets che rappresenta ciò che la piastrelle appare nel Mondodel gioco.Questo BasePart deve avere due figli:

  • Tipo di oggetto — A StringValue con un Value del nome del tipo di piastrelle.
  • Rotazione iniziale — A NumberValue con una Value della rotazione iniziale della piastola quando un Piastrellala posiziona nel Mondo.

Occupazione

Assicurarsi che una tile occupi la posizione corretta in un sistema di griglia è importante e può essere fatto utilizzando una maschera bit.Una maschera bit rappresenta lo spazio fisico che il tipo di piastrelle occupa all'interno di una sezione di base dello Spaziodel mondo o della cella.Ogni tile/oggetto del sistema di costruzione può occupare qualsiasi numero di facce di una celle di griglia (fronte, sinistra, Indietro, destra, top e bottom) e qualsiasi numero di ottanti in una celle di griglia.Un utente può posizionare solo un oggetto del sistema di costruzione in una cella se tutti i volti e gli ottanti che l'oggetto occupa sono disponibili in quella cella.L'occupazione per un oggetto del sistema di costruzione è definita come segue:

Indice bitSignificato
0Faccia inferiore della cellula
1Faccia superiore della cellula
2Faccia destra della cellula
3Faccia posteriore della cellula
4Faccia sinistra della cellula
5Faccia anteriore della cellula
6 +X, –Y, +Z ottanta della cellula con origine al centro della cellula
7 +X, +Y, +Z ottanta di cellula con origine al centro della cellula
8 –X, –Y, +Z ottanta della cellula con origine al centro della cellula
9 –X, +Y, +Z ottanta della cellula con origine al centro della cellula
10 –X, –Y, –Z ottanta della cellula con origine al centro della cellula
11 –X, +Y, –Z ottanta della cellula con origine al centro della cellula
12 +X, –Y, –Z ottanta della cellula con origine al centro della cellula
13 +X, +Y, –Z ottanta di cellula con origine al centro della cellula

Connettività

Le piastrelle devono connettersi tra loro per creare una struttura.Puoi usare una maschera bit che rappresenta quale porzione delle facce/ bordi della cellula il tipo di piastrelle tocca.La connettività di un sistema di costruzione/oggetto è rappresentata da una serie di punti di connessione, bit, sulla superficie di una cellula.Si dispongono in modo seguente sulle facce della cellula:

Octant Cube Diagram

Un oggetto sistema di costruzione è considerato connesso a un altro oggetto sistema di costruzione nella griglia se condivide almeno 2 punti di connettività sulla superficie di una cellula.

Crea nuovi tipi di riquadro

Per creare un nuovo inserisci / scrividi tile:

  1. Posiziona la risorsa in ReplicatedStorage/BuildingSystem/Assets . Ricorda che deve contenere ObjectType e StartingRotation figli come definito sopra.

    Battle Royale Weapon Example
  2. Definisci il Occupazione e la Connettività per il tuo nuovo tipo di piastrelle in >:

    Battle Royale Weapon Example

Ad esempio, il tipo di piastrelle Muro è espresso come segue:


ObjectTypeConfigurations.Wall = {
ASSET_OFFSET_FROM_CENTER = Vector3.new(0, 0, -CELL_DIMENSIONS.Z / 2),
CONNECTIVITY = 0xFF8000, -- 0b 111 111 111 000 000 000 000 000
OCCUPANCY = 0x20, -- 0b 00 00 00 00 1 0 0 0 0 0
}

Lavora con il terreno

Se vuoi creare una mappa con terreno a forma libera che si allinea perfettamente con il sistema di costruzione, consigliamo di utilizzare il sistema di importazione delle mappe di altezza come descritto in Terreno ambientale e di osservare i seguenti dettagli:

  • Il terreno in Roblox è rappresentato da un array a tre dimensioni di voxel, ognuno dei quali occupa un cubo di 4×4×4 studs nel Mondo.A causa di ciò, Roblox Battle Royale utilizza una dimensione della griglia di 20×16×20 studs, con piastrelle da parete che sono 20×16×1 studs e piastrelle da pavimento/soffitto che sono 20×1×20 studs in dimensioni.Questo consente di costruire piastrelle e terreno in modo corretto.

  • Ogni pixel nella tua mappa di altezza dovrebbe rappresentare un voxel del terreno nell'aereo X/Z , quindi un'area 5×5 in pixel rappresenta una cella di griglia di sistema di costruzione che occupa un'area di 20×20 stud.

  • Nella tua mappa di altezza, assicurati che il canale rosso o il valore del canale grigio per ciascun pixel sia divisibile dall'altezza della celle della griglia del sistema di costruzione in modo che le piastrelle di pavimento si trovino bene sopra il terreno.

  • Quando importi la tua mappa delle altezze, Impostare:


    Position (X, Y, Z) = 0, 0, 0
    Size (X, Y, Z) = heightmap_width × 4, 256, heightmap_length × 4