Con Scene Graph puoi passare rapidamente dal greyboxing e dalla creazione del mondo a un livello giocabile completo in pochi semplici passaggi.
Scene Graph è un sistema nativo di Verse che sfrutta le caratteristiche di Verse. Consente di aggiungere una maggiore personalizzazione ai progetti con oggetti interattivi e personalizzati ed esperienze di gameplay.
Scene Graph migliora la stabilità del progetto perché Verse fa tutto il lavoro pesante in background, assicurando che le entità funzionino come previsto. Verse ha anche un accesso profondo a tutte le entità e ai componenti della scena, il che significa che puoi aggiungere una maggiore varietà alla scena.
Abilitare il Scene Graph nel progetto
Per utilizzare Scene Graph nel tuo progetto:
Nella barra degli strumenti, scegli Progetto > Impostazioni progetto per aprire la finestra corrispondente.
Nella finestra Impostazioni progetto, alla voce Accesso beta, attiva Strumenti Scene Graph. Scene Graph è abilitato per impostazione predefinita nella versione beta.
Per verificare che sia possibile visualizzare le funzionalità di Scene Graph, nella barra degli strumenti seleziona Posiziona attori e vedi Entità nel relativo menu a discesa.
Oggetti nel metaverso
Il metaverso è un'esperienza di intrattenimento sociale online in tempo reale in cui le persone giocano e si connettono in un mondo 3D. Epic Games sta progettando il sistema Scene Graph per UEFN per consentirti di creare queste esperienze di metaverso.
Nel sistema Scene Graph, puoi istanziare e riutilizzare gli oggetti senza la classificazione Attore di Unreal Engine. Il cuore di Scene Graph è costituito da una serie di blocchi di costruzione che utilizzano dati e logica per creare il tuo gioco, nonché per renderizzare e simulare gli oggetti in qualsiasi ambiente di gioco.
Attori ed entità non sono intercambiabili, sono sistemi diversi che lavorano insieme nella scena.
Con Scene Graph puoi creare un quadro di simulazione 3D in tempo reale in cui tutte le decisioni di progettazione e i risultati sono immediatamente visibili nella viewport. Questi possono essere modificati nel pannello Dettagli o nell' Editor prefab.
Puoi importare gli asset creati o acquistati da un fornitore e utilizzarli con Scene Graph per creare oggetti e prefab personalizzati.
Tutto ciò che crei in Scene Graph può essere riutilizzato più volte e con meno memoria. Il sistema di costruzione di Scene Graph è progettato per consentire la condivisione di contenuti complessi e simulazioni condivise, rispettando i confini tra i contenuti.
Entità e componenti
La sezione Entità e componenti costituisce la spina dorsale del sistema Scene Graph. Funzionano controllando la definizione e il comportamento degli oggetti.
Le entità sono contenitori per componenti o altre entità. Un'entità vuota non avrà alcun effetto o funzionalità visibile. I componenti sono quelli che forniscono dati e comportamenti a un'entità. La combinazione di componenti aggiunta a un'entità definisce cosa sta facendo l'entità nella scena.
Un'entità può contenere un numero qualsiasi di componenti diversi. Tuttavia, è possibile aggiungere un solo componente di un tipo di componente specifico a un'entità alla volta. Ad esempio, su un'entità è possibile utilizzare un solo tipo di light_component. Per utilizzare più componenti di un tipo comune, puoi creare una nuova entità per contenere ogni istanza del componente.
Alcuni tipi di contenuto sono generati da asset creati in UEFN. I componenti generati da risorse sono una classe di componenti che vengono creati automaticamente in base ai contenuti preesistenti nel progetto, come mesh, audio o risorse del sistema di particelle. Questi asset possono anche rivelare proprietà modificabili sul componente generato.
I componenti hanno proprietà modificabili. Queste proprietà possono essere fisiche, come una mesh statica e un sistema particellare, o logiche, come un tag di gioco o un codice Verse personalizzato, che definisce il movimento di una piattaforma. Per impostazione predefinita, tutte le entità hanno un Transform Component per specificare la posizione dell'entità nel mondo.
La costruzione di un'entità con Verse non crea un componente di trasformazione in modo automatico.
Con Scene Graph, puoi creare rapidamente scenografie e meccaniche di gioco sfruttando i dati fisici delle mesh, i cue sonori e molto altro ancora.
Un'entità assume la rappresentazione fisica di una mesh statica quando le viene aggiunto un Componente mesh e si seleziona una mesh nello slot Mesh del componente. Ciò significa che puoi creare rapidamente edifici o singoli pezzi di set e utilizzarli subito nella scena.
Ad esempio, nel video qui sotto, un'entità viene trasformata in un gruppo di alberi sempre verdi.
Puoi trasformare questo gruppo di alberi in un prefabbricato unico o combinarlo con altre entità per creare un prefabbricato foresta.
Un'entità (l'entità simulazione) si trova alla base del progetto per rappresentare la simulazione. La scena viene creata quando le entità sono annidate sotto l'entità di simulazione. Aggiungendo entità alla mappa, si creano automaticamente entità figlie dell'entità di simulazione.
L'entità superiore di un prefabbricato è l'entità radice del prefabbricato, con altri prefabbricati ed entità annidate sotto. I prefabbricati genitore comprendono l'aspetto e il comportamento dei loro figli per interagire con gli altri oggetti della scena.
Fai clic sull'immagine per ingrandirla.
Entità radice prefabbricato → WoodenHouse_Tiny_Prefab
Prefabbricato figlio → WoodenHouse_RoofSmall_Prefab_C_1
Entità figlia → Building_WIndowCircle_Bright2
Entità figlia → Building_WIndowCircle_Bright4
Entità figlia → Building_WIndowCircle_Dark2
Entità figlia → Building_WIndowCircle_Dark4
Entità figlia → WoodenHouse_Floor
Entità figlia → WoodenHouse_RoofCap2
Entità figlia → WoodenHouse_RoofCap3
Entità figlia → WoodenHouse_RoofWindow2
Prefabbricato figlio → WoodenHouse_SmallFloor_Prefab_C_1
Entità figlia → WoodenHouse_Floor
Entità figlia → WoodenHouse_Wall10
Entità figlia → WoodenHouse_WallDoor_C4
Prefabbricato figlio → WoodenHouse_Windows_Prefab_C_3
Entità figlia → Building_WindowPlane_Bright3
Entità figlia → Building_WindowPlane_Bright4
Entità figlia → Building_WindowPlane_Dark3
Entità figlia → Building_WindowPlane_Dark4
Entità figlia → WoodenHouse_Windoows_10
Ogni prefabbricato figlio presenta componenti che determinano l'aspetto del prefabbricato e il suo allineamento con gli altri prefabbricati della scena. Puoi utilizzare Verse per indirizzare prefabbricati ed entità specifiche, per scambiare il prefabbricato figlio con un altro prefabbricato o anche per cambiare il colore utilizzato per le entità Building_WindowPlane_Bright e Building_WindowPlane_Dark.
Esistono numerosi tipi di componenti che determinano il comportamento di una parte o di un'intera entità. Per saperne di più sui diversi tipi di componenti disponibili in Scene Graph, consulta Componenti.
Per ulteriori informazioni sull'uso di entità e componenti, consulta Utilizzo di entità e componenti.
Prefabbricati
Scene Graph crea prefabbricati impacchettando le entità in una relazione tra antenato e discendente. Un antenato è qualsiasi livello di entità superiore ad altre entità, come genitore, nonno, bisnonno e così via. Un discendente è un livello entità inferiore a quella di figlio, nipote e così via.
Tutte le entità selezionate, le gerarchie di entità e i loro componenti vengono immediatamente aggiunti a questo albero delle entità del prefabbricato. Una volta creato un prefabbricato, puoi personalizzare tutte le sue istanze nell' Editor prefab.
Per creare un'istanza del tuo prefabbricato, trascinalo da Esplora contenuti alla viewport. Puoi anche annidare i prefabbricati all'interno di una gerarchia di prefabbricati. Puoi utilizzare la gerarchia per applicare le modifiche apportate a tutte le istanze e a tutti i prefabbricati della gerarchia.
Aggiornando e migliorando il prefabbricato, risparmi tempo perché non è necessario trovare tutte le istanze di quell'oggetto per aggiornarle singolarmente.
Inoltre, puoi creare una moltitudine di oggetti dall'aspetto simile, selezionando le sottoparti della gerarchia e sovrascrivendo i valori dei diversi componenti. Puoi anche ruotare gli oggetti e aggiungere nuovi valori dei componenti alle diverse istanze del prefabbricato durante la modifica nell'editor prefabbricati.
L'editor segnala tutte le modifiche nel pannello Dettagli con un'icona di esclusione sui singoli attributi dei componenti. Inoltre, segnala le diverse icone dei componenti sul pulsante del menu a discesa della scheda componente.
Per tornare al progetto originale del prefabbricato, fai clic sulle icone di esclusione dei singoli componenti. L'oggetto torna automaticamente allo stato del prefabbricato genitore. Puoi anche fare clic sul pulsante del menu a discesa della scheda componente e selezionare Annulla override.
Per saperne di più sulla modifica dei prefabbricati, consulta Prefabbricati e istanze di prefabbricati.
Nel video qui sotto, il Scene Graph viene usato per creare due prefabbricati di stanze di un castello.
La stanza è duplicata. Un elemento della stanza viene modificato selezionando la mesh del pavimento e sostituendo l'originale, creando così un nuovo prefabbricato. Puoi continuare a copiare e sostituire parti per creare rapidamente un piccolo castello e persino un villaggio. Questo approccio può essere applicato anche ai componenti, permettendoti di assegnare comportamenti diversi a ciascuna stanza del castello.
La modifica dei prefabbricati non influisce sulla stabilità e sulla memoria dell'oggetto originale o delle sue copie. Ciò significa che è possibile rifinire il layout del livello, il disegno astratto e l'arte per creare oggetti personalizzati per l'isola. Con il sistema di costruzione del Scene Graph, puoi riutilizzare i prefabbricati creati nei vari progetti per creare il tuo universo di gioco in Fortnite.
Verse in Scene Graph
Verse è il linguaggio di programmazione che Scene Graph utilizza per generare e rimuovere entità dal mondo e creare componenti e comportamenti personalizzati.
Con Verse puoi creare una lanterna da esterno oscillante per la casa dell'esempio precedente. Verse consente di definire le proprietà di oscillazione, rotazione e durata per determinare il movimento della lanterna.
I prefabbricati creati nel progetto sono esposti come classe a Verse nel file Assets.digest.verse del tuo progetto. Le entità e i componenti definiti nel prefabbricato sono accessibili in Verse attraverso le chiamate GetEntities() e GetComponents() su un prefabbricato.
Per iniziare a usare Verse in Scene Graph, dai un'occhiata a Creazione di un componente personalizzato con Verse.
Esperienza pratica
Il Modello di esempio di Scene Graph introduce i concetti di base del lavoro con le funzionalità di Scene Graph e si basa su questi flussi di lavoro fondamentali per illustrare la potenza della creazione del progetto utilizzando prefabbricati e Verse. Ogni esempio mostra la potenza dell'utilizzo di Scene Graph per iterare un progetto allo scopo di creare oggetti ed esperienze di gameplay interessanti e funzionali.
Apri la sezione Creazione di un gioco a piattaforme con Scene Graph per sapere come utilizzare lo strumento per creare un'esperienza di gameplay interessante.
Per tutorial più approfonditi, dai un'occhiata ai tutorial disponibili del Scene Graph.