12345678910111213141516171819202122232425262728 |
- #ifndef CORE_FRUSTUM_H
- #define CORE_FRUSTUM_H
- #include "core/Matrix.h"
- #include "core/Plane.h"
- typedef struct {
- CoreMatrix projection;
- CorePlane planes[6];
- float tan;
- float nearClip;
- float farClip;
- } CoreFrustum;
- void coreInitFrustum(CoreFrustum* f, float fieldOfView, float nearClip,
- float farClip);
- const CoreMatrix* coreUpdateProjection(CoreFrustum* f,
- const CoreIntVector2* size);
- void coreUpdateFrustumPlanes(CoreFrustum* f, const CoreVector3* pos,
- const CoreVector3* right, const CoreVector3* up,
- const CoreVector3* front,
- const CoreIntVector2* size);
- bool coreIsInsideFrustum(const CoreFrustum* f, const CoreVector3* pos);
- bool coreIsInsideFrustumRadius(const CoreFrustum* f, const CoreVector3* pos,
- float radius);
- size_t coreToStringFrustum(const CoreFrustum* f, char* buffer, size_t n);
- #endif
|