The VulkanSceneGraph project is now under-way and will be a multi-year effort to develop an open source, next generation scene graph based on the Vulkan graphics API and modern C++.
The project is under the auspices of Robert Osfield, principal author and project lead of the OpenSceneGraph. The new scene graph is the successor to the OpenSceneGraph, building upon all the knowledge and skills accumulated through the OpenSceneGraph's 20 years history. The OpenSceneGraph and VulkanSceneGraph are both members of the same family, the DNA of the best elements of the OpenSceneGraph will be evident in the new scene graph. If you like the OpenSceneGraph we hope you'll love the VulkanSceneGraph.
The OpenSceneGraph will remain supported and will co-exist with the new scene graph for many years to come. While not API compatible the two scene graphs will evolve in parallel and development will be done in a way that will help application developers make the transition to the VulkanSceneGraph if and when they are ready.
Development of the VulkanSceneGraph will follow the spiral model of software development with three phases leading up to the 1.0 stable release. These phases will broadly be:
-
Exploration Phase : Running June through August 2018 to research the technologies and techniques to be used
-
Development Phase : September 2018 onwards, will establish core scene graph classes with Vulkan support. Hopefully alpha functionality by the end of 2018/early 2019
-
Refinement Phase : Timing depends upon phase two, with broad aim for beta functional in 2019. The core scene graph will be tested in graphics application development, with refinements made to support working towards 1.0 stable release
We have just entered the Exploration Phase so the project is in it's infancy. While we have many ideas on what approaches to take we don't yet have a design document to share. The design and more detailed project development plans will be a product of the Exploration Phase which we'll publish at the end of August 2018.
During the Exploration Phase we plan to quietly get on with looking into what Vulkan and modern C++ has to offer, develop tests and prototypes of features to investigate what approaches to take in the subsequent phases. We aren't looking to involve the wider community at a day to day level in this process, or looking to collate a wish list of features: the plan is to keep focused on scoping out the technology and techniques.
As the project progresses through the phases it will becomes more concrete in design and implementation, and with this opportunities for the community to contribute to testing, development and refinement will open up. Developing a new professional grade scene graph is not a light undertaking so we appreciate your patience and support.
Robert Osfield, VulkanSceneGraph project lead, 1st June 2018