4jcraft/targets/minecraft/client/renderer/culling/Frustum.h
2026-04-01 13:27:58 -05:00

32 lines
656 B
C++

#pragma once
#include "FrustumData.h"
class FloatBuffer;
class Frustum : public FrustumData {
private:
static Frustum* frustum;
public:
static FrustumData* getFrustum();
///////////////////////////////// NORMALIZE PLANE
///\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\*
/////
///// This normalizes a plane (A side) from a given frustum.
/////
///////////////////////////////// NORMALIZE PLANE
///\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\*
private:
void normalizePlane(float** frustum, int side);
FloatBuffer* _proj;
FloatBuffer* _modl;
FloatBuffer* _clip;
void calculateFrustum();
Frustum();
~Frustum();
};