Polyphase Game Engine
Loading...
Searching...
No Matches
SpotLight3d.h
Go to the documentation of this file.
1#pragma once
2
3#include "PointLight3d.h"
4
6{
7public:
8
10
13
14 virtual const char* GetTypeName() const override;
15 virtual void GatherProperties(std::vector<Property>& outProps) override;
16 virtual void GatherProxyDraws(std::vector<DebugDraw>& inoutDraws) override;
17
18 virtual bool IsSpotLight3D() const override;
19
20 void SetInnerAngle(float angle);
21 float GetInnerAngle() const;
22
23 void SetOuterAngle(float angle);
24 float GetOuterAngle() const;
25
26 glm::vec3 GetDirection();
27 void SetDirection(const glm::vec3& dir);
28
29protected:
30
31 float mInnerAngle = 30.0f;
32 float mOuterAngle = 45.0f;
33};
#define POLYPHASE_API
Definition PolyphaseAPI.h:31
virtual bool IsSpotLight3D() const
Definition Light3d.cpp:46
Definition PointLight3d.h:26
virtual const char * GetTypeName() const override
Definition PointLight3d.cpp:39
virtual void GatherProxyDraws(std::vector< DebugDraw > &inoutDraws) override
Definition PointLight3d.cpp:53
virtual void GatherProperties(std::vector< Property > &outProps) override
Definition PointLight3d.cpp:44
Definition SpotLight3d.h:6
DECLARE_NODE(SpotLight3D, PointLight3D)