#include <HFTracer.h>
◆ CHFTracer()
| CHFTracer::CHFTracer |
( |
CTerrain & |
terrain | ) |
|
◆ CellIntersect()
| bool CHFTracer::CellIntersect |
( |
int |
cx, |
|
|
int |
cz, |
|
|
const CVector3D & |
origin, |
|
|
const CVector3D & |
dir, |
|
|
float & |
dist |
|
) |
| const |
|
private |
◆ PatchRayIntersect()
Intersects ray with a single patch.
The ray is a half-infinite line starting at origin with direction dir (not required to be a unit vector).. The patch is treated as a collection of two-sided triangles, corresponding to the terrain tiles.
If there is an intersection, returns true; and if out is not NULL, it is set to the intersection point. This is guaranteed to be the earliest tile intersected (starting at origin), but not necessarily the earlier triangle inside that tile.
This partly duplicates RayIntersect, but it only operates on a single patch, and it's more precise (it uses the same tile triangulation as the renderer), and tries to be more numerically robust.
◆ RayIntersect()
◆ m_CellSize
| float CHFTracer::m_CellSize |
|
private |
◆ m_Heightfield
| const u16* CHFTracer::m_Heightfield |
|
private |
◆ m_HeightScale
| float CHFTracer::m_HeightScale |
|
private |
◆ m_MapSize
| size_t CHFTracer::m_MapSize |
|
private |
◆ m_Terrain
The documentation for this class was generated from the following files:
- /home/docker/jenkins/workspace/technical-docs/source/graphics/HFTracer.h
- /home/docker/jenkins/workspace/technical-docs/source/graphics/HFTracer.cpp