VulkansCeneGraph(VSG)是一個現代的跨平台,高性能場景圖庫,建立在Vulkan圖形/計算API的基礎上。該軟件用C ++ 17編寫,並遵循CPPCoreGuidelines和FOSS最佳實踐。源代碼是根據MIT許可證發布的,除了Vulkan.h以外,用於Vulkan擴展名,該擴展名為Apache許可證2.0。
該存儲庫包含C ++標頭,源和CMake構建腳本以構建LIBVSG庫。在單獨的存儲庫中提供了其他支持庫和示例,下面提供了指向這些的鏈接。該軟件當前在Linux(台式機變體到Jetson&Raspberry Pi),Windows(VisualStudio,Mingw&Cygwin),Android以及Macos&ios(使用MoltenVK)下構建。
鏈接到更多信息
vulkanscenegraph.org網站提供了功能,教程和參考文檔的詳細列表,而此存儲庫提供了源代碼和構建支持,以創建VulkanSceneGraph庫。快速鏈接到網站上託管的資源:
- 功能 - 在VulkansCenegraph和Companion項目中找到的功能之旅。
- 屏幕截圖 - 來自VulkansCenegraph示例和第三方庫和應用程序的屏幕截圖
- 教程 - mulit-part教程,將您從介紹到場景圖到多線程和優化。
- 文檔 - doxygen生成的參考文檔和第三方學習材料的鏈接
- 討論 - 在Github上主持的討論論壇。
- 服務 - 連接到VulkansCenegraph項目的公司清單,該項目可以提供專業服務
提供其他功能的伴侶項目的鏈接
作為VSG-DEV的一部分託管:
- 第三方圖像和3D模型以及HTTP支持的VSGXchange讀取和寫作。
- VSGEXAMPLES測試和示例。
- OSG2VSG OpenSceneGraph集成庫,該庫可以將OSG轉換為VSG場景圖並使用OpenSceneGraph加載器。
- VSGIMGUI IMGUI集成在圖形窗口中啟用UI。
- VSGQT QT與VulkansCeneGraph集成。
- VSGPOINTS 3D點雲加載和VulkansCeneGraph的渲染,並具有數據庫分頁支持和可擴展性,最高可達數十億點。
- vSgunity插件的Unity插件,可向本機VulkansCenegraph二進制/ASCII格式導出。
- MyFirstvSgapplication簡單獨立VSG應用程序,可用作您自己的應用程序的模板。
- VSGFramework模板項目使用CMake FetchContent來吸引與VulkansCenegraph和依賴關係相關的所有主要庫,並將它們構建在一起。
社區項目:
- VSGSDL SDL與VulkansCeneGraph集成。
- VSGVR OpenVR與VulkansCeneGraph集成。
- VSGCS 3D瓷磚和纖維離子整合
- VSGEARTH OSGEARTH集成
- 岩石3D地理空間應用引擎(Vulkan / C ++ 17 / VSG)。 Pelican映射的繼任者是Osgeerth。
快速構建VSG的指南
先決條件:
- 必需:C ++ 17符合的編譯器IE G ++ 7.3或更高版本,Clang 6.0或更高版本,Visual Studio S2017或更高版本。
- 必需:CMAKE 3.7或更高版本。
- 必需:Vulkan 1.1或更高版本。
- 可選:GLSLANG 14.0或更高版本。僅當需要在運行時進行著色器彙編時才需要。
已知上述依賴性版本可以正常工作,因此將其設置為當前最小值,可能可以根據較舊版本進行構建。如果您發現舊版本的成功,請告知我們,我們可以更新版本信息。
雖然您可以在第三方存儲庫中安裝Vulkan和Glslang開發庫以及標題,但它們可能會較早,因此,對於最新版本,您也可以使用Lunarg提供的VulkansDK。您可以從Lunarg下載VulkansDK,將其拆開到本地目錄中,並將vulkan_sdk環境變量設置為Include/lib目錄。
命令行構建說明:
在來源中構建和安裝靜態LIBVSG庫(.A/.lib):
git clone https://github.com/vsg-dev/VulkanSceneGraph.git
cd VulkanSceneGraph
cmake .
cmake --build . -j 16 -t install
有關如何構建VSG(UNIX/Windows/Android/MacOS)的完整詳細信息,請參見install.md文件。