Animazioni di comparsa e scomparsa del 3DGS
Panoramica
L'animazione di caricamento viene riprodotta durante il caricamento dei dati LCC. Nell'editor, fare clic sul pulsante Refresh per innescare un ricaricamento e vedere l'anteprima dell'animazione.

Clic sul pulsante Refresh per vedere l'anteprima dell'animazione di caricamento
- Modalità 3DGS: animazione a due fasi (nulla → nuvola di punti → 3DGS)

L'animazione di caricamento 3DGS passa dalla nuvola di punti al 3DGS

Dimostrazione dell'animazione di caricamento 3DGS a due fasi
- Modalità nuvola di punti: animazione a una fase (nulla → nuvola di punti)

L'animazione di caricamento a una fase della modalità nuvola di punti

Dimostrazione dell'animazione di caricamento della modalità nuvola di punti
Parametri
I parametri di controllo si trovano nella categoria Animation di LCCComponent:

Configurazione dei parametri dell'animazione di caricamento nella categoria Animation
| Parametro | Predefinito | Descrizione |
|---|---|---|
| bEnableAnimation | false | Abilita l'animazione di caricamento |
| AnimationSpeed | 100 | Velocità dell'animazione |
| AnimationMinScale | 0.001 | Dimensione dei punti della prima fase (solo modalità 3DGS) |
| FirstStageDelay | 0 | Ritardo della prima fase in secondi. I dati non vengono visualizzati prima del suo avvio |
| SecondStageDelay | - | Ritardo della seconda fase (nuvola di punti → 3DGS). Un valore uguale a FirstStageDelay salta la prima fase |
| EnvironmentDelay | - | Ritardo dei nodi dell'ambiente. L'ambiente non partecipa all'animazione e compare direttamente al raggiungimento del tempo |
| AnimationOriginOffset | (0,0,0) | Offset dell'origine della scansione |
| FirstStageColor | Gold | Colore della linea di scansione della prima fase (un alpha pari a 0 nasconde la linea di scansione) |
| SecondStageColor | - | Colore della linea di scansione della seconda fase |
| ScanLineThickness | 5 | Larghezza della linea di scansione |
Animazione inversa
Con l'animazione inversa abilitata, l'animazione si contrae dalla distanza verso il centro e scompare.

Configurazione dei parametri dell'animazione inversa nella categoria Animation
| Parametro | Predefinito | Descrizione |
|---|---|---|
| Inverse Animation | false | Abilita l'animazione inversa. Una volta abilitata, l'animazione si contrae dalla distanza verso il centro e scompare |
| Inverse Max Range Time | 30 | Imposta l'estensione visibile iniziale dell'animazione inversa. Il valore deve coprire l'intera scena |

Dimostrazione dell'animazione inversa 3DGS a due fasi

Dimostrazione dell'animazione inversa della modalità nuvola di punti
Controllare l'animazione a runtime
Oltre alla configurazione nel pannello Details, l'animazione può essere controllata a runtime da codice o Blueprint.
Riprodurre di nuovo l'animazione
Oltre ad attivare e disattivare l'animazione, SetEnableAnimation reimposta anche l'origine temporale dell'animazione all'istante corrente. Non è quindi limitato alla fase di caricamento: chiamarlo in qualsiasi momento riproduce l'animazione dall'inizio.
// Replay the animation on an already loaded scene without reloading the data
Component->SetEnableAnimation(true);
Il nodo Blueprint corrispondente è Set Enable Animation.
Ordine dei parametri e dell'interruttore
Una volta avviata, l'animazione segue i parametri correnti. I parametri possono essere modificati anche dopo l'avvio e la modifica ha effetto dal fotogramma successivo, ma si tratta di una regolazione a metà riproduzione e l'animazione non riparte dall'inizio.
Per far applicare i parametri all'intera animazione, impostare prima i parametri e chiamare SetEnableAnimation per ultimo:
// Set the parameters first
Component->AnimationSpeed = 30.0f;
Component->AnimationMinScale = 0.1f;
Component->SecondStageDelay = 1.0f;
Component->bUseFirstStageColor = true;
Component->FirstStageColor = FLinearColor(0.f, 0.8f, 1.f, 1.f);
// Turn on the switch last; the animation starts at this moment with the parameters above
Component->SetEnableAnimation(true);
Per modificare un parametro durante la riproduzione (per esempio regolando la velocità in tempo reale), modificare direttamente la proprietà senza chiamare di nuovo SetEnableAnimation. Al contrario, chiamare SetEnableAnimation(true) durante la riproduzione riavvia l'animazione, quindi evitare chiamate ripetute in modalità normale.
Riprodurre l'animazione di scomparsa
Impostare bInverseAnimation su true, quindi chiamare SetEnableAnimation(true) per reimpostare la timeline:
// Disappear
Component->bInverseAnimation = true;
Component->SetEnableAnimation(true);
// Appear again
Component->bInverseAnimation = false; // remember to reset
Component->SetEnableAnimation(true);
Blueprint in forma testuale:
[Custom Event: PlayDisappear]
│
▼
[Set Inverse Animation]
Target = (LCC Component)
bInverse Animation = true
│
▼
[Set Enable Animation]
Target = (LCC Component)
b In Enable Animation = true
Note pratiche
- Impostare
bInverseAnimationprima diSetEnableAnimation. Nell'ordine inverso la timeline viene reimpostata prima del cambio di direzione, e l'animazione viene riprodotta una volta nella direzione precedente. - Reimpostare
bInverseAnimationsufalsedopo la fine di ogni animazione di comparsa. Altrimenti lo stesso oggetto resta in modalità inversa al successivo utilizzo. - Il valore predefinito di 30 secondi di
InverseMaxRangeTimeè troppo grande per un'interazione rapida e va abbassato. Questo valore moltiplicato perAnimationSpeeddà il raggio visibile iniziale, che deve essere abbastanza grande per coprire l'intera scena, ma un valore troppo grande fa trascinare il processo di scomparsa. - Evitare chiamate ripetute a
SetEnableAnimation(true)in modalità normale. Ogni chiamata reimposta la timeline e l'animazione continua a ripartire dall'inizio.