[osg-users] EXTERNAL: Announcement: VulkanSceneGraph and SceneGraphTestBed!

Rowley, Marlin R marlin.r.rowley at lmco.com
Mon Jun 4 08:00:31 PDT 2018

This will be awesome! I can't wait!

Marlin Rowley
Software Engineer, Staff

Missiles and Fire Control
972-603-1931 (office)
214-926-0622 (mobile)
marlin.r.rowley at lmco.com

-----Original Message-----
From: osg-users <osg-users-bounces at lists.openscenegraph.org> On Behalf Of Robert Osfield
Sent: Friday, June 1, 2018 12:23 PM
To: OpenSceneGraph Users <osg-users at lists.openscenegraph.org>
Subject: EXTERNAL: [osg-users] Announcement: VulkanSceneGraph and SceneGraphTestBed!

Hi All,

I am delighted to say that today I began work on VulkanSceneGraph, an all new scene graph that builds upon Vulkan and modern C++.  This new project can be thought of a new family member, the child of OpenSceneGraph project.  As it's a family member I've created the project repository alongside the OpenSceneGraph within the github openscenegraph account:


Please have a read through the README.md on the above repo as this will explain a little about the project and where my focus will be for the next three months work wise conducting an Exploration Phase to scope out the technology and techniques that will go into project once we start coding the scene graph itself.

This new project will co-exist with the OpenSceneGraph for years to come.  I will remain as project lead of the OpenSceneGraph, I will fix bugs, push out releases, generally chase everybody to test things and also help out with general support here - continue to do what I've done for nearly two decades.  Like OpenGL the OpenSceneGraph is still relevant to many application developers and I expect it to remain a corner stone of many application for years to come.  Both OpenGL and OpenSceneGraph are very mature bits of software now so there isn't a need to keep pushing hard on new features, so I planning for a stable period when maintenance is increasingly the focus rather new new bells and whistles.

You no doubt will have lots of questions, but at this point I can't provide too many answers on the technical front as we are so early in the project the technical details are yet to solidified - this is what my next three months work will be all about.  I'll be learning everything I can about Vulkan, working out how best to encapsulate it's features them in a scene graph.

I also will be looking into what features of modern C++ can bring to the table to make our lives as graphics developers easier and more productive, C++11, 14 and 17 are all under consideration.

There also all the scene graph design elements that have been bubbling around in my head for the last five years that I'd like to try out to see what might be possible.

Once this Exploration Phase is complete I will have a more concrete idea of what needs to be done next and will write a design document to share with the community to give everyone a clearer idea of where we are going next.  During this phase I will spend most of my time working quietly away learning, testing, thinking, learning, testing, thinking.  It's not a period that I am looking for lots of external input on, the best software designs don't come from committees but from a coherent and calm contemplation.  I guess I need to go find myself a mediation rock on Skellig Michael :-)

If you are keen to help out VulkanSceneGraph then this is something you can help out with right away, without needing me to complete any design docs or to publish any code.  What all good software needs during development and through into maintenance phase are unit tests that test features and performance.  To this end I can created a new SceneGraphTestBed repository to collect together in one place a set of data and test programs that we can run to test out features and performance of both the OpenSceneGraph and the VulkanSceneGraph once it starts becoming usable.


I don't have any data or test programs written at this point, so this repo is an empty room waiting to be filled.  My thought is that we would initially just create OpenSceneGraph based test data and programs that test various features and performance of the OpenSceneGraph.  If you have a particular tests that illustrate the problems areas that you have in performance, or things that are awkward to implement but shouldn't be then you could submit this as unit tests that stress the OpenSceneGraph.

As the VulkanSceneGraph project evolves we tackle recreating these OpenSceneGraph test programs using the new scene graph and the have an ability to compare OpenGL/OpenSceneGraph with Vulkan/VulkanSceneGraph, as well as have a set of unit tests that we can run prior to each release of the OpenScenGraph or VulkanSceneGraph.

I don't have any specific plans of how to layout or manage the SceneGraphTestBed, if you feel like it's something you'd like to pick up the lead on then let us know - I'm already have plenty to juggle myself so being able to let others manage sub projects is great way of helping us all be as productive as we can be.

Thanks for your support and patience - cause I know we all want it yesterday!

Robert Osfield
Newly minted VulkanSceneGraph Project Lead :-) _______________________________________________
osg-users mailing list
osg-users at lists.openscenegraph.org

More information about the osg-users mailing list