Fonctionnalités techniques
Fonctionnalités fonctionnelles
À mesure que le LCC Unity SDK continue de s'améliorer, ses fonctionnalités ne cessent de s'enrichir. Il fournit actuellement plus de 90 API. Les principales fonctionnalités fonctionnelles sont listées ci-dessous, et vous pouvez les intégrer dans votre propre projet selon vos besoins.
| N° | Fonctionnalité | Description | Remarques |
|---|---|---|---|
| 1 | Rendu de base | Prend en charge le rendu complet LOD0 Prend en charge le rendu dynamique par blocs LOD pour les grandes scènes Prend en charge le rendu avec / sans harmoniques sphériques Prend en charge le contrôle de rendu séparé des données du sujet et des données d'environnement | Distingue automatiquement le rendu complet du rendu par blocs Prend en charge les scènes de données 3DGS du niveau objet au niveau ville |
| 2 | Prise en charge de plusieurs API graphiques | Prend en charge les API graphiques DX12, DX11, Vulkan et Metal | S'adapte à diverses plateformes matérielles |
| 3 | OpenXR | Prend en charge le standard OpenXR pour les appareils VR | S'adapte à diverses plateformes matérielles |
| 4 | Rendu 3DGS / Nuage de points | Prend en charge à la fois les modes de rendu 3DGS et Nuage de points | |
| 5 | Rendu mixte à scène unique / multi-scènes | Prend en charge le rendu d'une seule scène LCC Prend en charge le rendu mixte de plusieurs scènes LCC (jusqu'à 255 scènes LCC) Prend en charge le rendu mixte de fichiers au format SOG / SPZ | Gestion unifiée de la mémoire CPU / mémoire vidéo GPU pour éliminer complètement les fuites et explosions de mémoire / mémoire vidéo |
| 6 | Éclairage dynamique | Prend en charge l'éclairage dynamique en temps réel avec des éclairages ponctuels et des spots | Ne dépend pas d'un Proxy Mesh, plus flexible à utiliser |
| 7 | Ombres en temps réel | Prend en charge le rendu d'ombres en temps réel des Meshes sur les surfaces 3DGS | Ne dépend pas d'un Proxy Mesh, faible surcoût et haute performance |
| 8 | Accrochage aux coins | Prend en charge l'accrochage aux coins sur les surfaces 3DGS, l'affichage du curseur d'accrochage et le raycasting avec accrochage | |
| 9 | Rendu multi-caméras | Le mode de rendu complet prend en charge le rendu multi-caméras complet Le mode de rendu par blocs prend en charge le rendu multi-caméras à la même position et orientation | Permet plusieurs positions de caméra |
| 10 | Décalques projetés | Prend en charge les décalques projetés de texture et de vidéo dynamique Prend en charge l'occlusion de profondeur des décalques projetés | |
| 11 | Rendu orthographique / en perspective | Prend en charge la bascule dynamique entre le rendu orthographique et en perspective | |
| 12 | Enregistrement vidéo HD | Prend en charge l'enregistrement vidéo à diverses résolutions (1080P, 2K, 4K, 8K) | Permet l'enregistrement vidéo HD à diverses tailles Non affecté par la résolution du moniteur |
| 13 | Surlignage en temps réel | Prend en charge le surlignage de sélection en temps réel (2D, 3D, Mix) | |
| 14 | Découpe en temps réel | Prend en charge la découpe de sélection en temps réel (2D, 3D, Mix) | |
| 15 | Sectionnement par plan en temps réel | Prend en charge le sectionnement par plan horizontal et vertical en temps réel | |
| 16 | Réglage des couleurs en temps réel | Prend en charge le réglage des couleurs de sélection en temps réel (luminosité, saturation, contraste) | |
| 17 | Coloration sémantique | Prend en charge la coloration selon la sémantique des données sémantiques | Nécessite que les primitives 3DGS portent des informations sémantiques |
| 18 | Rendu de boîtes IA | Prend en charge la visualisation des fichiers lcb reconnus par l'IA | Principalement utilisé pour le rendu des boîtes de détection IA dans le secteur de l'énergie |
| 19 | Effets de chargement | Prend en charge les effets de diffusion pendant le chargement des données | |
| 20 | Raycasting | Prend en charge le raycasting sans Mesh Prend en charge le raycasting avec un Mesh Prend en charge la détection de collision de sphère avec un Mesh Prend en charge la détection de collision de capsule avec un Mesh | Système de détection de collision haute performance intégré |
| 21 | Réglage dynamique du FOV | Prend en charge le réglage dynamique du FOV de la caméra de rendu à l'exécution | Principalement utilisé lorsque l'hôte de rendu et l'appareil d'affichage sont séparés, par exemple lors du port de lunettes stéréoscopiques |
| 22 | Réglage Alpha | Prend en charge le réglage en temps réel de l'opacité globale du 3DGS Prend en charge le réglage indépendant de l'opacité de chaque scène dans le rendu multi-scènes LCC | |
| 23 | Sources de données | Prend en charge les sources de données sur disque local Prend en charge les sources de données sur serveur réseau | |
| 24 | Verrouillage de la fréquence d'images | Prend en charge la bascule dynamique entre fréquence d'images verrouillée et déverrouillée | Verrouillée par défaut pour optimiser les performances |
| 25 | Écriture de profondeur | Prend en charge l'écriture de profondeur en temps réel | Limitation : la granularité d'écriture est grossière et peut produire des formes ellipsoïdales |
| 26 | Bascule en temps réel Mip / Non-Mip | Prend en charge la bascule en temps réel entre le rendu Mip et Non-Mip | |
| 27 | Streaming PCVR | Prend en charge le streaming PCVR Single Pass Instanced et Multi Pass | |
| 28 | Récupération du Mesh de la scène | Prend en charge la récupération des données Mesh de la scène, soit en une seule fois, soit partiellement à la demande | |
| 29 | Culling des petits points | Prend en charge le réglage dynamique à l'exécution du culling des petits points pour optimiser les performances | |
| 30 | Réglages des paramètres de rendu | Expose divers réglages de paramètres de rendu, notamment le tampon de rendu total, le nombre de rendus à l'écran, StartLOD, le facteur SSE et d'autres API | Permet le réglage dynamique à l'exécution des performances et de la qualité de rendu |
Remarque :
- Certaines fonctionnalités sont limitées à la plateforme PC (incluant Windows, Mac et Ubuntu) ;
- Certaines fonctionnalités qui dépendent des Render Features présentent des différences de prise en charge entre Built-in, URP et HDRP.
Performances
Le rendu LCC est une application gourmande en calcul GPU. Les performances de rendu dépendent principalement des facteurs suivants : la résolution d'écran, la vitesse de traitement du CPU, la vitesse de traitement du GPU, ainsi que la capacité et la fréquence de la mémoire. Tous les comptes de splats dans le tableau ci-dessous se réfèrent aux comptes de splats 3DGS.
PC
Avec un GPU NVIDIA RTX 3060, un CPU Intel i7-11700 et 32 Go de mémoire à 3200 MHz, à une résolution de 1800×1000, une vitesse de rendu de 24 millions de splats @ 30 FPS peut être atteinte.
Mobile
| Plateforme | Vitesse de rendu |
|---|---|
| Android (appareils de milieu à haut de gamme depuis 2020) | 2 millions de splats @ 30 FPS |
| iOS (iPhone 11 et versions ultérieures) | 3 millions de splats @ 30 FPS |
VR
| Appareil | Vitesse de rendu |
|---|---|
| Pico 4 Ultra | 600 000 splats @ 30 FPS |
| Quest 3 | 600 000 splats @ 30 FPS |