18#ifndef INCLUDED_VERTEXPATHFINDER
19#define INCLUDED_VERTEXPATHFINDER
130 void DebugRenderGraph(
const CSimContext& simContext,
const std::vector<Vertex>& vertexes,
const std::vector<Edge>& edges,
const std::vector<Square>& edgeSquares);
VertexPathfinderDebugOverlay g_VertexPathfinderDebugOverlay
Definition: VertexPathfinder.cpp:53
Definition: FixedVector2D.h:25
A simple fixed-point number class.
Definition: Fixed.h:120
Contains pointers to various 'global' objects that are needed by the simulation code,...
Definition: SimContext.h:33
A simplified syntax for accessing entity components.
Definition: CmpPtr.h:56
Obstruction manager: provides efficient spatial queries over objects in the world.
Definition: ICmpObstructionManager.h:61
Pathfinder goal.
Definition: PathGoal.h:33
This interface accepts renderable objects.
Definition: Scene.h:90
There are several vertex pathfinders running asynchronously, so their debug output might conflict.
Definition: VertexPathfinder.h:122
std::vector< SOverlayLine > m_DebugOverlayShortPathLinesSubmitted
Definition: VertexPathfinder.h:136
void RenderSubmit(SceneCollector &collector)
Definition: VertexPathfinder.cpp:1029
void DebugRenderGoal(const CSimContext &simContext, const PathGoal &goal)
Definition: VertexPathfinder.cpp:894
void SetDebugOverlay(bool enabled)
Definition: VertexPathfinder.h:125
void DebugRenderGraph(const CSimContext &simContext, const std::vector< Vertex > &vertexes, const std::vector< Edge > &edges, const std::vector< Square > &edgeSquares)
Definition: VertexPathfinder.cpp:929
std::atomic< bool > m_DebugOverlay
Definition: VertexPathfinder.h:133
void DebugRenderEdges(const CSimContext &simContext, bool visible, CFixedVector2D curr, CFixedVector2D npos)
Definition: VertexPathfinder.cpp:1006
std::vector< SOverlayLine > m_DebugOverlayShortPathLines
Definition: VertexPathfinder.h:135
Definition: VertexPathfinder.h:76
std::vector< Edge > m_EdgesUnaligned
Definition: VertexPathfinder.h:100
Grid< NavcellData > *const & m_TerrainOnlyGrid
Definition: VertexPathfinder.h:95
std::vector< Square > m_EdgeSquares
Definition: VertexPathfinder.h:112
VertexPathfinder(const u16 &gridSize, Grid< NavcellData > *const &terrainOnlyGrid)
Definition: VertexPathfinder.h:78
const u16 & m_GridSize
Definition: VertexPathfinder.h:94
VertexPathfinder(const VertexPathfinder &)=delete
std::vector< Edge > m_Edges
Definition: VertexPathfinder.h:111
std::vector< EdgeAA > m_EdgesBottom
Definition: VertexPathfinder.h:103
std::vector< EdgeAA > m_EdgesLeft
Definition: VertexPathfinder.h:101
std::vector< EdgeAA > m_EdgesRight
Definition: VertexPathfinder.h:102
std::vector< EdgeAA > m_EdgesTop
Definition: VertexPathfinder.h:104
std::vector< Vertex > m_Vertexes
Definition: VertexPathfinder.h:108
WaypointPath ComputeShortPath(const ShortPathRequest &request, CmpPtr< ICmpObstructionManager > cmpObstructionManager) const
Compute a precise path from the given point to the goal, and return the set of waypoints.
Definition: VertexPathfinder.cpp:534
VertexPathfinder(VertexPathfinder &&o)
Definition: VertexPathfinder.h:80
Definition: VertexPathfinder.h:66
fixed c1
Definition: VertexPathfinder.h:68
CFixedVector2D p0
Definition: VertexPathfinder.h:67
Definition: VertexPathfinder.h:50
CFixedVector2D p1
Definition: VertexPathfinder.h:51
CFixedVector2D p0
Definition: VertexPathfinder.h:51
Definition: Pathfinding.h:44
Definition: VertexPathfinder.h:58
CFixedVector2D p0
Definition: VertexPathfinder.h:59
CFixedVector2D p1
Definition: VertexPathfinder.h:59
Definition: VertexPathfinder.h:31
fixed h
Definition: VertexPathfinder.h:40
u8 status
Definition: VertexPathfinder.h:42
u16 pred
Definition: VertexPathfinder.h:41
u8 quadOutward
Definition: VertexPathfinder.h:44
u8 quadInward
Definition: VertexPathfinder.h:43
CFixedVector2D p
Definition: VertexPathfinder.h:39
fixed g
Definition: VertexPathfinder.h:40
@ UNEXPLORED
Definition: VertexPathfinder.h:34
@ CLOSED
Definition: VertexPathfinder.h:36
@ OPEN
Definition: VertexPathfinder.h:35
Returned path.
Definition: Pathfinding.h:67
uint8_t u8
Definition: types.h:37
uint16_t u16
Definition: types.h:38