Discussion:
[osg-users] Announcement: VulkanSceneGraph and SceneGraphTestBed!
Robert Osfield
2018-06-01 17:22:40 UTC
Permalink
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:

https://github.com/openscenegraph/VulkanSceneGraph

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.

https://github.com/openscenegraph/SceneGraphTestBed

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 :-)
Rowley, Marlin R
2018-06-04 15:00:31 UTC
Permalink
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)
***@lmco.com

-----Original Message-----
From: osg-users <osg-users-***@lists.openscenegraph.org> On Behalf Of Robert Osfield
Sent: Friday, June 1, 2018 12:23 PM
To: OpenSceneGraph Users <osg-***@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:

https://github.com/openscenegraph/VulkanSceneGraph

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.

https://github.com/openscenegraph/SceneGraphTestBed

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-***@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Andrew Lowe
2018-08-04 10:33:02 UTC
Permalink
Post by Robert Osfield
Hi All,
I am delighted to say that today I began work on VulkanSceneGraph,
[snip]
Post by Robert Osfield
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.
[snip]

Dear all,
The above announcement has prompted me to up my skills with C++. I
started using it back in the days of the release of the HP & SGI STL
implementations, the mid to late '90s but always managed to use it as a
"super" C. I now want to learn all the new stuff and become buzz word
compliant.

To this end, what books would people suggest I invest in to get the
latest info and the most out of the latest bits & pieces? What I aim to
be able to do is understand what Robert is doing with the new Vulcan
scenegraph, understand Boost etc and in turn make use of them. On the
other hand I don't want/need to be someone who can criticise the latest
decisions be the various standards committees :)

Any thoughts, pointers would be greatly appreciated,

Andrew

p.s. A viewing of the various online stuff from MIT/Stanford/Berkley etc
is also on the to do list.
michael kapelko
2018-08-06 10:21:13 UTC
Permalink
Hi. I think you should post this question in a new thread.
Post by Andrew Lowe
Post by Robert Osfield
Hi All,
I am delighted to say that today I began work on VulkanSceneGraph,
[snip]
Post by Robert Osfield
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.
[snip]
Dear all,
The above announcement has prompted me to up my skills with C++. I
started using it back in the days of the release of the HP & SGI STL
implementations, the mid to late '90s but always managed to use it as a
"super" C. I now want to learn all the new stuff and become buzz word
compliant.
To this end, what books would people suggest I invest in to get the
latest info and the most out of the latest bits & pieces? What I aim to
be able to do is understand what Robert is doing with the new Vulcan
scenegraph, understand Boost etc and in turn make use of them. On the
other hand I don't want/need to be someone who can criticise the latest
decisions be the various standards committees :)
Any thoughts, pointers would be greatly appreciated,
Andrew
p.s. A viewing of the various online stuff from MIT/Stanford/Berkley etc
is also on the to do list.
_______________________________________________
osg-users mailing list
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Paweł KsięŌopolski
2018-08-09 15:43:54 UTC
Permalink
Hi Robert,

If you are still in sponge mode - I just released new version of my Vulkan renderer, where you can find few articles linked from README.md.

These articles describe some of the important aspects of my renderer architecture, that you may find inspiring, interesting or just simply wrong ;) :

https://github.com/pumexx/pumex

Cheers,
Paweł Księżopolski

------------------
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=74482#74482
Robert Osfield
2018-08-09 17:21:51 UTC
Permalink
Hi Pawel,

On Thu, 9 Aug 2018 at 17:59, Paweł Księżopolski
Post by Paweł KsięŌopolski
If you are still in sponge mode - I just released new version of my Vulkan renderer, where you can find few articles linked from README.md.
https://github.com/pumexx/pumex
Thanks for the update.

I already have check out of pumex, it is indeed a good reference, one
of the best libs on top of Vulkan I've come across ;-)

Just did an update and build, latest pumex master builds and runs
cleanly on my linux system.

I'm still learning Vulkan, thinking lots, experimenting. So still in
sponge mode. What I have on screen is very primitive, it'll be a
while before I can do anything as impressive as pumex can.

Cheers,
Robert.

Loading...