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

    • Produktübersicht
    • Grundlegende Bedienung
    • LCC Scan App verwenden
    • Wartung und Pflege
    • FAQ
  • Lixel K-Serie

    • Lixel K1

      • Produktübersicht
      • Grundlegende Bedienung
      • Geräteaktivierung und -verbindung
      • Scan-Workflow
      • Punktwolke mit absoluten Koordinaten erfassen
      • Kartenfusion
      • Empfehlungen zur Routenplanung für typische Szenen
      • Hinweise
      • FAQ
    • Lixel K2

      • Produktübersicht
      • Grundlegende Bedienung
      • Aktivierung und Verbindung
      • Scan-Workflow
      • Punktwolke mit absoluten Koordinaten erfassen
      • Kartenfusion
      • Empfehlungen zur Routenplanung für typische Szenen
      • Hinweise
      • FAQ
  • Lixel L-Serie

    • Lixel L2 Pro

      • Produktübersicht
      • Grundlegende Bedienung
      • Geräteaktivierung und -verbindung
      • Scan-Workflow
      • Punktwolke mit absoluten Koordinaten erfassen
      • Messpunkt
      • Anhang
      • FAQ
  • Lixel Studio

    • Version und Copyright
    • Installation und Aktivierung
    • Softwareoberfläche
    • Dateioperationen
    • Projektverarbeitung
    • Werkzeuge
    • 2D-Zeichnung
    • Anwendungen
    • Einstellungen
    • Geräteverbindung
  • Lixel CyberColor

    • LCC Studio

      • Erste Schritte
      • Version und Updates
      • Download und Installation
      • Oberfläche und Navigation
      • Vor der Rekonstruktion
      • Modellrekonstruktion
      • Einzelmodell-Rekonstruktion
      • Kartenfusion
      • Boden-Luft-Fusion
      • Luftbild-Rekonstruktion
      • Meine Modelle
      • Weitere Funktionen
      • Einstellungen und Konto
      • Converter
      • Videorekonstruktion
      • Häufige Fragen / FAQ
    • LCC Scene Editor

      • Version und Updates
      • Konto und Anmeldung
      • Produktübersicht und Startseite
      • Editor-Oberfläche
      • Navigationsmodi
      • Datei
      • Einstellungen
      • Bearbeiten
      • Fenster
      • Globale Symbolleiste
      • Assets und Eigenschaften
      • Linke Symbolleiste
      • Ansichtspunkte
      • Portal
      • Skybox
      • Markierungen
      • Messung
      • Flythrough
      • Szenenbericht
      • 3D-Layout
      • Minikarte
      • Vorschaumodus (Viewer)
      • Hilfe
      • Häufige Fragen (FAQ)
      • Spawn-Point
    • LCC Model Editor

      • Version und Updates
      • Benutzerhandbuch
      • Übersicht und Oberfläche
      • Dateioperationen
      • Selektoren
      • Modelle bearbeiten
      • Messung
      • Farbkorrektur
      • Asset-Verwaltung
      • Einstellungen und Hilfe
      • Häufige Fragen
    • Capture Guide

      • Überblick
      • Überblick über die Aufnahmegeräte
      • Allgemeine Aufnahmeprinzipien
      • Aufnahme von Innenszenen
      • Aufnahme von Außenszenen
      • Großflächige Aufnahme (Map Fusion)
      • Aerial-Ground Map Fusion – Aufnahme
      • Objektaufnahme
      • Personenaufnahme
      • Video-Rekonstruktionsaufnahme
      • HD Enhancement
      • Kontrollpunkte (Lixel P1)
      • FAQ und Fehlerbehebung
    • Versionsgeschichte
  • Plugin & SDK

    • Unreal

      • Einführung
      • Schnellstart - Windows
      • Schnellstart - Linux
      • Schnellstart - Quest3
      • Editionen und Lizenzierung
      • Rendering
      • Bildeinstellungen
      • Normalen und Beleuchtung
      • Szenenbearbeitung
      • Leistungsparameter
      • Leitfaden zur Leistung
      • Integration von Drittanbieter- und Engine-Plugins
      • Proxy Mesh
      • Ladeanimation
      • Kollision
      • Unterstützung des Navigation System
      • Unterstützung von Single Layer Water
      • Lokalisierung
      • FAQ
      • Fehlerbehebung
      • Logs und Diagnose
      • Kontakt
      • API-Referenz

        • ALCCActorBase
        • ULCCComponentBase
        • ULCCComponent
        • ULCC2Component
        • SOG- / SPZ- / PLY-Actors
        • ALCC2ProxyMesh
        • ALCCClippingVolume
        • ALCCSectionPlane
        • ULCCUtilLibrary
        • Enums
        • Structs
      • Änderungsprotokoll

        • 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

Die 3DGS-Leistungsparameter im Einzelnen

Dieses Dokument beschreibt, was jeder Parameter bewirkt, welche Werte er annimmt und welches Ergebnis eine Änderung tatsächlich hat, um die Bedeutung eines einzelnen Parameters nachzuschlagen. Zum schrittweisen Ablauf, einen Engpass zu finden und zu optimieren, siehe Leitfaden zur Leistung.

Die Tabelle unter jeder Parameter-Überschrift nennt die Gruppe, zu der er gehört, seinen Bereich, seinen Standardwert, die Pipeline, für die er gilt, und wie er wirksam wird. Steht als Pipeline „LCC“ oder „LCC2“, wirkt der Parameter nur in dieser Pipeline; mit „Gemeinsam“ markierte Parameter wirken in beiden. Zum Begriff der Pipeline siehe Einführung.

Parameter des Actor-Panels

Diese liegen im Details-Panel des Actors unter der Kategorie Performance und sind nach Geltungsbereich gruppiert:

  • Gruppe Base: beiden Pipelines gemeinsam, an jedem LCC-Actor vorhanden
  • Pipeline-spezifische Gruppe: nur an Actors der passenden Pipeline sichtbar, wobei die Gruppe nach der Pipeline benannt ist. In der aktuellen Version hat nur die LCC-Pipeline eine eigene Gruppe (mit dem Namen LCC), LCC2-Actors zeigen nur die Gruppe Base
Parameter der Gruppe Base unter der Kategorie Performance

Gruppe Base: Leistungsparameter, die beiden Pipelines gemeinsam sind

Parameter der Gruppe LCC unter der Kategorie Performance

Gruppe LCC: nur an Actors der LCC-Pipeline sichtbar

Hinweis: Jeder Parameter unter der Kategorie Performance hat links ein Kontrollkästchen. Solange das Kästchen nicht angehakt ist, nutzt der Parameter den eingebauten Standardwert des Plugins und der eingegebene Wert hat keine Wirkung. Wenn eine Anpassung nichts bewirkt, zuerst prüfen, ob das Kästchen angehakt ist.

Max Distance

GruppeBereichStandardPipelineWird wirksam
BaseBeliebige positive Ganzzahl300GemeinsamSofort

Maximale Renderdistanz in Metern. Nodes jenseits dieser Distanz werden weder gerendert noch geladen. Das ist der Parameter mit dem unmittelbarsten Nutzen: Ein niedrigerer Wert senkt gleichzeitig die Kosten für Traversierung, Laden, Upload und Rendering.

Ein niedrigerer Wert hebt die Bildrate deutlich und senkt Arbeits- und Grafikspeicherbedarf, um den Preis, dass ferner Inhalt verschwindet und an der Grenze eine deutliche Abbruchkante entsteht. Zusammen mit Range For Level lesen: Ist die maximale Distanz kleiner als die Distanz eines Levels, werden dieses Level und alle ferneren nie genutzt.

Max Splat Num

GruppeBereichStandardPipelineWird wirksam
Base0 ~ 10000 (Einheit: 10.000)3000GemeinsamSofort

Maximale Anzahl der pro Bild gerenderten Punkte. Nach der Traversierung werden Nodes von fern nach nah verworfen, bis die Gesamtzahl der Punkte innerhalb dieser Grenze liegt. Es ist eine harte Schranke: Unabhängig davon, wie viel Inhalt die Ansicht enthält, überschreitet die pro Bild gerenderte Menge diesen Wert nie.

Ein niedrigerer Wert deckelt die Last und verhindert Einbrüche der Bildrate in offenen Ansichten, um den Preis, dass ferne Nodes verworfen werden, sodass beim Drehen der Ansicht fehlender Hintergrund auftreten kann. Zu große Werte werden automatisch auf die in einem Bild tatsächlich renderbare Menge begrenzt.

Level Factor

GruppeBereichStandardPipelineWird wirksam
Base0.01 ~ 201GemeinsamSofort

Skalierungsfaktor für die Level-Auswahl, der steuert, „ab welcher Entfernung die Genauigkeit zu sinken beginnt“. Die beiden Pipelines setzen ihn unterschiedlich um: Die LCC-Pipeline skaliert damit die globale Distanztabelle Range For Level, die LCC2-Pipeline skaliert damit den Schwellwert des Screen-Space-Fehlers, mit gleicher Wirkungsrichtung.

Über 1 wechselt er früher auf Levels mit geringerer Genauigkeit, was Details reduziert und die Leistung verbessert; unter 1 senkt er die Genauigkeit später, was ein schärferes Bild zu höheren Kosten ergibt. Bei 1 belassen und nur unter echtem Leistungsdruck in kleinen Schritten erhöhen.

Start Level

GruppeBereichStandardPipelineWird wirksam
Base0 ~ 200GemeinsamSofort

Start-Level, das die höchste nutzbare Genauigkeit begrenzt. Der Standardwert 0 erlaubt das Level mit der höchsten Genauigkeit.

Bei 1 oder höher wird das feinste Level auch in der Nähe nie geladen, naher Inhalt wird also unschärfer, während geladene Menge und Grafikspeicherbedarf deutlich sinken. Auf schwächeren Geräten oder mobil eine Erhöhung erwägen.

End Level

GruppeBereichStandardPipelineWird wirksam
Base0 ~ 2020GemeinsamSofort

End-Level, das das gröbste nutzbare Level begrenzt. Der Standardwert 20 setzt keine Grenze, das gröbste in den Daten vorhandene Level kann also genutzt werden.

Ein niedrigerer Wert verhindert, dass gröbere Levels der Daten genutzt werden, ferner Inhalt kann daher nur auf End Level bleiben. Im Bild entstehen keine Lücken, es werden aber mehr Punkte als nötig gerendert und die Leistung sinkt dadurch. Der Parameter ist also kein Weg zur Beschleunigung und bleibt normalerweise beim Standardwert 20.

Max Load Collision Distance

GruppeBereichStandardPipelineWird wirksam
BaseBeliebige positive Ganzzahl300GemeinsamSofort

Maximale Ladedistanz für Kollisionsdaten in Metern. Wirkt nur, sobald Kollision aktiviert ist.

Beide Pipelines laden Kollisionsdaten in Chunks: Es werden nur die Kollisions-Chunks innerhalb dieser Distanz um die Kamera geladen, und sie werden mit der Kamerabewegung dynamisch ein- und ausgelagert. Dieser Wert bestimmt daher, wie viele Kollisionsdaten zu jedem Zeitpunkt resident sind.

Ein niedrigerer Wert senkt unmittelbar den Arbeitsspeicherbedarf bei Collision Data Usage und die Zeit bei Update Collision, um den Preis, dass in der Ferne keine Kollision vorhanden ist.

Bei Verwendung mit dem Navigation System muss er meist erhöht werden, damit die Kollision des Zielbereichs in einem Durchgang vollständig lädt. Andernfalls wird die Kollision zur Laufzeit mit der Kamerabewegung fortlaufend aktualisiert, was ständig Neuaufbauten der Navigationsdaten auslöst und deutliches Ruckeln verursacht. Siehe Unterstützung des Navigation System.

Use Full Load

GruppeBereichStandardPipelineWird wirksam
BaseAktiviert / DeaktiviertAktiviertGemeinsamDaten neu laden

Ob Rendering mit vollständigem Laden erlaubt ist. Aktiviert wird, sofern die Punktzahl auf Level 0 Full Load Splat Number nicht überschreitet, der gesamte Datensatz auf einmal geladen und bleibt im Grafikspeicher resident, wobei Traversierung und Upload pro Bild entfallen; andernfalls fällt es auf bedarfsgesteuertes Laden zurück.

Die Aktivierung ergibt in kleinen Szenen eine stabilere Bildrate ohne Node-Ränder und ohne Detail-Popping, um den Preis, dass der gesamte Datensatz im Grafikspeicher resident bleibt. Deaktiviert wird immer bedarfsgesteuert geladen.

Das Verhalten des Grafikspeichers nach der Deaktivierung unterscheidet sich zwischen den Pipelines:

  • Die LCC-Pipeline belegt Grafikspeicher je Node, der Bedarf ändert sich also mit dem sichtbaren Bereich
  • Die LCC2-Pipeline belegt ihren Grafikspeicher-Buffer nach Budget vorab, der Bedarf ändert sich also nicht mit dem sichtbaren Bereich; es ändert sich nur die tatsächlich in den Buffer gefüllte Datenmenge

Siehe Rendering.

Full Load Splat Number

GruppeBereichStandardPipelineWird wirksam
BaseBeliebige positive Ganzzahl (Einheit: 10.000)1500GemeinsamDaten neu laden

Obergrenze der Punktzahl auf Level 0, die Rendering mit vollständigem Laden erlaubt.

Ein höherer Wert lässt größere Szenen vollständiges Laden nutzen, daher prüfen, dass der Grafikspeicher ausreicht. Ein niedrigerer Wert lässt mehr Szenen auf bedarfsgesteuertes Laden zurückfallen.

Sort Factor

GruppeBereichStandardPipelineWird wirksam
LCC0.2 ~ 51Nur LCCSofort

Skalierungsfaktor für die Sortierfrequenz. Er gilt für die globale Tabelle Sort Frequency For Level und steuert, wie oft die Nodes jedes Levels neu sortiert werden.

Ein höherer Wert senkt die Anzahl der Sortierungen und verbessert die Leistung, aber die Überlappungsreihenfolge transluzenter Objekte aktualisiert sich bei Änderung der Ansicht später, was kurzzeitige Durchdringungsfehler verursachen kann. Ein niedrigerer Wert sortiert zeitnäher zu höheren Kosten. Bei 1 belassen.

Add Extra Preload Nodes

GruppeBereichStandardPipelineWird wirksam
LCCAktiviert / DeaktiviertAktiviertNur LCCSofort

Ob der Ladewarteschlange zusätzliche Vorlade-Nodes angehängt werden. Aktiviert werden einige Nodes außerhalb des Frustum-Rands vorgeladen.

Die Aktivierung mildert Löcher am Bildschirmrand beim schnellen Drehen der Ansicht, um den Preis von mehr zu rendernden Nodes. Deaktiviert sinkt die Anzahl der Nodes, aber Lücken am Rand treten beim schnellen Drehen eher auf.

Globale Konfiguration in den ProjectSettings

Diese liegen unter ProjectSettings > Plugins > LCC4Unreal. Sie gelten für jeden LCC-Actor in der Szene und lassen sich nicht je Actor konfigurieren.

Globale Projekteinstellungen von LCC4Unreal

Die globalen Parameter von LCC4Unreal in den ProjectSettings konfigurieren

Language

KategorieBereichStandardPipelineWird wirksam
GeneralFollow Editor / Always EnglishFollow EditorGemeinsamSofort

Sprache der Plugin-Oberfläche. Follow Editor folgt der Spracheinstellung des Editors, Always English erzwingt Englisch. Siehe Lokalisierung.

AutoExposure Enable

KategorieBereichStandardPipelineWird wirksam
LCCAktiviert / DeaktiviertDeaktiviertGemeinsamErfordert einen Editor-Neustart

Ob die automatische Belichtung aktiv ist. Standardmäßig deaktiviert, weil die automatische Belichtung die 3DGS-Helligkeit mit dem sichtbaren Inhalt schwanken lässt. Aktiviert passt sich die Bildhelligkeit bei Kamerabewegung automatisch an.

SceneCaptureComponent Support

KategorieBereichStandardPipelineWird wirksam
LCCAktiviert / DeaktiviertAktiviertNur LCCSofort

Ob SceneCapture LCC-Inhalt rendern kann.

Die Aktivierung macht 3DGS in SceneCapture sichtbar, um den Preis, dass jedes Capture als eigene Ansicht zählt, was die Traversierungskosten erhöht. In Projekten ohne SceneCapture deaktivieren, um diese Kosten zu sparen.

SingleLayerWater Support

KategorieBereichStandardPipelineWird wirksam
LCCAktiviert / DeaktiviertDeaktiviertNur LCC2Erfordert einen Editor-Neustart

Aktivieren, wenn 3DGS von einem Single-Layer-Water-Material verdeckt wird.

Die Aktivierung lässt 3DGS auf der Wasseroberfläche korrekt darstellen, um den Preis, dass Wasserpixel Schattenqualität der Virtual Shadow Map verlieren. Diese Option schreibt r.Water.SingleLayer.DepthPrepass in die DefaultEngine.ini des Projekts. Siehe Unterstützung von Single Layer Water.

Splat Number For Discard Per Node

KategorieBereichStandardPipelineWird wirksam
LCCBeliebige positive Ganzzahl5Nur LCCDaten neu laden

Verwirft die Daten eines Nodes, wenn seine Punktzahl unter diesem Wert liegt; die Entscheidung fällt beim Auswerten von index.bin und dem Aufbau der Nodes. Manche Datensätze enthalten viele Fragment-Nodes mit nur ein oder zwei Punkten, und die Scheduling-Kosten dieser Nodes übersteigen ihren Renderwert deutlich.

Ein höherer Wert senkt die Gesamtzahl der Nodes und die Kosten für Traversierung und Laden, um den Preis von mehr verworfenen Punkten, sodass dünn besetzte Bereiche Lücken zeigen können.

Anti-aliasing Methods

KategorieBereichStandardPipelineWird wirksam
AntiAliasingVon der Engine unterstützte Antialiasing-MethodenSiehe Tabelle untenGemeinsamSofort

Antialiasing entfernt die Treppenstufen an Objektkanten. Reguläre Meshes haben klar definierte geometrische Kanten, an denen Aliasing deutlich sichtbar ist und Antialiasing nötig macht; 3DGS besteht aus vielen übereinandergelegten halbtransparenten Splats, seine Kanten sind daher bereits Übergänge und Aliasing ist kaum sichtbar.

Die vier Einstellungen entsprechen dem 3DGS- und dem Punktwolkenmodus jeder Pipeline, und das Plugin wendet sie automatisch an, sobald bAffectAntiAliasingMethod am Actor aktiviert ist.

EinstellungStandardGilt für
LCC1 Splat Anti-aliasing MethodFXAA3DGS-Modus der LCC-Pipeline (ohne Tiefe)
LCC2 Splat Anti-aliasing MethodTSR3DGS-Modus der LCC2-Pipeline (mit Tiefe)
LCC1 Point Cloud Anti-aliasing MethodMSAAPunktwolkenmodus der LCC-Pipeline
LCC2 Point Cloud Anti-aliasing MethodTSRPunktwolkenmodus der LCC2-Pipeline

Die LCC-Pipeline vermeidet TSR / TAA standardmäßig, weil beide bei fehlender Tiefeninformation während Kamerabewegungen Ghosting erzeugen.

Die GPU-Kosten von Antialiasing sind nicht gering, bei TSR besonders deutlich. Enthält die Szene nur 3DGS und keine regulären Meshes, die passende Option auf None setzen, um Antialiasing abzuschalten; die Bildqualität verliert meist sehr wenig, während der Gewinn bei der Bildrate erheblich ist. In Szenen mit regulären Modellen, UI oder Drahtgittern führt das Abschalten zu sichtbar treppigen Kanten bei diesen Inhalten.

Den tatsächlichen Kostenunterschied zwischen den Methoden mit ProfileGPU an der Zielszene messen, da der Abstand über Auflösungen und Hardware hinweg stark schwankt.

Hinweis: Existieren in der Szene gleichzeitig Actors beider Pipelines, hängt es von der Ausführungsreihenfolge ab, welche Methode wirkt; sie daher manuell auf denselben Wert konfigurieren. Siehe Bildeinstellungen.

Enable Post Process

KategorieBereichStandardPipelineWird wirksam
RenderingAktiviert / DeaktiviertAktiviertGemeinsamSofort

Ob LCC-Pixel an der Nachbearbeitungs-Pipeline der Engine teilnehmen.

Aktiviert erhält 3DGS Tone Mapping, Bloom, Belichtung und weitere Nachbearbeitung gemeinsam mit den übrigen Objekten der Szene für eine einheitliche Anmutung. Deaktiviert behält 3DGS seine ursprünglichen Farben und bleibt von Tone Mapping und den danach folgenden Stufen unbeeinflusst. Die Deaktivierung erfordert die Ausgabe des Alphakanals in der Engine. Siehe Bildeinstellungen.

Apply Tonemap Inverse

KategorieBereichStandardPipelineWird wirksam
RenderingAktiviert / DeaktiviertDeaktiviertGemeinsamSofort

Ob FilmToneMapInverse während der Farbraumkonvertierung angewendet wird.

Die Aktivierung neutralisiert das Tone Mapping der Engine im Vorfeld, sodass das Endbild den ursprünglichen Kontrast und die ursprünglichen Farben der Daten wiederherstellt. Deaktiviert teilen 3DGS und reguläre Objekte dasselbe Tone Mapping.

Quad Extent Threshold

KategorieBereichStandardPipelineWird wirksam
Rendering0.001 ~ 0.10.006Nur LCC2Sofort

Steuert, wie weit sich das Splat-Quad vom Gauß-Mittelpunkt nach außen erstreckt. Jeder Splat wird in ein Quad rasterisiert, und ein größeres Quad bedeckt mehr Pixel.

Ein höherer Wert macht Quads enger, senkt Overdraw und die Pixel-Füllkosten, kann aber die Kanten halbtransparenter Splats abschneiden, was sich als härtere Umrisse oder fehlende Kanten zeigt. Ein niedrigerer Wert hält Kanten vollständiger zu höheren Füllkosten.

Small Splat Threshold

KategorieBereichStandardPipelineWird wirksam
Rendering0.0 ~ 4.00 (aus)Nur LCC2Sofort

Splats, die auf dem Bildschirm kleiner als diese Pixelgröße sind, werden auf einen einzelnen Pixel zusammengefasst und überspringen die SH-Berechnung.

Ein höherer Wert überspringt die Shading-Berechnung vieler kleiner ferner Splats und senkt die GPU-Kosten deutlich, um den Preis, dass der Hintergrund blickwinkelabhängige Farbvariation verliert, was sich als Körnigkeit oder leichtes Flackern zeigen kann.

Frustum Cull Margin

KategorieBereichStandardPipelineWird wirksam
Rendering1.0 ~ 2.01.2Nur LCC2Sofort

Margin-Faktor für das Frustum-Culling je Splat.

Über 1.0 dehnt sich das Frustum nach außen aus, was verhindert, dass Splats am Bildschirmrand beim Drehen der Kamera hereinspringen; ein größerer Wert behält mehr Randsplats zu leicht höheren Kosten. Bei 1.0 folgt das Culling dem Frustum streng und der Rand kann Popping zeigen.

Max CPU Usage Percetage For Free

KategorieBereichStandardPipelineWird wirksam
Usage50 ~ 10090GemeinsamSofort

Die Freigabe von Nodes wird ausgelöst, wenn der Arbeitsspeicherbedarf diesen Prozentwert erreicht.

Ein niedrigerer Wert beginnt früher freizugeben und hält den Arbeitsspeicherbedarf zurückhaltender, das Ein- und Auslagern wird aber häufiger. Ein höherer Wert nutzt mehr Arbeitsspeicher und riskiert einen Absturz beim Annähern an die Systemgrenze.

CPU Release Percetage

KategorieBereichStandardPipelineWird wirksam
Usage10 ~ 10030GemeinsamSofort

Prozentanteil der Daten, der bei jedem Auslösen der Freigabe geleert wird.

Ein höherer Wert gibt pro Auslösen mehr frei und löst seltener aus, die freigegebenen Daten müssen aber erneut geladen werden, was leicht ein einmaliges Ruckeln verursacht. Der Wert 100 ist nicht empfohlen.

Max GPU Usage Percetage For Free

KategorieBereichStandardPipelineWird wirksam
Usage50 ~ 10080GemeinsamSofort

Die Freigabe wird ausgelöst, wenn der Grafikspeicherbedarf diesen Prozentwert erreicht. Bei der Freigabe werden Nodes anhand einer Kombination aus letztem Rendering-Zeitpunkt, Zugriffshäufigkeit, Datengröße und Level bewertet, und die am längsten nicht genutzten werden zuerst freigegeben, während Nodes mit hohem Level geschützt bleiben.

Ein niedrigerer Wert ist sicherer: Sobald der auf der Karte verfügbare Grafikspeicher überschritten wird, lagert der Treiber Daten in den Systemspeicher aus, und der Bildraten-Einbruch ist weit schlimmer als das Ein- und Auslagern.

GPU Release Percetage

KategorieBereichStandardPipelineWird wirksam
Usage10 ~ 10030GemeinsamSofort

Prozentanteil der Grafikspeicherdaten, der bei jedem Auslösen freigegeben wird. Die Bewertungskriterien entsprechen denen von CPU Release Percetage.

LCC2 GPU Memory Budget

KategorieBereichStandardPipelineWird wirksam
Usage2048 ~ 81922048Nur LCC2Erfordert einen Editor-Neustart

Grafikspeicher-Budget für die Splat-Daten eines einzelnen Modells. Sortier-Buffer zählen nicht in dieses Budget; jeder residente Splat kostet zusätzlich 16 Byte pro Ansicht.

Ein höherer Wert lässt mehr Daten gleichzeitig im Grafikspeicher resident bleiben und verringert die durch Ein- und Auslagern verursachten Löcher und Unschärfen. Das Budget ist aber nur die Obergrenze, die das Plugin anfordert, und ein Überschreiten des auf der Karte verfügbaren Grafikspeichers macht die Sache stattdessen langsamer. Die ladbare Menge bei Einzeldateiformaten erreicht ihre Grenze bereits bei 4096 MB, eine weitere Erhöhung hat daher keine Wirkung. Siehe Rendering.

Range For Level

KategorieBereichStandardPipelineWird wirksam
LevelFestes Float-Array mit 11 Einträgen15, 50, 80, 110, 140, 170, 190, 220, 250, 280, 350Nur LCCSofort

Distanzbereich jedes Levels in Metern. Eintrag N ist die Distanzgrenze, ab der Level N wirksam wird.

Das ist die Basis-LOD-Tabelle, und eine Änderung wirkt unmittelbar auf jeden LCC-Actor. Normalerweise wird sie nicht direkt bearbeitet; stattdessen Level Factor am Actor nutzen, um sie als Ganzes zu skalieren. Auf das Verhältnis zwischen maximaler Renderdistanz und dieser Tabelle achten: Ist die maximale Distanz kleiner als einer dieser Werte, wird das entsprechende Level nie genutzt.

Sort Frequency For Level

KategorieBereichStandardPipelineWird wirksam
LevelFestes Float-Array mit 11 Einträgen5, 15, 25, 40, 50, 70, 90, 110, 130, 150, 170Nur LCCSofort

Sortierfrequenz jedes Levels. Je höher das Level und je größer die Distanz, desto länger der Abstand zwischen den Neusortierungen.

Höhere Werte insgesamt senken die Sortierkosten, um den Preis, dass sich die Transluzenz-Reihenfolge ferner Nodes später aktualisiert. Normalerweise Sort Factor am Actor zum Skalieren nutzen statt diese Tabelle direkt zu bearbeiten.

Hinweis: Die LCC2-Pipeline wählt Levels über den Screen-Space-Fehler und nutzt Range For Level nicht; ihre Sortierung ist eine globale Sortierung je Splat innerhalb des einzelnen Buffers und nutzt Sort Frequency For Level nicht.

Default Traversal Type

KategorieBereichStandardPipelineWird wirksam
TraversalSector / CircleSectorGemeinsamErfordert einen Editor-Neustart

Modus der Node-Traversierung. Sector filtert sichtbare Nodes über das Frustum, Circle filtert kreisförmig nach Distanz.

Sector verarbeitet nur Nodes innerhalb der Ansicht zu niedrigeren Kosten und ist der empfohlene Wert. Circle zieht jeden Node in einem Ring um die Kamera herein, zu höheren Kosten, dafür laden Nodes nie zu spät, nur weil sie gerade erst in das Frustum eingetreten sind. In Szenen mit mehreren Viewports oder schnellem Drehen Circle ausprobieren.

Einstellungen des Thread-Pools

KategorieBereichStandardPipelineWird wirksam
Loader / Traversal / Sort / ExporterSiehe Tabelle untenSiehe Tabelle untenNur LCCErfordert einen Editor-Neustart

Diese Thread-Pools nutzen die Module für Laden, Traversierung und Sortierung der LCC-Pipeline. Die LCC2-Pipeline lädt Daten über den Thread-Pool der Engine und ist von diesen Einstellungen unbeeinflusst; die Ausnahme ist das Laden von Kollisionsdaten, bei dem beide Pipelines die Loader-Thread-Konfiguration gemeinsam nutzen.

Die Thread-Pools werden bei der Initialisierung des Moduls aus der Konfiguration erzeugt, nach einer Änderung ist daher ein Editor-Neustart erforderlich.

Jeder der vier Thread-Typen hat eine Einstellung für die „maximale Anzahl an Threads“ und für die „Anzahl vorab erzeugter Threads“:

EinstellungBereichStandardZweck
Max Loader Thread Number5 ~ 10020Laden von Daten
Pre-Create Loader Thread Number0 ~ 1005Vorab erzeugte Loader-Threads
Max Traversal Thread Number5 ~ 10020Node-Traversierung
Pre-Create Traversal Thread Number0 ~ 1005Vorab erzeugte Traversal-Threads
Max Sort Thread Number5 ~ 10020Sortierung
Pre-Create Sort Thread Number0 ~ 1005Vorab erzeugte Sort-Threads
Max Exporter Thread Number5 ~ 10020Datenexport, unabhängig vom Rendering zur Laufzeit
Pre-Create Exporter Thread Number0 ~ 1005Vorab erzeugte Exporter-Threads

Mehr Threads ist nicht immer besser. Liegt der Engpass bei der Datenträger-IO, hilft das Hinzufügen von Loader-Threads nicht und erhöht nur die Konkurrenz. Eine Erhöhung der Grenze nur erwägen, wenn stat xgrids zeigt, dass die Warteschlange des entsprechenden Threads fortlaufend aufläuft und die CPU noch Reserven hat.

Vorab erzeugte Threads vermeiden die Kosten der Thread-Erzeugung zur Laufzeit, und ein höherer Wert senkt die Latenz beim Start des Ladens einer Szene.

Statistiken

Das Statistik-Panel mit dem Konsolenbefehl stat xgrids öffnen oder im Actor-Panel unter der Kategorie Developer auf Stats klicken.

Panel der Echtzeit-Leistungsstatistiken von stat xgrids

Echtzeit-Leistungsstatistiken mit stat xgrids ansehen

Das Panel hat drei Abschnitte:

AbschnittSpaltenBedeutung
Cycle counters (flat)CallCount, InclusiveAvg, InclusiveMax, ExclusiveAvg, ExclusiveMaxZeiteinträge. Inclusive umfasst untergeordnete Aufrufe, Exclusive zählt nur den Eintrag selbst
Memory CountersUsedMax, Mem%, MemPool, Pool CapacityBedarf an Arbeits- und Grafikspeicher, wobei Physical den physischen Speicherpool bezeichnet
CountersAverage, Max, MinZähleinträge

Cycle counters (Zeiteinträge)

MetrikBedeutung und Nutzung
Update CollisionZeit für die Aktualisierung der Kollisionsdaten. Hat nur einen Wert, sobald Kollision aktiviert ist; ein hoher Wert bedeutet, dass die Kollision häufig neu aufgebaut wird, daher die Ladedistanz der Kollision senken
Update Camera InfoZeit für das Erheben der Kamerainformationen pro Bild. Je mehr Ansichten, desto höher; mit Camera Num vergleichen
Component UpdateZeit für die Aktualisierung der Komponenten pro Bild, Kosten des Game-Threads. Sie summieren sich, wenn mehrere LCC-Actors eine Szene teilen
Get Physics Trimesh DataZeit für die Bereitstellung der Kollisions-Dreiecksnetze an das Physiksystem. Erscheint nur während des Physik-Backens und ist die unmittelbare Quelle von Kollisions-Ruckeln
Get From CacheZeit für das Abrufen von Daten bei einem Cache-Treffer. Das ist der schnelle Pfad gegenüber Datenträgerzugriffen, ein hoher Anteil hier ist also ein gutes Zeichen

Memory Counters (Arbeits- und Grafikspeicher)

MetrikBedeutung und Nutzung
CPU UsageVon LCC belegter Systemspeicher. Zusammen mit CPU Occupy Percentage lesen, um zu beurteilen, wie nah der Freigabeschwellwert ist
Collision Data UsageVon Kollisionsdaten belegter Arbeitsspeicher. Je größer die Kollisionsdistanz, desto höher; der unmittelbarste Gewinn beim Abschalten der Kollision
Position Data(For Raycast) UsageArbeitsspeicher der für Strahlentests genutzten Positionsdaten. Er ist 0, wenn keine Strahlentests durchgeführt werden
GPU UsageVon LCC belegter Grafikspeicher. Er wird anders gemessen als GPU Occupy Percentage

Counters (Zähleinträge)

MetrikBedeutung und Nutzung
Total SplatsGesamte Punktzahl des Datensatzes, ein fester Wert
Level0 SplatsPunktzahl von Level 0, die entscheidet, ob die Kriterien für vollständiges Laden erfüllt sind
Current Render Main SplatsIm aktuellen Bild gerenderte Punktzahl der Hauptdaten. Mit Max Splat Num vergleichen, um zu erkennen, ob die Punktgrenze erreicht wurde
Current Render NodesIm aktuellen Bild gerenderte Anzahl der Nodes
Total NodesGesamte Anzahl der Nodes des Datensatzes, ein fester Wert
Released GPU Node NumAnzahl der aus dem Grafikspeicher freigegebenen Nodes. Fortlaufendes Wachstum bedeutet häufiges Ein- und Auslagern, was meist auf ein zu kleines Grafikspeicher-Budget hindeutet
Released CPU Node NumAnzahl der aus dem Arbeitsspeicher freigegebenen Nodes. Wie oben zu beurteilen
GPU Occupy PercentageProzentanteil des belegten Grafikspeichers. Die Freigabe steht bevor, wenn er sich dem Schwellwert Max GPU Usage nähert
CPU Occupy PercentageProzentanteil des belegten Arbeitsspeichers
Loader Thread NumAnzahl der Loader-Threads. Eine Erhöhung der Grenze nur erwägen, wenn die Warteschlange aufläuft und die CPU noch Reserven hat
Pre-Loader Thread NumAnzahl der Vorlade-Threads
Collision Loader Thread NumAnzahl der Threads zum Laden von Kollisionen
Sort Thread NumAnzahl der Sort-Threads
Traversal Thread NumAnzahl der Traversal-Threads
Exporter Thread NumAnzahl der Exporter-Threads, unabhängig vom Rendering zur Laufzeit
Camera NumAnzahl der an Aktualisierungen teilnehmenden Kameras
Camera Num(Render)Anzahl der am Rendering teilnehmenden Ansichten, die unmittelbare Grundlage zur Beurteilung der Kosten von SceneCapture, Splitscreen und nDisplay
Node Vector Pool NumAnzahl der Objekte im Node-Vector-Pool, eine interne Statistik zur Objektwiederverwendung
Valid Node NumAnzahl der gültigen Nodes, eine interne Zustandsstatistik

Debug-Werkzeuge

WerkzeugBeschreibung
Debug Node BoundVisualisiert die Grenzen der Octree-Nodes, wobei die Farbe das Level angibt (rot ist die höchste Genauigkeit, weiß die niedrigste). Damit prüfen, ob die LOD-Parameter wie erwartet wirken
StatsZeigt Echtzeit-Render-Statistiken, entspricht stat xgrids
FreezeRenderingFriert den aktuellen Render-Zustand ein. Nach dem Einfrieren löst eine Kamerabewegung keine Traversierung mehr aus, sodass sich prüfen lässt, welche Nodes das aktuelle Bild tatsächlich übergeben hat
Zurück
Szenenbearbeitung
Weiter
Leitfaden zur Leistung