Animation skinning with skeleton, in OSG itself. http://trac.openscenegraph.org/projects ... inning.cpp
Updated yesterday.
Rumors?
- psi29a
- Posts: 5362
- Joined: 29 Sep 2011, 10:13
- Location: Belgium
- Gitlab profile: https://gitlab.com/psi29a/
- Contact:
Re: Rumors?
Then they need to update their faq: http://trac.openscenegraph.org/projects ... upport/FAQ
Latest news from osgCal's home:Is there support for skeletal animation?
Check out osgCal which integrates the OSG with Cal3D, see http://osgcal.sourceforge.net/
News?
May 4, 2007
osgCal2 0.3.0 preliminary version availble!
Re: Rumors?
Because I'm curious like that, I made a benchmark today.
Rendering 100 copies of this tree, which has 52 batches (so over 5k batches total). It's a simple static mesh using vertex colors, and alpha blending for the depth-sorted leaves.
Both tests were using the fixed-function pipeline only, and the materials (or statesets in OSG) are shared across tree instances. The tests were set up using the same camera position and FOV.
As expected, the Ogre version was constantly hitting 100% CPU on a single core. The OSG version was using ~22% total CPU distributed evenly across all 4 cores.
Ogre, StaticGeometry: 8 FPS
Ogre, Entities: 5 FPS
OSG: 24 FPS
The OSG rendering loop looks very pleasant in ApiTrace. It's using display lists, so when rendering the same drawable again and again, it just has to set up the modelview matrix, and call the display list:
There's two options for rendering with an osg::Geometry, one using display lists (deprecated in GL3) and one using vertex buffer objects, but I couldn't find any performance difference between them.
Now I can't help but feel curious how Ogre 2.x would perform here, but I'm not going to write a third nif loader... at least not now.
Rendering 100 copies of this tree, which has 52 batches (so over 5k batches total). It's a simple static mesh using vertex colors, and alpha blending for the depth-sorted leaves.
Both tests were using the fixed-function pipeline only, and the materials (or statesets in OSG) are shared across tree instances. The tests were set up using the same camera position and FOV.
As expected, the Ogre version was constantly hitting 100% CPU on a single core. The OSG version was using ~22% total CPU distributed evenly across all 4 cores.
Ogre, StaticGeometry: 8 FPS
Ogre, Entities: 5 FPS
OSG: 24 FPS
The OSG rendering loop looks very pleasant in ApiTrace. It's using display lists, so when rendering the same drawable again and again, it just has to set up the modelview matrix, and call the display list:
Code: Select all
8951 glLoadMatrixd(m = {-0.6005843105276247, 0.7989320249646613, -0.03171893531236258, 0, -0.7397056921716324, -0.5702468243152931, -0.3572870640479368, 0, -0.3035357094879036, -0.1911183362755142, 0.9334558714139775, 0, 181.7426846593646, -156.1460129590916, -3209.728799778871, 1})
8952 glCallList(list = 32)
Now I can't help but feel curious how Ogre 2.x would perform here, but I'm not going to write a third nif loader... at least not now.
Re: Rumors?
To be clear, that's 22% total across all four cores (i.e. approx 5.5% per core) or is that 22% per core (for a total of 88%)?
Re: Rumors?
22% of all the processing power available, so if evenly distributed, each core is also using 22% of its respective capacity.
Re: Rumors?
Is that a tree from in the morrowind data? What's it's name?
Re: Rumors?
That's meshes\f\flora_tree_02.nif from Morrowind.bsa.
Re: Rumors?
And Ogre is using 100% per core, so 400% total SCNRSslaxx wrote:To be clear, that's 22% total across all four cores (i.e. approx 5.5% per core) or is that 22% per core (for a total of 88%)?
Re: Rumors?
Woot!Ogre, StaticGeometry: 8 FPS
Ogre, Entities: 5 FPS
OSG: 24 FPS
Re: Rumors?
So, it's great that OSG is getting 3x the fps of Ogre here, but I am curious as to why it's only able to render at 24fps when it's just rendering one seemingly simple model? Should't we be able to get hundreds of fps out of our renderer for such a simple scene?scrawl wrote:Ogre, StaticGeometry: 8 FPS
Ogre, Entities: 5 FPS
OSG: 24 FPS
EDIT: I'm assuming I'm just missing part of what went into the test- was this only using software rendering? Or on an intel card? Or some other restriction?