25 CameraContext(
float width,
float height,
float fovAng,
float zNear,
float zFar);
87 void Draw(
const Body *excludeBody =
nullptr);
112 void CalcShadows(
const int lightNum,
const Body *b, std::vector<Shadow> &shadowsOut)
const;
124 std::unique_ptr<Graphics::Material> m_billboardMaterial;
144 Color billboardColor;
149 static bool sort_BodyAttrs(
const BodyAttrs &a,
const BodyAttrs &b);
150 friend bool operator<(
const BodyAttrs &a,
const BodyAttrs &b)
152 return sort_BodyAttrs(a, b);
156 std::list<BodyAttrs> m_sortedBodies;
157 std::vector<LightSource> m_lightSources;
float GetZNear() const
Definition Camera.h:31
float GetFovAng() const
Definition Camera.h:30
FrameId GetCameraFrame() const
Definition Camera.h:41
void BeginFrame()
Definition Camera.cpp:52
void EndFrame()
Definition Camera.cpp:70
FrameId GetTempFrame() const
Definition Camera.h:59
~CameraContext()
Definition Camera.cpp:40
void SetFovAng(float newAng)
Definition Camera.cpp:46
const vector3d GetCameraPos() const
Definition Camera.h:49
void SetCameraOrient(const matrix3x3d &orient)
Definition Camera.h:47
float GetWidth() const
Definition Camera.h:28
const matrix3x3d & GetCameraOrient() const
Definition Camera.h:50
void ApplyDrawTransforms(Graphics::Renderer *r)
Definition Camera.cpp:80
void SetCameraPosition(const vector3d &pos)
Definition Camera.h:44
float GetZFar() const
Definition Camera.h:32
const Graphics::Frustum & GetFrustum() const
Definition Camera.h:53
void SetCameraFrame(FrameId frame)
Definition Camera.h:39
float GetHeight() const
Definition Camera.h:29
const Graphics::Light & GetLight() const
Definition Camera.h:97
LightSource(const Body *b, Graphics::Light &light)
Definition Camera.h:92
const Body * GetBody() const
Definition Camera.h:96
int GetNumLightSources() const
Definition Camera.h:118
void Draw(const Body *excludeBody=nullptr)
Definition Camera.cpp:222
const std::vector< LightSource > & GetLightSources() const
Definition Camera.h:117
void Update()
Definition Camera.cpp:148
void PrincipalShadows(const Body *b, const int n, std::vector< Shadow > &shadowsOut) const
Definition Camera.cpp:407
float ShadowedIntensity(const int lightNum, const Body *b) const
Definition Camera.cpp:395
const CameraContext * GetContext() const
Definition Camera.h:84
void CalcShadows(const int lightNum, const Body *b, std::vector< Shadow > &shadowsOut) const
Definition Camera.cpp:314
Definition RefCounted.h:36
Definition RefCounted.h:11
T * Get() const
Definition SmartPtr.h:37
Definition Background.h:14
float srad
Definition Camera.h:106
bool operator<(const Shadow &other) const
Definition Camera.h:109
float lrad
Definition Camera.h:107
vector3d centre
Definition Camera.h:105