Jump to content
  • Advertisement
Sign in to follow this  
Specchum

Open Scene Graph vs Nvidia Scene Graph

This topic is 4466 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

I'm in the process of switching my engine pipeline to a scene graph implementation. I've decided to go for a publicly available scene graph library as I'm short on time. At the moment I'm unable to choose between openScenGraph and nvSG. I would prefer some sort of cross platform support (ideally for both openGL and directX), shader support, ease of use, good documentation and tools to support the asset pipeline. In the near future I hope to shift to managed code (specifically C#) and was wondering if either of the SDK's plan to support C# as well. Would like to hear people's experience on the 2 sdk's and their recommendations on the same.

Share this post


Link to post
Share on other sites
Advertisement
I've tried OSG before and whilst I can see its potential I found the lack of any decent documentation and samples to be very restrictive. I spent so much time pokeing and prodding it to try and get it to do what I wanted that I never got any actual game code written and in the end gave up due to frustration. Just something to keep in mind.

Share this post


Link to post
Share on other sites
That's certainly one of my concerns. I'd rather write my own tiny scene graph implementation if it gets the job rather than pour over mounds of incomprehensible documentation and not get anywhere in the process. Keeping my options open though...

Share this post


Link to post
Share on other sites
I've investigated both of these in the past, they are both similar in terms of OO design. They both use at there core the design patterns composite design pattern for the structure of the scene graph and the visitor pattern for working with the scene graph.

They do differ of-course and from that time I checked Nvidia's SG SDK is more lightweight and more tailored/optimized for nvidia cards (but not limited to), OSG is huge library encompassing many things (while still related to graphics).

Also if i remember correctly OSG internally converts the user's SG into a more optimized representation for rendering, with a visitor they convert the SG into an Octree. Nvidia's SG also does some kind of optimizations but not the same as SG if i remember correctly.

Remember this though when I checked them out it was some time ago, also I think traditional SGs are not very good for games anymore. They try to take on to many responsibilities, throwing everything into one big polymorphic Tree/DAG. The best thing is to have multiple representations/views each specialized for the task at hand. Neither SDK really do that, they're more traditional SGs.

[Edited by - snk_kid on September 18, 2006 8:11:58 AM]

Share this post


Link to post
Share on other sites
Guest Anonymous Poster
another lightweight and accomplished (but basically unmaintained) scene graph implementation is available as part of the PLIB library, which is also used within FlightGear for exactly this purpose.

Share this post


Link to post
Share on other sites
There's also the Wild Magic engine which isn't so much an engine but a scene-graph implementation. It was made by one of the primary architects of the NetImmerse (now Gamebryo) engine.

There's also a couple of free engines that use scene-graphs such as Irrlicht and Ogre.

Share this post


Link to post
Share on other sites
Quote:
Original post by snk_kid
Remember this though when I checked them out it was some time ago, also I think traditional SGs are not very good for games anymore. They try to take on to many responsibilities, throwing everything into one big polymorphic Tree/DAG. The best thing is to have multiple representations/views each specialized for the task at hand. Neither SDK really do that, they're more traditional SGs.


Scene Graphs - just say no

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!