diff options
Diffstat (limited to 'src/render/Occlusion.h')
-rw-r--r-- | src/render/Occlusion.h | 62 |
1 files changed, 0 insertions, 62 deletions
diff --git a/src/render/Occlusion.h b/src/render/Occlusion.h deleted file mode 100644 index e0edef53..00000000 --- a/src/render/Occlusion.h +++ /dev/null @@ -1,62 +0,0 @@ -#pragma once - -struct ActiveOccluderLine { - CVector2D origin; - CVector2D direction; - float length; -}; - -class CActiveOccluder { - -public: - ActiveOccluderLine lines[6]; - int32 linesCount; - float radius; - - bool IsPointWithinOcclusionArea(float x, float y, float area); -}; - -class COccluder -{ -public: - int16 length, width, height; - int16 x, y, z; - uint16 angle; - int16 listIndex; - - bool NearCamera(); - bool ProcessOneOccluder(CActiveOccluder *occl); - bool ProcessLineSegment(int corner1, int corner2, CActiveOccluder* occl); - float GetAngle(void) { return angle*TWOPI/UINT16_MAX; } -}; - -class COcclusion -{ -public: - static int32 NumOccludersOnMap; - static int16 FarAwayList; - static int16 NearbyList; - static int16 ListWalkThroughFA; - static int16 PreviousListWalkThroughFA; - static int16 NumActiveOccluders; - - static COccluder aOccluders[NUMOCCLUSIONVOLUMES]; - static CActiveOccluder aActiveOccluders[NUMACTIVEOCCLUDERS]; - - static void Init(void); - static void AddOne(float x, float y, float z, float width, float length, float height, float angle); - static void ProcessBeforeRendering(void); - static bool OccluderHidesBehind(CActiveOccluder *occl1, CActiveOccluder *occl2); - static bool IsAABoxOccluded(CVector pos, float width, float length, float height); - static bool IsPositionOccluded(CVector pos, float side); -#ifndef MASTER - static void Render(); -#endif -}; - -bool CalcScreenCoors(CVector const &in, CVector *out, float *outw, float *outh); -bool CalcScreenCoors(CVector const &in, CVector *out); - -#ifndef MASTER -extern bool bDispayOccDebugStuff; -#endif
\ No newline at end of file |