Vulkanscenegraph (VSG) - это современная межплатформная библиотека сцены сцены, созданную на Vulkan Graphics/Compute API. Программное обеспечение написано в C ++ 17 и следует за лучшими практиками CPPCoreGuidelines и Foss. Исходный код опубликован в соответствии с лицензией MIT, за исключением Vulkan.h, используемого для расширений Vulkan, которая находится под лицензией Apache 2.0.
Этот репозиторий содержит заголовки C ++ и сценарии Source и Cmake Build для построения библиотеки Libvsg. Дополнительные библиотеки поддержки и примеры представлены в отдельных репозиториях, ссылки на них приведены ниже. Программное обеспечение в настоящее время строит под Linux (варианты настольных компьютеров до Jetson & Raspberry Pi), Windows (VisualStudio, Mingw & Cygwin), Android и MacOS & IOS (с использованием MoltenVK).
Ссылки на дополнительную информацию
Веб -сайт vulkanscenegraph.org содержит подробный список функций, учебных пособий и справочной документации, в то время как этот репозиторий предоставляет исходный код и поддержку сборки для создания библиотеки vulkanscenegraph. Быстрые ссылки на ресурсы, размещенные на веб -сайте:
- Особенности - экскурсия по функциям, которые вы найдете в проектах vulkanscenegraph и компаньона.
- Скриншоты - скриншоты из примеров vulkanscenegraph и сторонних библиотек и приложений
- Учебные пособия-Учебное пособие Mulit-Part, которое перенесет вас от знакомства с графиками сцен до мультипоточного и оптимизации.
- Документация - Справочная документация с созданием доксигена и ссылки на сторонние учебные материалы.
- Обсуждение - дискуссионный форум, организованный на GitHub.
- Услуги - Список компаний, связанных с проектом VulkansCeneGraph, который может предоставлять профессиональные услуги
Ссылки на сопутствующие проекты, которые предлагают дополнительные функции
Размещен как часть VSG-DEV:
- VSGXCHANGE Чтение и написание 3 -го изображений и 3D -моделей и поддержки HTTP.
- Vsgexamples Tests & Примеры.
- Библиотека интеграции OSG2VSG OpenSceneGraph, которая позволяет преобразовать график сцены OSG в VSG и использование погрузчиков OpenSceneGraph.
- Интеграция vsgimgui imgui Включение пользовательского интерфейса в графическом окне.
- Интеграция QT VSGQT с vulkanscenegraph.
- VSGPoints 3D -точка нагрузка и рендеринг для VulkansCeneGraph с поддержкой подключения базы данных и масштабируемости до миллиардов точек.
- Плагин vsgunity для Unity, который обеспечивает экспорт в нативный бинарный/ASCII формат vulkanscenegraph.
- Myfirstvsgapplication простое автономное приложение VSG, которое можно использовать в качестве шаблона для ваших собственных приложений.
- Проект шаблона vsgframework, который использует Cmake FetchContent, чтобы привлечь все основные библиотеки, связанные с вурансцентриграфом и зависимостями, и собирает их вместе.
Общественные проекты:
- Интеграция VSGSDL SDL с vulkanscenegraph.
- Интеграция VSGVR OpenVR с vulkanscenegraph.
- 3D -плитка VSGCS и интеграция ионов цезия
- Интеграция vsgearth osgearth
- Rocky 3D -двигатель геопространственного нанесения (Vulkan / C ++ 17 / VSG). Пеликан Картинг преемника в Осгеерт.
Быстрый гид по строительству VSG
Предварительные условия:
- Требуется: C ++ 17 Компилятор, т.е. G ++ 7,3 или более поздней версии, Clang 6.0 или более поздней версии, Visual Studio S2017 или более поздней версии.
- Требуется: Cmake 3.7 или позже.
- Требуется: Vulkan 1.1 или более поздней версии.
- Необязательно: GLSLANG 14.0 или позже. Требуется только в том случае, если потребуется компиляция шейдера во время выполнения.
Известно, что вышеупомянутые версии зависимостей работают, поэтому они были установлены как текущий минимум, возможно, можно было бы построить против более старых версий. Если вы находите успех с более старыми версиями, сообщите нам об этом, и мы можем обновить информацию о версии.
В то время как вы можете установить библиотеки и заголовки развития Vulkan и GLSLANG из сторонних репозиторисов, которые могут быть старше, поэтому для последних версий вы также можете использовать Vulkansdk, предоставленную Lunarg. Вы можете скачать vulkansdk из Lunarg, распаковать в локальный каталог и установить переменную среды Vulkan_sdk в каталог включения/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.