the game where you go into mines and start crafting! but for consoles (forked directly from smartcmd's github)
1#pragma once
2#include "Culler.h"
3#include "..\Minecraft.World\mob.h"
4
5class Mob;
6class ViewportCuller : public Culler
7{
8private:
9 class Face
10 {
11 private:
12 double xc, yc, zc;
13 double xd, yd, zd;
14 double cullOffs;
15 public:
16 Face() {} // 4J - added so we can declare an array of these (unitialised) in the class
17 Face(double x, double y, double z, float yRot, float xRot);
18 bool inFront(double x, double y, double z, double r);
19 bool inFront(double x0, double y0, double z0, double x1, double y1, double z1);
20 bool fullyInFront(double x0, double y0, double z0, double x1, double y1, double z1);
21 };
22
23private:
24 Face faces[6];
25 double xOff, yOff, zOff;
26public:
27 ViewportCuller(shared_ptr<LivingEntity> mob, double fogDistance, float a);
28 virtual bool isVisible(AABB bb);
29 virtual bool cubeInFrustum(double x0, double y0, double z0, double x1, double y1, double z1);
30 virtual bool cubeFullyInFrustum(double x0, double y0, double z0, double x1, double y1, double z1);
31private:
32 double _max(double a, double b, double c); // 4J - renamed from _max due to #define conflict in stdlib
33public:
34 virtual void prepare(double xOff, double yOff, double zOff);
35};