VulkanSceneGraph (VSG), is a modern, cross-platform, high-performance scene graph library built upon Vulkan graphics/compute API. The software is written in C++17 and follows the CppCoreGuidelines and FOSS Best Practices. The source code is published under the MIT License, with the exception of vulkan.h, used for Vulkan extensions, which is under Apache License 2.0. This repository contains C++ headers and source and CMake build scripts to build the libvsg library. Additional support libraries and examples are provided in separate repositories, links to these are provided below. The software currently builds under Linux (desktops variants through to Jetson & Raspberry Pi), Windows (VisualStudio, MinGW & Cygwin), Android, and macOS & iOS (using MoltenVk).

Features

  • Robust, thread safe memory management with custom block memory allocator and high performance smart pointers that are smaller and faster than std equivalents
  • GLSL style maths class - no need for 3rd party libs like GLM
  • Coherent Object model with easy to use and extend serialization, including native binary and ascii file support for all scene graph objects
  • C++ classes that encapsulate Vulkan Graphics and Compute C API in robust and convenient form, with robust resource management, including serialization support. Complexities and verbose setup usually associated with Vulkan are all dealt with for you so you can concentrate on your compute and graphics tasks
  • Vulkan extensions for ray tracing and mesh shading
  • Built in GLSL and SPIR-V shaders for Physics Based Rendering. phong and flat shading and text rendering
  • GLSL shader compilation to SPIR-V, using compiled in glslang, so users don’t need to convert offline and can leverage #pragma(tic) shader composition
  • Class design focused on performance of scene graph operations by minimizing CPU bottlenecks: optimizing data density, layout, cache coherency and minimizing branching leading to better utilization of modern CPU and memory architectures. Traversals through to IO operations can be up to 10 times faster than with the OpenSceneGraph

Project Samples

Project Activity

See All Activity >

License

MIT License

Follow VulkanSceneGraph

VulkanSceneGraph Web Site

Other Useful Business Software
Gen AI apps are built with MongoDB Atlas Icon
Gen AI apps are built with MongoDB Atlas

Build gen AI apps with an all-in-one modern database: MongoDB Atlas

MongoDB Atlas provides built-in vector search and a flexible document model so developers can build, scale, and run gen AI apps without stitching together multiple databases. From LLM integration to semantic search, Atlas simplifies your AI architecture—and it’s free to get started.
Start Free
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of VulkanSceneGraph!

Additional Project Details

Operating Systems

Linux, Mac, Windows

Programming Language

C++

Related Categories

C++ Libraries, C++ Raspberry Pi Software

Registered

2024-08-29