Enums : référence des types énumérés
Types énumérés exposés par le module LCC4UnrealRuntime.
| Module | LCC4UnrealRuntime |
| En-tête | Core/LCCEnum.h |
#include "Core/LCCEnum.h"
Les énumérations portant BlueprintType sont directement utilisables dans Blueprint : elles peuvent alimenter un node Switch et servir de type de variable.
Rendu
ERenderMode
Mode de rendu. Utilisé par ULCCComponentBase::RenderMode.
| Valeur | Affichage dans le panneau | Description |
|---|---|---|
Splatting | 3DGS | Rendu en 3D Gaussian Splatting, qualité d'image élevée, coût important |
PointCloud | Point Cloud | Rendu en nuage de points, qualité d'image faible, coût réduit |
Passer au nuage de points réduit fortement le coût, ce qui convient aux vues de dessus, aux minicartes et aux plans lointains, où le détail n'est pas nécessaire. En mode nuage de points, les paramètres propres au 3DGS (harmoniques sphériques, SplatScale, GlobalAlpha) restent sans effet.
Interfaces associées : SetRenderMode, ToggleRenderMode
ELoadMode
Mode de filtrage au chargement. Utilisé par ULCCComponentBase::LoadMode.
| Valeur | Affichage dans le panneau | Description |
|---|---|---|
Both | Both | Rend la partie principale et l'environnement |
OnlyMain | OnlyMain | Ne rend que la partie principale |
OnlyEnvironment | OnlyEnvironment | Ne rend que l'environnement |
None | None | Ne rend rien |
La partie principale est la zone centrale capturée, l'environnement est le complément périphérique. None équivaut à masquer temporairement tout en conservant les données en mémoire, ce qui rend le retour à l'affichage beaucoup plus rapide qu'un rechargement.
Interface associée : SetLoadMode
ELightMode
Mode d'éclairage. Utilisé par ULCCComponentBase::LightMode.
| Valeur | Affichage dans le panneau | Description |
|---|---|---|
Unlit | Unlit | N'est pas affecté par l'éclairage de la scène, affiche les couleurs d'origine de la capture |
Lit | Lit | Participe à l'éclairage de la scène et peut interagir avec les lumières dynamiques |
Les données capturées ont déjà l'éclairage du site intégré : passer à Lit en ajoute une couche supplémentaire et surexpose facilement l'image. Sur LCC2, il faut l'accompagner de LightingScale pour abaisser la luminosité d'origine. Effectif en mode 3DGS uniquement.
Interfaces associées : SetLightMode, ToggleLightMode
EShadowMode
Mode d'ombres.
| Valeur | Affichage dans le panneau | Description |
|---|---|---|
None | None | Ne reçoit pas les ombres |
Static | Static | Reçoit les ombres statiques |
Dynamic | Dynamic | Reçoit les ombres dynamiques |
EColorationMode
Mode de coloration.
Manière de colorer les données en mode de rendu nuage de points. Utilisé par ULCCComponentBase::ColorationMode.
| Valeur | Affichage dans le panneau | Description |
|---|---|---|
Elevation | Evelation | Colore selon l'altitude, en remplaçant les couleurs d'origine |
Data | Data | Utilise le RGB fourni par les données |
Elevation s'accompagne de ElevationColorBottom et ElevationColorTop pour visualiser les hauteurs de terrain ; Data restitue les couleurs réelles des objets. Effectif uniquement lorsque le mode de rendu est le nuage de points, voir Réglages visuels - Nuage de points.
ELCC2NormalGenerationMode
Mode de génération des normales LCC2. Utilisé par ULCC2Component::NormalMode.
Les données 3DGS n'ont pas de normales géométriques propres, alors que l'éclairage en a besoin. Les trois premiers modes construisent des normales par approximation, seul ProxyMesh fournit de vraies normales.
| Valeur | Affichage dans le panneau | Modelé réel | Description |
|---|---|---|---|
Fixed | Fixed | Non | L'ensemble du 3DGS partage une normale monde indiquée par l'utilisateur, orientée vers le haut par défaut. La luminosité de l'ensemble vaut dot(normale, direction de la lumière) |
ViewFacing | View Facing | Non | L'ensemble s'oriente vers la caméra, l'éclairage est uniforme |
Hemispherical | Hemispherical | Non | Normales indépendantes de la caméra, obtenues en projetant la position à l'écran sur un hémisphère monde fixe |
ProxyMesh | Proxy Mesh | Oui | Un ALCC2ProxyMesh de la scène fournit la profondeur et les normales réelles, le 3DGS n'apporte que la couleur |
Compromis de chaque mode :
| Mode | Avantages | Inconvénients |
|---|---|---|
Fixed | Aucune bande lumineuse diagonale, parfaitement stable lors des déplacements de caméra, coût minimal | Aucun modelé des formes ; l'ensemble s'assombrit quand la lumière vient de l'arrière de la normale |
ViewFacing | Aucune configuration nécessaire, aucune bande lumineuse diagonale | Aucun modelé des formes ; la luminosité d'ensemble dérive quand la caméra pivote |
Hemispherical | Aucune bande lumineuse diagonale, stable lors des déplacements de caméra, transition la plus douce lors du passage du soleil | Le modelé n'est toujours pas réel ; nécessite le réglage de NormalPole et NormalHemiSpread |
ProxyMesh | Normales géométriques et profondeur réelles | Nécessite de fabriquer et de placer un maillage proxy correspondant ; nécessite une licence, et se replie sur Fixed sans licence |
Conseils de choix : Fixed par défaut ; Hemispherical pour une course du soleil fluide ; ProxyMesh pour un modelé réel des formes ; ViewFacing convient seulement pour évaluer rapidement un résultat.
Pages associées : ULCC2Component, ALCC2ProxyMesh
Découpe et coupe
EClipType
Direction de la découpe. Utilisée par ALCCClippingVolume::Mode.
| Valeur | Affichage dans le panneau | Description |
|---|---|---|
Inside | Inside | L'intérieur du volume est retiré |
Outside | Outside | L'extérieur du volume est retiré |
Inside sert à percer des ouvertures et à ouvrir une enveloppe ; Outside sert à ne conserver que la zone d'intérêt.
EClipVolumeType
Forme du volume de découpe. Utilisée par ALCCClippingVolume::VolumeType.
| Valeur | Description |
|---|---|
Box | Volume en boîte |
Sphere | Volume en sphère |
ESectionType
Direction de la coupe. Utilisée par ALCCSectionPlane::Mode.
| Valeur | Affichage dans le panneau | Description |
|---|---|---|
Upside | Upside | Ce qui est au-dessus du plan est retiré |
Downside | Downside | Ce qui est en dessous du plan est retiré |
Le haut et le bas s'entendent par rapport à l'orientation propre du plan, pas aux coordonnées du monde. Faire pivoter le plan de coupe permet d'obtenir une coupe dans n'importe quelle direction.
ELoadRegion
Région de chargement. Utilisée par ALCCLoadVolume::Mode.
| Valeur | Affichage dans le panneau | Description |
|---|---|---|
Inside | Inside | Ne charge que les données situées à l'intérieur du volume |
Outside | Outside | Ne charge que les données situées à l'extérieur du volume |
Différence avec EClipType : le choix porte ici sur la partie à charger, et non sur la partie à retirer. Les zones rejetées ne sont pas lues du tout, ce qui réduit le volume chargé et l'occupation de la mémoire vidéo. Le test se fait par nœud, la bordure est donc plus grossière que celle d'un volume de découpe.
ELoadVolumeType
Forme du volume de chargement. Utilisée par ALCCLoadVolume::VolumeType.
| Valeur | Description |
|---|---|
Box | Volume en boîte |
Sphere | Volume en sphère |
Pages associées : ALCCClippingVolume, ALCCSectionPlane, Volumes de chargement
Données et formats
ELCCVersion
Version des données.
| Valeur | Description |
|---|---|
LCC | Format LCC1 |
LCC2 | Format LCC2 |
Interface associée : ULCCComponentBase::GetLccVersion
EFileFormat
Format de fichier. Type de retour de ULCCUtilLibrary::DetermineFileFormat.
| Valeur | Extension correspondante |
|---|---|
None | Non reconnu, ou chemin inexistant |
LCC | .lcc |
Splats | .splats |
LAS | .las |
PLY | .ply |
Noter que la portée de reconnaissance de DetermineFileFormat est limitée : .lcc2, .sog et .spz renvoient tous None. Pour reconnaître ces formats, regarder directement l'extension, voir DetermineFileFormat.
EDataSourceType
Format de la source de données d'un arbre LCC2. Utilisé par FLCC2MetaInfo::SplatType.
| Valeur | Description |
|---|---|
SOG | Source de données .sog |
SPZ | Source de données .spz |
PLY | Source de données .ply |
C'est une énumération C++ ordinaire, sans marqueur UENUM, invisible depuis Blueprint.
EFileType
Type de contenu des données.
| Valeur | Affichage dans le panneau | Description |
|---|---|---|
Portable | Portable | Contient seulement le RGB, sans harmoniques sphériques |
Quality | Quality | Contient à la fois le RGB et les harmoniques sphériques |
Les données Portable n'ont pas d'harmoniques sphériques disponibles, bUseShcoef n'est alors pas modifiable. CanSetShcoef() ne fait en réalité que tester si le type est Quality.
ELCCSourceType
Source des données. Type de retour de ULCCUtilLibrary::DetermineSourceType.
| Valeur | Description |
|---|---|
Local | Fichier local |
Http | Adresse réseau |
ECollisionType
Format des données de collision. Type de retour de ULCCUtilLibrary::DetermineCollisionType.
| Valeur | Description |
|---|---|
None | Aucune donnée de collision |
Bin | Ancien format .bin |
Lci | Nouveau format .lci |
Ply | Collision par nuage de points .ply |
Lorsque None est renvoyé, activer bEnableCollision reste sans effet.
ELoadStatus
État du chargement.
| Valeur | Description |
|---|---|
Success | Réussi |
Failure | Échoué |
Progress | En cours |
Performance et ordonnancement
ETraversalType
Mode de traversal des nœuds. Utilisé par l'entrée Default Traversal Type des réglages du projet (Project Settings → Plugins → LCC4Unreal).
| Valeur | Affichage dans le panneau | Description |
|---|---|---|
Circle | Circle | Traversal circulaire centré sur la caméra, de rayon égal à la distance de rendu maximale |
Sector | Frustum | Traversal fondé sur le frustum de la caméra |
Frustum ne traite que les nœuds dans le champ de vision et se révèle généralement plus économe, mais les nœuds hors champ ne sont pas préchargés : un délai de complètement peut apparaître lors des rotations rapides du point de vue.
Noter que le nom de l'énumération est Sector, tandis que le panneau affiche Frustum.
ESortMethod
Méthode de tri de la translucidité. Utilisée par l'entrée Default Sort Method des réglages du projet.
| Valeur | Description |
|---|---|
GPU | Tri par le GPU |
CPU | Tri par le CPU |
Utiliser le GPU en général.
ESortMode
Ordre de tri.
| Valeur | Description |
|---|---|
Ascending | Croissant |
Descending | Décroissant |
EComputeType
Type de pipeline de calcul.
| Valeur | Description |
|---|---|
Compute | Compute sur la pipeline graphique |
AsyncCompute | Pipeline de Compute asynchrone |
L'implémentation actuelle utilise Compute ; AsyncCompute présente des problèmes de rendu et n'est pas encore activé.
Localisation
ELocale
Environnement linguistique. Type de retour de ULCCUtilLibrary::GetLocale.
| Valeur | Description |
|---|---|
EN_US | Anglais |
ZH_CN | Chinois simplifié |
ELanguagePreference
Préférence de langue de l'interface du plugin. Utilisée par l'entrée Language des réglages du projet.
| Valeur | Affichage dans le panneau | Description |
|---|---|---|
FollowEditor | Follow Editor | Suit le réglage de langue courant de l'éditeur |
AlwaysEnglish | Always English | Force l'anglais, indépendamment de la langue de l'éditeur |
Utiliser les énumérations dans Blueprint
Dans Blueprint, un node Switch permet de brancher selon une énumération :
[Get Render Mode]
Target = (LCC Component)
│ Return Value ──┐
▼ │
[Switch on ERenderMode] ◀┘
│ Splatting ──▶ (3DGS branch logic)
│ Point Cloud ─▶ (point cloud branch logic)
Une comparaison directe est également possible :
[Get Effective Normal Generation Mode]
│ Return Value ──┐
▼ │
[Equal (Enum)] ◀─────────┘
A = (Return Value)
B = Proxy Mesh
│
▼
[Branch]
Voir aussi
- ULCCComponentBase : utilisation de
ERenderMode,ELoadModeetELightMode - ULCC2Component : utilisation de
ELCC2NormalGenerationMode - ULCCUtilLibrary : les fonctions utilitaires qui renvoient les énumérations de format
- Structs : les structures qui utilisent ces énumérations