Animations d'apparition et de disparition du 3DGS
Vue d'ensemble
L'animation de chargement est jouée lors du chargement des données LCC. Dans l'éditeur, cliquez sur le bouton Refresh pour déclencher un rechargement et prévisualiser l'animation.

Clic sur le bouton Refresh pour prévisualiser l'animation de chargement
- Mode 3DGS : animation en deux étapes (rien → nuage de points → 3DGS)

L'animation de chargement 3DGS passe du nuage de points au 3DGS

Démonstration de l'animation de chargement 3DGS en deux étapes
- Mode nuage de points : animation en une étape (rien → nuage de points)

L'animation de chargement en une étape du mode nuage de points

Démonstration de l'animation de chargement du mode nuage de points
Paramètres
Les paramètres de contrôle se trouvent dans la catégorie Animation du LCCComponent :

Configuration des paramètres d'animation de chargement dans la catégorie Animation
| Paramètre | Défaut | Description |
|---|---|---|
| bEnableAnimation | false | Active l'animation de chargement |
| AnimationSpeed | 100 | Vitesse de l'animation |
| AnimationMinScale | 0.001 | Taille du nuage de points de la première étape (mode 3DGS uniquement) |
| FirstStageDelay | 0 | Délai de la première étape (en secondes). Les données ne s'affichent pas avant son début |
| SecondStageDelay | - | Délai de la deuxième étape (nuage de points → 3DGS). Une valeur égale à FirstStageDelay saute la première étape |
| EnvironmentDelay | - | Délai des nœuds d'environnement. L'environnement ne participe pas à l'animation et s'affiche directement à l'échéance |
| AnimationOriginOffset | (0,0,0) | Décalage du point de départ du balayage |
| FirstStageColor | Doré | Couleur de la ligne de balayage de la première étape (une opacité de 0 masque la ligne de balayage) |
| SecondStageColor | - | Couleur de la ligne de balayage de la deuxième étape |
| ScanLineThickness | 5 | Épaisseur de la ligne de balayage |
Animation inverse
Une fois l'animation inverse activée, l'animation se contracte depuis le lointain vers le centre puis disparaît.

Configuration des paramètres d'animation inverse dans la catégorie Animation
| Paramètre | Défaut | Description |
|---|---|---|
| Inverse Animation | false | Active l'animation inverse. Une fois activée, l'animation se contracte depuis le lointain vers le centre puis disparaît |
| Inverse Max Range Time | 30 | Définit l'étendue visible initiale de l'animation inverse. La valeur doit couvrir toute la scène |

Démonstration de l'animation inverse 3DGS en deux étapes

Démonstration de l'animation inverse du mode nuage de points
Contrôler l'animation à l'exécution
En plus de la configuration dans le panneau Details, l'animation peut être contrôlée à l'exécution par code ou en Blueprint.
Rejouer l'animation
En plus d'activer ou de désactiver l'animation, SetEnableAnimation réinitialise le point de départ du minutage de l'animation à l'instant courant. Son usage ne se limite donc pas à la phase de chargement : un appel à n'importe quel moment relance l'animation depuis le début.
// Replay the animation on an already loaded scene without reloading the data
Component->SetEnableAnimation(true);
Le nœud Blueprint correspondant est Set Enable Animation.
Ordre entre les paramètres et l'activation
Une fois lancée, l'animation suit les paramètres courants. Les paramètres restent modifiables après le lancement et les changements prennent effet à l'image suivante, mais il s'agit d'un ajustement en cours de route : l'animation ne repart pas du début.
Pour que les paramètres agissent sur toute la durée de l'animation, réglez d'abord les paramètres, puis appelez SetEnableAnimation en dernier :
// 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);
S'il faut vraiment modifier des paramètres pendant la lecture (par exemple ajuster la vitesse en temps réel), modifiez directement les propriétés sans rappeler SetEnableAnimation. À l'inverse, appeler SetEnableAnimation(true) pendant la lecture relance l'animation depuis le début : en mode normal, évitez les appels répétés.
Jouer l'animation de disparition
Réglez bInverseAnimation sur true, puis appelez SetEnableAnimation(true) pour réinitialiser la ligne de temps :
// Disappear
Component->bInverseAnimation = true;
Component->SetEnableAnimation(true);
// Appear again
Component->bInverseAnimation = false; // remember to reset
Component->SetEnableAnimation(true);
Blueprint en texte :
[Custom Event: PlayDisappear]
│
▼
[Set Inverse Animation]
Target = (LCC Component)
bInverse Animation = true
│
▼
[Set Enable Animation]
Target = (LCC Component)
b In Enable Animation = true
Points pratiques
- Réglez
bInverseAnimationavantSetEnableAnimation. Dans l'ordre inverse, la ligne de temps est réinitialisée avant le changement de direction et l'animation est jouée une fois dans l'ancienne direction. - Remettez
bInverseAnimationàfalseaprès chaque animation d'apparition. Sinon le même objet reste bloqué en mode inverse lors de son utilisation suivante. - La valeur par défaut de 30 secondes d'
InverseMaxRangeTimeest trop élevée pour une interaction rapide et doit être réduite. Cette valeur multipliée parAnimationSpeeddonne le rayon visible initial : il doit couvrir toute la scène, mais une valeur trop grande rend la disparition interminable. - En mode normal, attention à ne pas appeler
SetEnableAnimation(true)de façon répétée. Chaque appel réinitialise la ligne de temps et l'animation repart sans cesse du début.