Skylicht Engine
Loading...
Searching...
No Matches
Skylicht::COctreeBuilder Class Reference
Inheritance diagram for Skylicht::COctreeBuilder:
Skylicht::CCollisionBuilder Skylicht::CCollisionManager

Public Member Functions

virtual void build ()
virtual void clear ()
void drawDebug ()
virtual bool getCollisionPoint (const core::line3d< f32 > &ray, f32 &outBestDistanceSquared, core::vector3df &outIntersection, core::triangle3df &outTriangle, CCollisionNode *&outNode)
virtual void getTriangles (const core::aabbox3df &box, core::array< core::triangle3df * > &result, core::array< CCollisionNode * > &nodes)
Public Member Functions inherited from Skylicht::CCollisionBuilder
void removeCollision (CGameObject *object)
void removeCollision (CCollisionNode **nodes, int count)
int findNode (CCollisionNode *node, CCollisionNode **nodes, int count)
virtual CGameObjectgetObjectWithRay (const core::line3d< f32 > &ray, f32 &outBestDistanceSquared, core::vector3df &outCollisionPoint, core::triangle3df &outTriangle, CCollisionNode *&outNode)
virtual bool getCollisionPoint (const core::vector3df &target, const core::vector3df &pos, core::vector3df &outCollisionPoint, core::triangle3df &outTriangle, CCollisionNode *&outNode)

Protected Member Functions

void constructOctree (COctreeNode *node)
void getTrianglesFromOctree (core::array< core::triangle3df * > &listTriangle, core::array< CCollisionNode * > &listCollisions, COctreeNode *node, const core::vector3df &midLine, const core::vector3df &lineVect, float halfLength)
void getTrianglesFromOctree (core::array< core::triangle3df * > &listTriangle, core::array< CCollisionNode * > &listCollisions, COctreeNode *node, const core::aabbox3df &box)

Protected Attributes

COctreeNodem_root
u32 m_minimalPolysPerNode
core::array< core::triangle3df * > m_triangles
core::array< CCollisionNode * > m_collisions
Protected Attributes inherited from Skylicht::CCollisionBuilder
core::array< CCollisionNode * > m_nodes

Member Function Documentation

◆ build()

virtual void Skylicht::COctreeBuilder::build ( )
virtual

◆ clear()

virtual void Skylicht::COctreeBuilder::clear ( )
virtual

Reimplemented from Skylicht::CCollisionBuilder.

◆ drawDebug()

void Skylicht::COctreeBuilder::drawDebug ( )
virtual

Reimplemented from Skylicht::CCollisionBuilder.

◆ getCollisionPoint()

virtual bool Skylicht::COctreeBuilder::getCollisionPoint ( const core::line3d< f32 > & ray,
f32 & outBestDistanceSquared,
core::vector3df & outIntersection,
core::triangle3df & outTriangle,
CCollisionNode *& outNode )
virtual

◆ getTriangles()

virtual void Skylicht::COctreeBuilder::getTriangles ( const core::aabbox3df & box,
core::array< core::triangle3df * > & result,
core::array< CCollisionNode * > & nodes )
virtual

The documentation for this class was generated from the following file: