Describes the state of a raycast. More...
#include <raycast.h>
Public Member Functions | |
RaycastState (const core::line3d< f32 > &shootline, bool objects_pointable, bool liquids_pointable, const std::optional< Pointabilities > &pointabilities) | |
Public Attributes | |
core::line3d< f32 > | m_shootline |
Shootline of the raycast. | |
voxalgo::VoxelLineIterator | m_iterator |
Iterator to store the progress of the raycast. | |
v3s16 | m_previous_node |
Previous tested node during the raycast. | |
std::priority_queue< PointedThing, std::vector< PointedThing >, RaycastSort > | m_found |
bool | m_objects_pointable |
bool | m_liquids_pointable |
const std::optional< Pointabilities > | m_pointabilities |
core::aabbox3d< s16 > | m_search_range { 0, 0, 0, 0, 0, 0 } |
The code needs to search these nodes around the center node. | |
bool | m_initialization_needed = true |
If true, the Environment will initialize this state. | |
Describes the state of a raycast.
RaycastState::RaycastState | ( | const core::line3d< f32 > & | shootline, |
bool | objects_pointable, | ||
bool | liquids_pointable, | ||
const std::optional< Pointabilities > & | pointabilities ) |
Creates a raycast.
objects_pointable | if false, only nodes will be found |
liquids | pointable if false, liquid nodes won't be found |
std::priority_queue<PointedThing, std::vector<PointedThing>, RaycastSort> RaycastState::m_found |
This priority queue stores the found pointed things waiting to be returned.
Referenced by Environment::continueRaycast().
bool RaycastState::m_initialization_needed = true |
If true, the Environment will initialize this state.
Referenced by Environment::continueRaycast().
voxalgo::VoxelLineIterator RaycastState::m_iterator |
Iterator to store the progress of the raycast.
Referenced by Environment::continueRaycast().
bool RaycastState::m_liquids_pointable |
Referenced by Environment::continueRaycast().
bool RaycastState::m_objects_pointable |
Referenced by Environment::continueRaycast().
const std::optional<Pointabilities> RaycastState::m_pointabilities |
Referenced by Environment::continueRaycast().
v3s16 RaycastState::m_previous_node |
Previous tested node during the raycast.
Referenced by Environment::continueRaycast().
core::aabbox3d<s16> RaycastState::m_search_range { 0, 0, 0, 0, 0, 0 } |
The code needs to search these nodes around the center node.
Referenced by Environment::continueRaycast().
core::line3d<f32> RaycastState::m_shootline |
Shootline of the raycast.
Referenced by Environment::continueRaycast().