Polyphase Game Engine
Loading...
Searching...
No Matches
DirectionalLight3d.h
Go to the documentation of this file.
1#pragma once
2
3#include "Light3d.h"
4
6{
7public:
8
10
13
14 virtual void Destroy() override;
15
16 virtual void Tick(float deltaTime) override;
17 virtual void EditorTick(float deltaTime) override;
18
19 virtual const char* GetTypeName() const override;
20 virtual void GatherProperties(std::vector<Property>& outProps) override;
21 virtual void GatherProxyDraws(std::vector<DebugDraw>& inoutDraws) override;
22
23 virtual bool IsPointLight3D() const override;
24 virtual bool IsDirectionalLight3D() const override;
25
26 glm::vec3 GetDirection();
27 void SetDirection(const glm::vec3& dir);
28
29 const glm::mat4& GetViewProjectionMatrix() const;
30
31protected:
32
33 void TickCommon(float deltaTime);
34 void GenerateViewProjectionMatrix();
35
37};
#define POLYPHASE_API
Definition PolyphaseAPI.h:31
Definition DirectionalLight3d.h:6
glm::mat4 mViewProjectionMatrix
Definition DirectionalLight3d.h:36
DECLARE_NODE(DirectionalLight3D, Light3D)
Definition Light3d.h:6
virtual const char * GetTypeName() const override
Definition Light3d.cpp:23
virtual void GatherProperties(std::vector< Property > &outProps) override
Definition Light3d.cpp:28
virtual bool IsPointLight3D() const =0
virtual bool IsDirectionalLight3D() const =0
virtual void Destroy() override
Definition Node3d.cpp:101
virtual void Tick(float deltaTime) override
Definition Node3d.cpp:114
virtual void GatherProxyDraws(std::vector< DebugDraw > &inoutDraws)
Definition Node3d.cpp:298
void TickCommon(float deltaTime)
Definition Node.cpp:573
virtual void EditorTick(float deltaTime)
Definition Node.cpp:563