XGRIDSDocumentation
  • 简体中文
  • English
  • 繁體中文
  • 日本語
  • Deutsch
  • Español
  • Italiano
  • Français
  • Русский
  • 简体中文
  • English
  • 繁體中文
  • 日本語
  • Deutsch
  • Español
  • Italiano
  • Français
  • Русский
  • Lixel CyberColor

    • LCC Studio

      • Prise en main
      • Version et mises à jour
      • Téléchargement et installation
      • Aperçu de l’interface et navigation
      • Avant la reconstruction
      • Reconstruction du modèle
      • Reconstruction d’un modèle unique
      • Fusion cartographique
      • Fusion aérienne-terrestre
      • Reconstruction aérienne
      • Mes modèles
      • Autres fonctionnalités
      • Paramètres et compte
      • Convertisseur
      • Reconstruction vidéo
      • Questions fréquentes
    • LCC Scene Editor

      • Version et mises à jour
      • Compte et connexion
      • Présentation du produit et accueil
      • Interface de l’éditeur
      • Modes de navigation de scène
      • Fichier
      • Paramètres
      • Opérations d’édition
      • Fenêtre
      • Barre d’outils globale
      • Ressources et propriétés
      • Barre d’outils gauche
      • Points de vue
      • Portail
      • Skybox
      • Annotations
      • Mesure
      • Parcours
      • Rapport de scène
      • 3D Layout
      • Mini-carte
      • Mode Prévisualisation, Viewer
      • Aide
      • FAQ
      • Point d’apparition
    • LCC Model Editor

      • Version et mises à jour
      • Guide de l’utilisateur
      • Aperçu et interface
      • Opérations sur les fichiers
      • Sélecteurs
      • Modification des modèles
      • Mesure
      • Réglage des couleurs
      • Gestion des ressources
      • Paramètres et aide
      • Questions fréquentes
  • Plugin & SDK

    • Unreal

      • Introduction
      • Démarrage rapide - Windows
      • Démarrage rapide - Linux
      • Démarrage rapide - Quest3
      • Éditions et licences
      • Rendu
      • Rastérisation Tiled (expérimental)
      • Réglages visuels
      • Normales et éclairage
      • Édition de scène
      • Paramètres de performance
      • Guide d'optimisation des performances
      • Intégration avec les plugins tiers et moteur
      • Maillage proxy
      • Animation de chargement
      • Collision
      • Prise en charge du système de navigation
      • Prise en charge de l'eau à couche unique
      • Localisation
      • Questions fréquentes
      • Dépannage
      • Journaux et diagnostics
      • Nous contacter
      • Bonnes pratiques

        • Rééclairer un 3DGS avec un maillage LixelStudio
      • Référence API

        • ALCCActorBase
        • ULCCComponentBase
        • ULCCComponent
        • ULCC2Component
        • Actors SOG / SPZ / PLY
        • ALCC2ProxyMesh
        • ALCCClippingVolume
        • ALCCSectionPlane
        • ALCCLoadVolume
        • ULCCUtilLibrary
        • Enums
        • Structs
      • Journal des modifications

        • v3.4.0
        • v3.3.1
        • v3.0.0
        • v2.2.1
        • v1.0.0
        • v0.9.0
        • v0.8.0
        • v0.7.1
        • v0.6.1
        • v0.5.2
        • v0.4.1
        • v0.4.0
        • v0.3.0
        • v0.0.5
        • v0.0.4
        • v0.0.3
        • v0.0.2
        • v0.0.1

Paramètres de performance 3DGS en détail

Ce document décrit un par un le rôle de chaque paramètre, ses valeurs et l'effet réel d'un ajustement ; il sert à consulter la signification d'un paramètre isolé. Pour la démarche pas à pas permettant de localiser un goulot d'étranglement et d'optimiser, voir Guide d'optimisation des performances.

Le tableau placé sous le titre de chaque paramètre indique le groupe auquel il appartient, sa plage de valeurs, sa valeur par défaut, la pipeline concernée et sa prise d'effet. Quand la pipeline indiquée est « LCC » ou « LCC2 », le paramètre n'agit que sur cette pipeline ; les paramètres marqués « Commun » fonctionnent sur les deux. Pour la notion de pipeline, voir Introduction.

Paramètres du panneau Actor

Ils se trouvent dans la catégorie Performance du panneau Details de l'Actor et sont regroupés par portée :

  • Groupe Base : commun aux deux pipelines, présent sur tous les LCC Actors
  • Groupe propre à une pipeline : affiché uniquement sur les Actors de la pipeline correspondante, le nom du groupe étant celui de la pipeline. Dans la version actuelle, seule la pipeline LCC possède un groupe propre (nommé LCC) ; les Actors de la pipeline LCC2 n'affichent que le groupe Base
Paramètres du groupe Base sous la catégorie Performance

Groupe Base : paramètres de performance communs aux deux pipelines

Paramètres du groupe LCC sous la catégorie Performance

Groupe LCC : seuls les Actors de la pipeline LCC affichent ce groupe

Note : chaque paramètre de la catégorie Performance possède une case à cocher sur sa gauche. Tant que la case n'est pas cochée, le paramètre utilise la valeur par défaut intégrée au plugin et la valeur saisie n'a aucun effet. Quand un ajustement ne change rien, vérifiez d'abord que la case est bien cochée.

Max Distance

GroupePlageValeur par défautPipelinePrise d'effet
BaseTout entier positif300CommunImmédiate

Distance de rendu maximale, en mètres. Les nœuds au-delà de cette distance ne sont ni rendus ni chargés. C'est le paramètre au bénéfice le plus direct : le baisser réduit en même temps le coût de traversal, de chargement, d'upload et de rendu.

Le baisser augmente nettement la fréquence d'images et réduit l'occupation mémoire et mémoire vidéo, au prix de la disparition du contenu lointain et d'une coupure nette à la limite. À lire avec Range For Level : si la distance maximale est inférieure à la distance d'un Level donné, ce Level et tous les plus éloignés ne sont jamais utilisés.

Max Splat Num

GroupePlageValeur par défautPipelinePrise d'effet
Base0 ~ 10000 (unité : 10 000)3000CommunImmédiate

Nombre maximal de points rendus par image. Après le traversal, les nœuds sont écartés du plus lointain au plus proche jusqu'à ce que le nombre total de points rentre dans cette limite. C'est une barrière stricte : quelle que soit la quantité de contenu visible, le volume rendu par image ne dépasse jamais cette valeur.

Le baisser plafonne la charge de travail et évite les chutes de fréquence d'images dans les vues dégagées, au prix de l'abandon des nœuds lointains, si bien qu'un arrière-plan manquant peut apparaître pendant les rotations de vue. Les valeurs trop grandes sont automatiquement ramenées au volume réellement rendable en une image.

Level Factor

GroupePlageValeur par défautPipelinePrise d'effet
Base0.01 ~ 201CommunImmédiate

Facteur d'échelle de la sélection de Level, qui contrôle « à partir de quelle distance la précision commence à baisser ». Les deux pipelines l'implémentent différemment : la pipeline LCC l'utilise pour mettre à l'échelle la table de distances globale Range For Level, et la pipeline LCC2 pour mettre à l'échelle le seuil d'erreur en espace écran, avec un effet de même sens.

Au-dessus de 1, le passage aux Levels de précision plus basse est plus précoce, ce qui réduit les détails et améliore les performances ; en dessous de 1, la précision baisse plus tard, ce qui donne une image plus nette à un coût plus élevé. Gardez la valeur 1 et ne l'augmentez par petits pas qu'en cas de réelle pression sur les performances.

Start Level

GroupePlageValeur par défautPipelinePrise d'effet
Base0 ~ 200CommunImmédiate

Level de départ, qui limite la précision la plus élevée utilisable. La valeur par défaut 0 autorise le Level de précision maximale.

À 1 ou plus, le Level le plus fin n'est jamais chargé, même de très près, donc le contenu proche devient plus flou tandis que le volume chargé et l'occupation de la mémoire vidéo baissent nettement. Envisagez de l'augmenter sur les appareils d'entrée de gamme ou sur mobile.

End Level

GroupePlageValeur par défautPipelinePrise d'effet
Base0 ~ 2020CommunImmédiate

Level de fin, qui limite le Level le plus grossier utilisable. La valeur par défaut 20 n'applique aucune limite, donc le Level le plus grossier présent dans les données peut être utilisé.

Le baisser empêche l'utilisation des Levels plus grossiers présents dans les données, donc le contenu lointain ne peut rester qu'à End Level. Aucun trou n'apparaît dans l'image, mais plus de points sont rendus que nécessaire et les performances baissent au contraire. Ce n'est donc pas un moyen d'accélérer les choses, et il reste normalement à la valeur par défaut 20.

Max Load Collision Distance

GroupePlageValeur par défautPipelinePrise d'effet
BaseTout entier positif300CommunImmédiate

Distance de chargement maximale des données de collision, en mètres. N'agit qu'une fois la collision activée.

Les deux pipelines chargent les données de collision par blocs : seuls les blocs de collision situés dans cette distance autour de la caméra sont chargés, et ils sont échangés dynamiquement au fil des déplacements de la caméra. Cette valeur détermine donc la quantité de données de collision résidentes à un instant donné.

La baisser réduit directement l'occupation mémoire Collision Data Usage et le temps Update Collision, au prix d'une absence de collision au loin.

Avec le système de navigation, il faut généralement l'augmenter pour que la collision de la zone cible soit entièrement chargée en une passe. Sinon, la collision se met à jour en permanence au fil des déplacements de la caméra à l'exécution, ce qui déclenche continuellement des reconstructions des données de navigation et provoque des saccades marquées. Voir Prise en charge du système de navigation.

Use Full Load

GroupePlageValeur par défautPipelinePrise d'effet
BaseActivé / DésactivéActivéCommunRecharger les données

Autorise ou non le rendu à chargement complet. Quand l'option est activée, si le nombre de points de Level 0 ne dépasse pas Full Load Splat Number, l'intégralité du jeu de données est chargée d'un coup et reste résidente en mémoire vidéo, en évitant le traversal et l'upload par image ; sinon, le comportement revient au chargement à la demande.

L'activer donne une fréquence d'images plus stable dans les petites scènes, sans bords de nœuds ni apparition brusque de détails, au prix de l'intégralité du jeu de données résidente en mémoire vidéo. La désactiver charge toujours à la demande.

Le comportement de la mémoire vidéo après désactivation diffère entre les pipelines :

  • La pipeline LCC alloue la mémoire vidéo par nœud, donc l'occupation varie avec l'étendue visible
  • La pipeline LCC2 préalloue son buffer de mémoire vidéo selon le budget, donc l'occupation ne varie pas avec l'étendue visible ; seule la quantité de données réellement remplies dans le buffer change

Voir Rendu.

Full Load Splat Number

GroupePlageValeur par défautPipelinePrise d'effet
BaseTout entier positif (unité : 10 000)1500CommunRecharger les données

Limite supérieure du nombre de points de Level 0 autorisant le rendu à chargement complet.

L'augmenter permet à de plus grandes scènes d'utiliser le rendu à chargement complet, il faut donc vérifier que la mémoire vidéo est suffisante. Le baisser fait revenir davantage de scènes au chargement à la demande.

Sort Factor

GroupePlageValeur par défautPipelinePrise d'effet
LCC0.2 ~ 51LCC uniquementImmédiate

Facteur d'échelle de la fréquence de tri. Il s'applique à la table globale Sort Frequency For Level et contrôle la fréquence à laquelle les nœuds de chaque Level sont retriés.

L'augmenter réduit le nombre de tris et améliore les performances, mais l'ordre de recouvrement des éléments translucides se met à jour plus tard lors d'un changement de vue, ce qui peut provoquer de brèves erreurs d'interpénétration. Le baisser trie plus rapidement à un coût plus élevé. Gardez la valeur 1.

Add Extra Preload Nodes

GroupePlageValeur par défautPipelinePrise d'effet
LCCActivé / DésactivéActivéLCC uniquementImmédiate

Ajoute ou non des nœuds de préchargement supplémentaires à la file de chargement. Quand l'option est activée, certains nœuds situés au-delà du bord du frustum sont préchargés.

L'activer atténue les trous au bord de l'écran pendant les rotations rapides de vue, au prix d'un plus grand nombre de nœuds à rendre. La désactiver réduit le nombre de nœuds mais rend les trous en bordure plus probables lors des rotations rapides.

Rasterizer

GroupePlageValeur par défautPipelinePrise d'effet
XGridsPipeline / TiledPipelineLCC2 uniquementImmédiate

Méthode de rastérisation. Celle-ci n'est pas dans la catégorie Performance : elle se trouve dans la catégorie XGrids du panneau Details, juste après Render Mode, et n'apparaît que lorsque Render Mode vaut 3DGS.

La régler sur Tiled emploie le chemin de calcul par tuiles écran propre au plugin, avec un résultat visuel identique à Pipeline. Le gain de fréquence d'images est net sur les images à forte densité de splats et à fort recouvrement écran, alors que les images éparses ou les goulots d'étranglement situés hors de l'étape de rendu peuvent ne montrer aucun changement : mesurez pour confirmer.

Tiled est expérimental et nécessite une licence Pro ; sans licence, le mode revient à Pipeline. Voir Rastérisation Tiled.

Configuration globale de ProjectSettings

Ces réglages se trouvent sous ProjectSettings > Plugins > LCC4Unreal. Ils s'appliquent à tous les LCC Actors de la scène et ne peuvent pas être configurés par Actor.

Réglages globaux du projet LCC4Unreal

Configuration des paramètres globaux de LCC4Unreal dans ProjectSettings

Language

CatégoriePlageValeur par défautPipelinePrise d'effet
GeneralFollow Editor / Always EnglishFollow EditorCommunImmédiate

Langue de l'interface du plugin. Follow Editor suit le réglage de langue de l'éditeur, Always English force l'anglais. Voir Localisation.

AutoExposure Enable

CatégoriePlageValeur par défautPipelinePrise d'effet
LCCActivé / DésactivéDésactivéCommunRedémarrage de l'éditeur requis

Active ou non l'exposition automatique. Désactivée par défaut, car l'exposition automatique fait fluctuer la luminosité du 3DGS selon le contenu visible. Une fois activée, la luminosité de l'image s'ajuste automatiquement au fil des déplacements de la caméra.

SceneCaptureComponent Support

CatégoriePlageValeur par défautPipelinePrise d'effet
LCCActivé / DésactivéActivéLCC uniquementImmédiate

Autorise ou non SceneCapture à rendre le contenu LCC.

L'activer rend le 3DGS visible dans SceneCapture, au prix de chaque Capture comptée comme une vue indépendante, ce qui augmente le coût de traversal. Désactivez-le pour économiser ce coût dans les projets qui n'utilisent pas SceneCapture.

SingleLayerWater Support

CatégoriePlageValeur par défautPipelinePrise d'effet
LCCActivé / DésactivéDésactivéLCC2 uniquementRedémarrage de l'éditeur requis

À activer quand le 3DGS est occulté par un matériau d'eau à couche unique.

L'activer fait s'afficher correctement le 3DGS sur la surface de l'eau, au prix de la perte de la qualité d'ombre des virtual shadow maps sur les pixels d'eau. Cette option écrit r.Water.SingleLayer.DepthPrepass dans le DefaultEngine.ini du projet. Voir Prise en charge de l'eau à couche unique.

Splat Number For Discard Per Node

CatégoriePlageValeur par défautPipelinePrise d'effet
LCCTout entier positif5LCC uniquementRecharger les données

Écarte les données d'un nœud dont le nombre de points est inférieur à cette valeur, décision prise pendant l'analyse de index.bin lors de la construction des nœuds. Certains jeux de données contiennent de nombreux nœuds fragmentaires ne portant qu'un ou deux points, et le coût d'ordonnancement de ces nœuds dépasse largement leur valeur de rendu.

L'augmenter réduit le nombre total de nœuds et abaisse le coût de traversal et de chargement, au prix de plus de points écartés, si bien que les zones éparses peuvent présenter des trous.

Méthodes d'anticrénelage

CatégoriePlageValeur par défautPipelinePrise d'effet
AntiAliasingMéthodes d'anticrénelage prises en charge par le moteurVoir le tableau ci-dessousCommunImmédiate

L'anticrénelage supprime les marches d'escalier au bord des objets. Les maillages classiques ont des bords géométriques bien définis où le crénelage est visible et nécessite un traitement ; le 3DGS est composé de nombreux splats semi-transparents superposés, donc ses bords sont déjà des dégradés et le crénelage n'est pas visible.

Les quatre réglages correspondent aux modes 3DGS et nuage de points de chaque pipeline, et le plugin les applique automatiquement dès que bAffectAntiAliasingMethod est activé sur l'Actor.

RéglageValeur par défautS'applique à
LCC1 Splat Anti-aliasing MethodFXAAMode 3DGS de la pipeline LCC (sans profondeur)
LCC2 Splat Anti-aliasing MethodTSRMode 3DGS de la pipeline LCC2 (avec profondeur)
LCC1 Point Cloud Anti-aliasing MethodMSAAMode nuage de points de la pipeline LCC
LCC2 Point Cloud Anti-aliasing MethodTSRMode nuage de points de la pipeline LCC2

La pipeline LCC évite TSR / TAA par défaut, car ces deux méthodes produisent des images rémanentes pendant les déplacements de caméra quand l'information de profondeur est absente.

Le coût GPU de l'anticrénelage n'est pas faible, et TSR est particulièrement notable. Quand la scène ne contient que du 3DGS et aucun maillage classique, réglez l'option correspondante sur None pour désactiver l'anticrénelage ; la qualité d'image perd généralement très peu tandis que le gain de fréquence d'images est substantiel. Dans les scènes qui mélangent des modèles classiques, de l'UI ou des filaires, la désactivation rend les bords de ces contenus visiblement crénelés.

Mesurez la différence de coût réelle entre les méthodes avec ProfileGPU sur la scène cible, car l'écart varie beaucoup selon les résolutions et le matériel.

Note : quand des Actors des deux pipelines coexistent dans la scène, la méthode réellement appliquée dépend de l'ordre d'exécution ; configurez-les manuellement à la même valeur. Voir Réglages visuels.

Enable Post Process

CatégoriePlageValeur par défautPipelinePrise d'effet
RenderingActivé / DésactivéActivéCommunImmédiate

Les pixels LCC participent ou non à la pipeline de post-traitement du moteur.

Quand l'option est activée, le 3DGS reçoit le tone mapping, le Bloom, l'exposition et les autres post-traitements en même temps que les objets classiques de la scène, pour un rendu homogène. Quand elle est désactivée, le 3DGS conserve ses couleurs d'origine et n'est pas affecté par le tone mapping ni par les étapes suivantes. La désactiver nécessite la sortie du canal alpha dans le moteur. Voir Réglages visuels.

Apply Tonemap Inverse

CatégoriePlageValeur par défautPipelinePrise d'effet
RenderingActivé / DésactivéDésactivéCommunImmédiate

Applique ou non FilmToneMapInverse pendant la conversion d'espace colorimétrique.

L'activer annule à l'avance le tone mapping du moteur, si bien que l'image finale restitue le contraste et les couleurs d'origine des données. La désactiver fait passer le 3DGS et les objets classiques par le même tone mapping.

Quad Extent Threshold

CatégoriePlageValeur par défautPipelinePrise d'effet
Rendering0.001 ~ 0.10.006LCC2 uniquementImmédiate

Contrôle la distance sur laquelle le quad de splat s'étend vers l'extérieur depuis le centre de la gaussienne. Chaque splat est rastérisé en un quad, et un quad plus grand couvre plus de pixels.

L'augmenter rend les quads plus serrés, réduit l'overdraw et abaisse le coût de remplissage des pixels, mais il peut couper les bords des splats semi-transparents, ce qui se traduit par des contours plus durs ou des bords manquants. Le baisser conserve des bords plus complets à un coût de remplissage plus élevé.

Small Splat Threshold

CatégoriePlageValeur par défautPipelinePrise d'effet
Rendering0.0 ~ 4.00 (désactivé)LCC2 uniquementImmédiate

Les splats dont la taille à l'écran est inférieure à cette valeur en pixels sont réduits à un seul pixel et sautent le calcul SH.

L'augmenter saute le calcul d'ombrage de nombreux petits splats lointains et abaisse nettement le coût GPU, au prix de la perte de la variation de couleur liée au point de vue en arrière-plan, ce qui peut se traduire par un aspect granuleux ou un léger scintillement.

Frustum Cull Margin

CatégoriePlageValeur par défautPipelinePrise d'effet
Rendering1.0 ~ 2.01.2LCC2 uniquementImmédiate

Facteur de marge du culling de frustum par splat.

Au-dessus de 1.0, le frustum s'étend vers l'extérieur, ce qui évite que les splats au bord de l'écran apparaissent brusquement pendant les rotations de caméra ; une valeur plus grande conserve plus de splats en bordure à un coût légèrement supérieur. À 1.0, le culling suit strictement le frustum et le bord peut présenter des apparitions brusques.

Max CPU Usage Percetage For Free

CatégoriePlageValeur par défautPipelinePrise d'effet
Usage50 ~ 10090CommunImmédiate

La libération de nœuds est déclenchée quand l'occupation mémoire atteint ce pourcentage.

Le baisser commence à libérer plus tôt et garde l'occupation mémoire plus prudente, mais les échanges deviennent plus fréquents. L'augmenter consomme plus de mémoire et risque un plantage à l'approche de la limite système.

CPU Release Percetage

CatégoriePlageValeur par défautPipelinePrise d'effet
Usage10 ~ 10030CommunImmédiate

Pourcentage de données nettoyées à chaque déclenchement de libération.

L'augmenter libère plus par déclenchement et déclenche moins souvent, mais les données libérées doivent être rechargées, ce qui provoque facilement une saccade ponctuelle. La valeur 100 n'est pas recommandée.

Max GPU Usage Percetage For Free

CatégoriePlageValeur par défautPipelinePrise d'effet
Usage50 ~ 10080CommunImmédiate

La libération est déclenchée quand l'occupation de la mémoire vidéo atteint ce pourcentage. Lors de la libération, les nœuds sont classés selon une combinaison de date du dernier rendu, fréquence d'accès, taille des données et Level, et les moins récemment utilisés sont libérés en premier, tandis que les nœuds de Level élevé sont protégés.

Le baisser est plus sûr : dès que la mémoire vidéo disponible sur la carte est dépassée, le pilote transfère les données vers la mémoire système, et la baisse de fréquence d'images est bien pire que les échanges.

GPU Release Percetage

CatégoriePlageValeur par défautPipelinePrise d'effet
Usage10 ~ 10030CommunImmédiate

Pourcentage de données en mémoire vidéo libérées à chaque déclenchement. Les critères de classement sont les mêmes que pour CPU Release Percetage.

LCC2 GPU Memory Budget

CatégoriePlageValeur par défautPipelinePrise d'effet
Usage2048 ~ 81922048LCC2 uniquementRedémarrage de l'éditeur requis

Budget de mémoire vidéo pour les données de splats d'un seul modèle .lcc2. Les buffers de tri ne sont pas comptés dans ce budget ; chaque splat résident coûte 16 octets supplémentaires par vue.

L'augmenter permet à plus de données de rester résidentes en mémoire vidéo en même temps et réduit les trous et le flou provoqués par les échanges. Mais le budget n'est que la limite supérieure demandée par le plugin, et dépasser la mémoire vidéo réellement disponible sur la carte rend les choses plus lentes au contraire. Le budget délimite la fenêtre de résidence du chargement en streaming et ne s'applique pas aux formats à fichier unique (.sog / .spz / .ply), qui doivent rester entièrement résidents ; le modifier ne change donc pas le volume chargeable d'un fichier unique. Voir Rendu.

Range For Level

CatégoriePlageValeur par défautPipelinePrise d'effet
LevelTableau fixe de 11 flottants15, 50, 80, 110, 140, 170, 190, 220, 250, 280, 350LCC uniquementImmédiate

Plage de distance de chaque Level, en mètres. Le Nième élément est la limite de distance à laquelle le Level N prend effet.

C'est la table de référence du LOD, et la modifier affecte directement tous les LCC Actors. Normalement, elle n'est pas éditée directement : utilisez plutôt Level Factor sur l'Actor pour la mettre à l'échelle dans son ensemble. Attention à la relation entre la distance de rendu maximale et cette table : si la distance maximale est inférieure à l'une de ces valeurs, le Level correspondant n'est jamais utilisé.

Sort Frequency For Level

CatégoriePlageValeur par défautPipelinePrise d'effet
LevelTableau fixe de 11 flottants5, 15, 25, 40, 50, 70, 90, 110, 130, 150, 170LCC uniquementImmédiate

Fréquence de tri de chaque Level. Plus le Level est élevé et la distance grande, plus l'intervalle entre deux tris est long.

Augmenter les valeurs dans leur ensemble réduit le coût de tri, au prix d'une mise à jour plus tardive de l'ordre des éléments translucides pour les nœuds lointains. Normalement, utilisez Sort Factor sur l'Actor pour la mettre à l'échelle plutôt que d'éditer cette table directement.

Note : la pipeline LCC2 sélectionne les Levels par erreur en espace écran et n'utilise pas Range For Level ; son tri est un tri global par splat au sein du Buffer unique et n'utilise pas Sort Frequency For Level.

Default Traversal Type

CatégoriePlageValeur par défautPipelinePrise d'effet
TraversalSector / CircleSectorCommunRedémarrage de l'éditeur requis

Mode de traversal des nœuds. Sector filtre les nœuds visibles par le frustum, Circle filtre par distance selon un cercle.

Sector ne traite que les nœuds situés dans le champ de vision à un coût plus faible, et c'est la valeur recommandée. Circle prend en compte tous les nœuds d'un anneau autour de la caméra à un coût plus élevé, mais les nœuds n'échouent jamais à se charger à temps du seul fait qu'ils viennent d'entrer dans le frustum. Essayez Circle dans les scènes à plusieurs viewports ou à rotation rapide.

Réglages des pools de threads

CatégoriePlageValeur par défautPipelinePrise d'effet
Loader / Traversal / Sort / ExporterVoir le tableau ci-dessousVoir le tableau ci-dessousLCC uniquementRedémarrage de l'éditeur requis

Ces pools de threads sont utilisés par les modules de chargement, de traversal et de tri de la pipeline LCC. La pipeline LCC2 charge les données via le pool de threads du moteur et n'est pas affectée par ces réglages ; l'exception est le chargement des données de collision, où les deux pipelines partagent la configuration des threads Loader.

Les pools de threads sont créés à partir de la configuration lors de l'initialisation du module, donc un redémarrage de l'éditeur est requis après modification.

Chacun des quatre types de threads possède un réglage de « nombre maximal de threads » et de « nombre de threads précréés » :

RéglagePlageValeur par défautUsage
Max Loader Thread Number5 ~ 10020Chargement des données
Pre-Create Loader Thread Number0 ~ 1005Threads de chargement précréés
Max Traversal Thread Number5 ~ 10020Traversal des nœuds
Pre-Create Traversal Thread Number0 ~ 1005Threads de traversal précréés
Max Sort Thread Number5 ~ 10020Tri
Pre-Create Sort Thread Number0 ~ 1005Threads de tri précréés
Max Exporter Thread Number5 ~ 10020Export des données, sans lien avec le rendu à l'exécution
Pre-Create Exporter Thread Number0 ~ 1005Threads d'export précréés

Plus de threads n'est pas toujours mieux. Quand le goulot d'étranglement est l'IO disque, ajouter des threads de chargement n'aide pas et ne fait qu'accroître la contention. N'envisagez de relever une limite que si stat xgrids montre que la file du thread correspondant s'accumule en continu et que le CPU a encore de la marge.

Les threads précréés évitent le coût de création de threads à l'exécution, et augmenter leur nombre réduit la latence au démarrage du chargement d'une scène.

Statistiques

Ouvrez le panneau de statistiques avec la commande console stat xgrids, ou cliquez sur Stats dans la catégorie Developer du panneau Actor.

Panneau de statistiques de performance en temps réel de stat xgrids

Consultation des statistiques de performance en temps réel avec stat xgrids

Le panneau comporte trois sections :

SectionColonnesSignification
Cycle counters (flat)CallCount, InclusiveAvg, InclusiveMax, ExclusiveAvg, ExclusiveMaxÉléments de temps. Inclusive comprend les appels enfants, Exclusive ne compte que l'élément lui-même
Memory CountersUsedMax, Mem%, MemPool, Pool CapacityOccupation mémoire et mémoire vidéo, où Physical désigne le pool de mémoire physique
CountersAverage, Max, MinÉléments de comptage

Cycle counters (éléments de temps)

MétriqueSignification et usage
Update CollisionTemps de mise à jour des données de collision. N'a de valeur qu'une fois la collision activée ; une valeur élevée signifie que la collision est reconstruite fréquemment, il faut donc réduire la distance de chargement de la collision
Update Camera InfoTemps de collecte des informations de caméra à chaque image. Plus il y a de vues, plus cette valeur monte ; à comparer avec Camera Num
Component UpdateTemps de mise à jour des composants à chaque image, un coût sur le thread Game. Il s'accumule quand plusieurs LCC Actors partagent une scène
Get Physics Trimesh DataTemps consacré à fournir les maillages triangulaires de collision au système physique. Il n'apparaît que pendant le baking physique et constitue la source directe des saccades de collision
Get From CacheTemps de récupération des données lors d'un succès de cache. C'est le chemin rapide comparé aux lectures disque, donc une part élevée est bon signe

Memory Counters (mémoire et mémoire vidéo)

MétriqueSignification et usage
CPU UsageMémoire système utilisée par LCC. À lire avec CPU Occupy Percentage pour juger de la proximité du seuil de libération
Collision Data UsageMémoire utilisée par les données de collision. Plus la distance de collision est grande, plus cette valeur monte, et c'est le gain le plus direct à la désactivation de la collision
Position Data(For Raycast) UsageMémoire des données de position utilisées pour les tests de rayon. Elle vaut 0 quand aucun test de rayon n'est effectué
GPU UsageMémoire vidéo utilisée par LCC. Elle est mesurée différemment de GPU Occupy Percentage

Counters (éléments de comptage)

MétriqueSignification et usage
Total SplatsNombre total de points du jeu de données, une valeur fixe
Level0 SplatsNombre de points du Level 0, qui décide si les critères du rendu à chargement complet sont remplis
Current Render Main SplatsNombre de points principaux rendus dans l'image courante. À comparer avec Max Splat Num pour savoir si la limite de points a été atteinte
Current Render NodesNombre de nœuds rendus dans l'image courante
Total NodesNombre total de nœuds du jeu de données, une valeur fixe
Released GPU Node NumNombre de nœuds libérés de la mémoire vidéo. Une croissance continue signifie des échanges fréquents, ce qui indique généralement un budget de mémoire vidéo insuffisant
Released CPU Node NumNombre de nœuds libérés de la mémoire. Jugé de la même manière que ci-dessus
GPU Occupy PercentagePourcentage d'occupation de la mémoire vidéo. La libération est sur le point de se déclencher quand il approche du seuil Max GPU Usage
CPU Occupy PercentagePourcentage d'occupation de la mémoire
Loader Thread NumNombre de threads de chargement. N'envisagez de relever la limite que si la file s'accumule et que le CPU a encore de la marge
Pre-Loader Thread NumNombre de threads de préchargement
Collision Loader Thread NumNombre de threads de chargement de collision
Sort Thread NumNombre de threads de tri
Traversal Thread NumNombre de threads de traversal
Exporter Thread NumNombre de threads d'export, sans lien avec le rendu à l'exécution
Camera NumNombre de caméras participant aux mises à jour
Camera Num(Render)Nombre de vues participant au rendu, la base directe pour juger du coût de SceneCapture, de l'écran partagé et de nDisplay
Node Vector Pool NumNombre d'objets dans le pool de vecteurs de nœuds, une statistique interne de réutilisation d'objets
Valid Node NumNombre de nœuds valides, une statistique d'état interne

Outils de débogage

OutilDescription
Debug Node BoundVisualise les limites des nœuds de l'octree, la couleur indiquant le Level (rouge pour la précision la plus élevée, blanc pour la plus basse). Utilisez-le pour vérifier que les paramètres de LOD prennent effet comme prévu
StatsAffiche les statistiques de rendu en temps réel, équivalent à stat xgrids
FreezeRenderingGèle l'état de rendu courant. Une fois gelé, déplacer la caméra ne déclenche plus de traversal, ce qui permet d'inspecter quels nœuds l'image courante a réellement soumis
Précédent
Édition de scène
Suivant
Guide d'optimisation des performances