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

You Might Also Like
MongoDB Atlas runs apps anywhere Icon
MongoDB Atlas runs apps anywhere

Deploy in 115+ regions with the modern database for every enterprise.

MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
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