#include </var/dev/u3d/stable/Source/Urho3D/Graphics/Octree.h>
|
| Octant (const BoundingBox &box, unsigned level, Octant *parent, Octree *root, unsigned index=ROOT_INDEX) |
| Construct.
|
|
virtual | ~Octant () |
| Destruct. Move drawables to root if available (detach if not) and free child octants.
|
|
Octant * | GetOrCreateChild (unsigned index) |
| Return or create a child octant.
|
|
void | DeleteChild (unsigned index) |
| Delete child octant.
|
|
void | InsertDrawable (Drawable *drawable) |
| Insert a drawable object by checking for fit recursively.
|
|
bool | CheckDrawableFit (const BoundingBox &box) const |
| Check if a drawable object fits.
|
|
void | AddDrawable (Drawable *drawable) |
| Add a drawable object to this octant.
|
|
void | RemoveDrawable (Drawable *drawable, bool resetOctant=true) |
| Remove a drawable object from this octant.
|
|
const BoundingBox & | GetWorldBoundingBox () const |
|
const BoundingBox & | GetCullingBox () const |
| Return bounding box used for fitting drawable objects.
|
|
unsigned | GetLevel () const |
| Return subdivision level.
|
|
Octant * | GetParent () const |
| Return parent octant.
|
|
Octree * | GetRoot () const |
| Return octree root.
|
|
unsigned | GetNumDrawables () const |
| Return number of drawables.
|
|
bool | IsEmpty () |
| Return true if there are no drawable objects in this octant and child octants.
|
|
void | ResetRoot () |
| Reset root pointer recursively. Called when the whole octree is being destroyed.
|
|
void | DrawDebugGeometry (DebugRenderer *debug, bool depthTest) |
|
|
void | Initialize (const BoundingBox &box) |
| Initialize bounding box.
|
|
void | GetDrawablesInternal (OctreeQuery &query, bool inside) const |
| Return drawable objects by a query, called internally.
|
|
void | GetDrawablesInternal (RayOctreeQuery &query) const |
| Return drawable objects by a ray query, called internally.
|
|
void | GetDrawablesOnlyInternal (RayOctreeQuery &query, PODVector< Drawable * > &drawables) const |
| Return drawable objects only for a threaded ray query, called internally.
|
|
void | IncDrawableCount () |
| Increase drawable object count recursively.
|
|
void | DecDrawableCount () |
| Decrease drawable object count recursively and remove octant if it becomes empty.
|
|
|
BoundingBox | worldBoundingBox_ |
| World bounding box.
|
|
BoundingBox | cullingBox_ |
| Bounding box used for drawable object fitting.
|
|
PODVector< Drawable * > | drawables_ |
| Drawable objects.
|
|
Octant * | children_ [NUM_OCTANTS] {} |
| Child octants.
|
|
Vector3 | center_ |
| World bounding box center.
|
|
Vector3 | halfSize_ |
| World bounding box half size.
|
|
unsigned | level_ |
| Subdivision level.
|
|
unsigned | numDrawables_ {} |
| Number of drawable objects in this octant and child octants.
|
|
Octant * | parent_ |
| Parent octant.
|
|
Octree * | root_ |
| Octree root.
|
|
unsigned | index_ |
| Octant index relative to its siblings or ROOT_INDEX for root octant.
|
|
◆ DrawDebugGeometry()
void Urho3D::Octant::DrawDebugGeometry |
( |
DebugRenderer * |
debug, |
|
|
bool |
depthTest |
|
) |
| |
Draw bounds to the debug graphics recursively.
◆ GetWorldBoundingBox()
const BoundingBox & Urho3D::Octant::GetWorldBoundingBox |
( |
| ) |
const |
|
inline |
Return world-space bounding box.
The documentation for this class was generated from the following files:
- /var/dev/u3d/stable/Source/Urho3D/Graphics/Octree.h
- /var/dev/u3d/stable/Source/Urho3D/Graphics/Octree.cpp