Technische functies
Functionele functies
Naarmate de LCC Unity SDK verder wordt verbeterd, worden de functies steeds uitgebreider. De SDK biedt momenteel meer dan 90 API's. De belangrijkste functionele functies worden hieronder vermeld; je kunt ze naar behoefte in je eigen project integreren.
| Nr. | Functie | Beschrijving | Opmerkingen |
|---|---|---|---|
| 1 | Basisrendering | Ondersteunt volledige LOD0-rendering Ondersteunt dynamische LOD-chunked rendering voor grote scènes Ondersteunt rendering met / zonder sferische harmonischen Ondersteunt afzonderlijke renderingcontrole van subjectgegevens en omgevingsgegevens | Maakt automatisch onderscheid tussen volledige en chunked rendering Ondersteunt 3DGS-datascènes op object- tot stadsniveau |
| 2 | Ondersteuning voor meerdere grafische API's | Ondersteunt de grafische API's DX12, DX11, Vulkan en Metal | Past zich aan aan diverse hardwareplatformen |
| 3 | OpenXR | Ondersteunt de OpenXR-standaard voor VR-apparaten | Past zich aan aan diverse hardwareplatformen |
| 4 | 3DGS / puntenwolk-rendering | Ondersteunt zowel 3DGS- als puntenwolk-renderingmodi | |
| 5 | Gemengde rendering van één / meerdere scènes | Ondersteunt rendering van één LCC-scène Ondersteunt gemengde rendering van meerdere LCC-scènes (maximaal 255 LCC-scènes) Ondersteunt gemengde rendering van bestanden in SOG / SPZ-formaat | Uniform beheer van CPU-geheugen / GPU-videogeheugen om geheugen- / videogeheugenlekken en -explosies volledig te elimineren |
| 6 | Dynamische belichting | Ondersteunt realtime dynamische belichting met puntlichten en spotlichten | Vertrouwt niet op een Proxy Mesh, flexibeler in gebruik |
| 7 | Realtime schaduwen | Ondersteunt het werpen van realtime schaduwen door Meshes op 3DGS-oppervlakken | Vertrouwt niet op een Proxy Mesh, lage overhead en hoge prestaties |
| 8 | Hoeksnapping | Ondersteunt hoeksnapping op 3DGS-oppervlakken, weergave van de snap-cursor en snap-raycasting | |
| 9 | Multi-camera rendering | De volledige renderingmodus ondersteunt multi-camera rendering met alle functies De chunked renderingmodus ondersteunt multi-camera rendering op dezelfde positie en oriëntatie | Maakt meerdere cameraposities mogelijk |
| 10 | Geprojecteerde decals | Ondersteunt geprojecteerde decals met textuur en dynamische video Ondersteunt diepte-occlusie van geprojecteerde decals | |
| 11 | Orthografische / perspectiefrendering | Ondersteunt dynamisch schakelen tussen orthografische en perspectiefrendering | |
| 12 | HD-video-opname | Ondersteunt video-opname op verschillende resoluties (1080P, 2K, 4K, 8K) | Maakt HD-video-opname op verschillende formaten mogelijk Wordt niet beïnvloed door de monitorresolutie |
| 13 | Realtime markeren | Ondersteunt realtime selectiemarkering (2D, 3D, Mix) | |
| 14 | Realtime knippen | Ondersteunt realtime selectieknippen (2D, 3D, Mix) | |
| 15 | Realtime vlakdoorsnijding | Ondersteunt realtime horizontale en verticale vlakdoorsnijding | |
| 16 | Realtime kleuraanpassing | Ondersteunt realtime kleuraanpassing van selecties (helderheid, verzadiging, contrast) | |
| 17 | Semantische kleuring | Ondersteunt kleuren op basis van de semantiek van semantische gegevens | Vereist dat 3DGS-primitieven semantische informatie meedragen |
| 18 | AI Box-rendering | Ondersteunt visualisatie van door AI herkende lcb-bestanden | Wordt voornamelijk gebruikt voor het renderen van AI-detectiekaders in de energie-industrie |
| 19 | Laadeffecten | Ondersteunt diffusie-effecten tijdens het laden van gegevens | |
| 20 | Raycasting | Ondersteunt raycasting zonder een Mesh Ondersteunt raycasting met een Mesh Ondersteunt bolbotsingsdetectie met een Mesh Ondersteunt capsule-botsingsdetectie met een Mesh | Ingebouwd krachtig botsingsdetectiesysteem |
| 21 | Dynamische FOV-instelling | Ondersteunt het dynamisch instellen van de FOV van de rendercamera tijdens runtime | Wordt voornamelijk gebruikt wanneer de renderinghost en het weergaveapparaat gescheiden zijn, bijvoorbeeld bij het dragen van een stereobril |
| 22 | Alfa-aanpassing | Ondersteunt realtime aanpassing van de globale 3DGS-dekking Ondersteunt onafhankelijke dekkingaanpassing voor elke scène bij multi-LCC-scène-rendering | |
| 23 | Gegevensbronnen | Ondersteunt gegevensbronnen op de lokale schijf Ondersteunt gegevensbronnen op netwerkservers | |
| 24 | Frameratevergrendeling | Ondersteunt dynamisch schakelen tussen vergrendelde en ontgrendelde framerate | Standaard vergrendeld om de prestaties te optimaliseren |
| 25 | Diepte-schrijven | Ondersteunt realtime diepte-schrijven | Beperking: de schrijfgranulariteit is grof en kan ellipsoïdevormen opleveren |
| 26 | Realtime Mip / Non-Mip-schakeling | Ondersteunt realtime schakelen tussen Mip- en Non-Mip-rendering | |
| 27 | PCVR-streaming | Ondersteunt Single Pass Instanced en Multi Pass PCVR-streaming | |
| 28 | Scène-Mesh ophalen | Ondersteunt het ophalen van scène-Meshgegevens, ofwel in één keer of gedeeltelijk op aanvraag | |
| 29 | Culling van kleine punten | Ondersteunt dynamische aanpassing van de culling van kleine punten tijdens runtime om de prestaties te optimaliseren | |
| 30 | Instellingen voor renderparameters | Stelt verschillende renderparameterinstellingen bloot, waaronder de totale renderbuffer, het aantal on-screen renders, StartLOD, de SSE-factor en andere API's | Maakt dynamische aanpassing van de renderingprestaties en -kwaliteit tijdens runtime mogelijk |
Opmerking:
- Sommige functies zijn beperkt tot het pc-platform (inclusief Windows, Mac en Ubuntu);
- Sommige functies die afhankelijk zijn van Render Features vertonen verschillen in ondersteuning tussen Built-in, URP en HDRP.
Prestaties
LCC-rendering is een GPU-compute-intensieve toepassing. De renderingprestaties zijn voornamelijk afhankelijk van de volgende factoren: schermresolutie, CPU-verwerkingssnelheid, GPU-verwerkingssnelheid en geheugencapaciteit en -frequentie. Alle splat-aantallen in de onderstaande tabel verwijzen naar het aantal 3DGS-splats.
PC
Met een NVIDIA RTX 3060-GPU, een Intel i7-11700-CPU en 32 GB geheugen op 3200 MHz kan bij een resolutie van 1800×1000 een renderingsnelheid van 24 miljoen splats @ 30 FPS worden bereikt.
Mobiel
| Platform | Renderingsnelheid |
|---|---|
| Android (midden- tot high-end apparaten vanaf 2020) | 2 miljoen splats @ 30 FPS |
| iOS (iPhone 11 en later) | 3 miljoen splats @ 30 FPS |
VR
| Apparaat | Renderingsnelheid |
|---|---|
| Pico 4 Ultra | 600.000 splats @ 30 FPS |
| Quest 3 | 600.000 splats @ 30 FPS |