16#include "../../Utils/Math/Vector3D.h"
Represents a light source with position, intensity, and falloff properties.
void Translate(Vector3D p)
Translates the light by a specified vector.
Vector3D intensity
Intensity vector of the light.
void SetCurve(float a, float b)
Sets the attenuation curve parameters for the light.
float a
Attenuation curve parameter A.
void SetIntensity(Vector3D intensity)
Sets the intensity of the light.
float GetCurveA()
Retrieves the first curve parameter for attenuation.
Light()
Default constructor for the Light class.
float GetFalloff()
Retrieves the falloff rate of the light.
float b
Attenuation curve parameter B.
Vector3D GetIntensity()
Retrieves the intensity of the light.
float GetCurveB()
Retrieves the second curve parameter for attenuation.
Vector3D GetPosition()
Retrieves the position of the light source.
void Set(Vector3D p, Vector3D intensity, float falloff, float a, float b)
Sets the light's properties.
void SetFalloff(float falloff, float a, float b)
Sets the falloff and attenuation parameters for the light.
float falloff
Falloff rate of the light.
Vector3D p
Position of the light source.
void MoveTo(Vector3D p)
Moves the light to a specified position.
Represents a 3D vector (X, Y, Z) and provides methods for vector arithmetic.