Advertisement Jump to content
Sign in to follow this  

oct problem

This topic is 959 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 don't know  when to  split,  more split or less split?  why?

Is the strategy is to place an object to a node as deep as possible ? why? 

if I insert a very small object into the oct ,  should the tree be split  many times?   


Share this post

Link to post
Share on other sites

I... sincerely believe you might need to review on trees and data structures.

Octrees are speciallized trees that split up into eight nodes as you go down. A node is a SET that may contain other nodes. The lowest level node is called a leaf. The leaf is where your actual data lives. Conceptually, it does not matter how many nodes a tree splits up. But for the purpose of an Octree, it's a spatial tree. And it's incredibly trivial to split a cube into eight smaller boxes.


There are a few notes to take for an octree.


You need to create the reason for why the octree will split. Common options are, a max threshold of triangles, a set distance down to x levels, or the number of objects in a single leaf.


Because an Octree exists in 3D or 2D space, it can be said that if one leaf can not be seen then it's contents can not be viewed either.


And because of the Octree's set property, if a Single node can not be seen. Then all of it's eight child nodes can not be seen, then those childs offsprings can not be seen... and so on. Therefore any leafs that has that as an ancestor not in view can also not be seen.



So when you use an Octree or a Quadtree, you use it to limit the set of information you need before you commit to other operations.

Edited by Tangletail

Share this post

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

  • Advertisement

Important Information

By using, you agree to our community Guidelines, Terms of Use, and Privacy Policy. 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!