Vulkanscenegraph (VSG), est une bibliothèque de graphiques de scène haute performance moderne et haute performance construite sur l'API graphiques / calculs Vulkan. Le logiciel est écrit en C ++ 17 et suit les meilleures pratiques CPPCoreguilines et FOSS. Le code source est publié sous la licence MIT, à l'exception de Vulkan.h, utilisé pour les extensions Vulkan, qui est sous la licence APache 2.0.
Ce référentiel contient des en-têtes C ++ et des scripts Source et CMake pour construire la bibliothèque LiBVSG. Des bibliothèques d'assistance supplémentaires et des exemples sont fournies dans des référentiels distincts, des liens vers ceux-ci sont fournis ci-dessous. Le logiciel se construit actuellement sous Linux (Variants de bureau via Jetson & Raspberry Pi), Windows (VisualStudio, Mingw & Cygwin), Android et MacOS & IOS (en utilisant MoltenVK).
Liens vers de plus amples informations
Le site Web Vulkanscenegraph.org fournit une liste détaillée des fonctionnalités, des tutoriels et de la documentation de référence, tandis que ce référentiel fournit le code source et la prise en charge de la création de la bibliothèque Vulkanscenegraph. Liens rapides vers des ressources hébergées sur le site Web:
- Caractéristiques - Visiation des fonctionnalités que vous trouverez dans les projets Vulkanscenegraph et compagnon.
- Captures d'écran - Captures d'écran des exemples de Vulkanscenegraph et des bibliothèques et applications tierces
- Tutoriels - tutoriel Mulit-Parts qui vous fait passer de l'introduction aux graphiques de scène au multi-lancement et à l'optimisation.
- Documentation - Doxygen Généré la documentation de référence et liens vers des matériaux d'apprentissage tiers
- Discussion - Forum de discussion organisé sur Github.
- Services - Liste des entreprises connectées au projet Vulkanscenegraph qui peut fournir des services professionnels
Liens vers des projets d'accompagnement qui offrent des fonctionnalités supplémentaires
Hébergé dans le cadre du VSG-DEV:
- VSGXChange Reading and Writing of tiers d'images et modèles 3D et support HTTP.
- VSGEXMELLES TESTS ET EXEMPLES.
- OSG2VSG OpenScenegraph Integration Library qui permet la conversion de l'OSG en graphique de scène VSG et l'utilisation des chargeurs OpenScenegraph.
- VSGIMGUI IMGUI Intégration Activation de l'interface utilisateur dans la fenêtre graphique.
- Intégration VSGQT QT avec Vulkanscenegraph.
- VSGPOINTS 3D Point Cloud Chargement et rendu pour Vulkanscenegraph avec la prise en charge de la pagination de données et l'évolutivité jusqu'à des milliards de points.
- Plugin Vsgunity pour l'unité qui fournit l'exportation vers le format binaire / ASCII Vulkanscenegraph natif.
- MyFirstVSGApplication Simple Standalone VSG Application qui peut être utilisée comme modèle pour vos propres applications.
- Projet de modèle VSGFramework qui utilise CMake FetchContent pour attirer toutes les bibliothèques principales associées à Vulkanscenegraph et aux dépendances et les construise ensemble.
Projets communautaires:
- Intégration SDL VSGSDL avec Vulkanscenegraph.
- Intégration VSGVR OpenVR avec Vulkanscenegraph.
- VSGCS 3D Tiles et intégration d'ions césium
- Intégration VSGEarth Osgearth
- Moteur d'application géospatial 3D Rocky (Vulkan / C ++ 17 / VSG). Le successeur de Pelican Mapping à Osgeerth.
Guide rapide pour construire le VSG
Prérequis:
- Obligatoire: compilateur conforme C ++ 17 IE G ++ 7.3 ou version ultérieure, Clang 6.0 ou version ultérieure, Visual Studio S2017 ou version ultérieure.
- Obligatoire: CMake 3.7 ou version ultérieure.
- Requis: Vulkan 1.1 ou version ultérieure.
- Facultatif: GLSLANG 14.0 ou version ultérieure. Seule requis si la compilation du shader à l'exécution est nécessaire.
Les versions de dépendance ci-dessus sont connues pour fonctionner, ils ont donc été définis comme le minimum actuel, il peut être possible de construire contre des versions plus anciennes. Si vous trouvez du succès avec des versions plus anciennes, faites-le nous savoir et que nous pouvons mettre à jour les informations de version.
Bien que vous puissiez installer des bibliothèques et des en-têtes de développement Vulkan et GLSLang à partir de référentiels tiers, ceux-ci peuvent être plus âgés, donc pour les dernières versions, vous pouvez également utiliser le vulkansdk fourni par Lunarg. Vous pouvez télécharger Vulkansdk à partir de Lunarg, déballer dans un répertoire local et définir la variable d'environnement Vulkan_SDK vers le répertoire include / lib à l'intérieur.
Instructions de construction de ligne de commande:
Pour construire et installer la bibliothèque statique libvsg (.a / .lib) dans la source:
git clone https://github.com/vsg-dev/VulkanSceneGraph.git
cd VulkanSceneGraph
cmake .
cmake --build . -j 16 -t install
Tous les détails sur la façon de créer le VSG (UNIX / Windows / Android / MacOS) se trouvent dans le fichier install.md.