Page 1 of 1

CQuadTreeSceneNode

Posted: Mon Sep 05, 2005 8:51 pm
by Paulo R. Oliveira
Its a custom scenenode i wrote to perform culling purposes on my project... Its not all finished. It needs a better addNode() method. In this test im showing a forest of 10.000 billboards at 150~200 fps with my GForce2. Im using DevCpp, directx9 and irrlicht 0.12 to test it.

The idea is to create sub-scenenodes like a tree, test their boundingboxes intersection with frustrum and hide the subnodes whos boundingbox isnt in the view. Its a lot faster than trying to hide each node.

I guess this node can be used with billboards or litle (detail) meshes.


http://geocities.yahoo.com.br/paulo_cmv ... neNode.zip

Posted: Mon Sep 05, 2005 9:15 pm
by etcaptor
App crash, when use Irrlicht.dll ver o12.0 for Win32-gcc.

Posted: Mon Sep 05, 2005 10:30 pm
by Guest
- D3DX92ab.dll and D3DX81ab.dll is necessary to run this, or recompile with opengl.

Posted: Tue Sep 06, 2005 12:53 pm
by Paulo R. Oliveira
Image

Posted: Tue Sep 06, 2005 8:52 pm
by Guest
I haven't read the source code for the irrlicht octree, but surely if everything is on the same level that there will only be 4 child nodes when the octree partitions it, and not 8. Which by definition would make it a quadtree anyway...

Posted: Tue Sep 06, 2005 9:08 pm
by FlyHigh
Previous post was mine,

Posted: Thu Sep 08, 2005 10:47 am
by Guest
>>I haven't read the source code for the irrlicht octree, but surely if >>everything is on the same level that there will only be 4 child nodes >>when the octree partitions it, and not 8. Which by definition would make >>it a quadtree anyway...

Its not the same thing...

My scenenode is designed to classify and cull other scenenodes (in screenshot you see billboards).

To use a OctreeSceneNode to produce a 10.000 trees forest, youll need to model a very large (single) model with (a waste of memory). With quadtree youll need only one tree model. Create a scenenode everywhere you need and then add it to quadtree. Im using it specially with billboards (you cannot use octreescenenode with billboards). I not tested it very well, but in teory you can use it to cull all detail scenenodes in your project, also if nodes have built-in culling enabled (its not the case for billboards).

Posted: Sat Sep 24, 2005 4:59 pm
by CZestmyr
Good work man! I may have a need for your class. I will definitely take a look at it.