Avara3D 0.2.0
C++ API reference
a3d::Attenuation Struct Reference

Distance-attenuation coefficients for point and spot lights. More...

#include <a3d/visual/light/Attenuation.h>

Static Public Member Functions

static Attenuation FromRange (float range, float p=0.01f)
 Returns quadratic attenuation that falls to the fraction p at distance range. More...
 

Public Attributes

float constant = 1.0f
 Constant denominator coefficient. More...
 
float linear = 0.0f
 Linear-distance denominator coefficient. More...
 
float quadratic = 0.1f
 Squared-distance denominator coefficient. More...
 

Detailed Description

Distance-attenuation coefficients for point and spot lights.

Light intensity is scaled by 1 / (constant + linear * d + quadratic * d^2), where d is the light-to-surface distance.

Definition at line 20 of file Attenuation.h.

Member Function Documentation

◆ FromRange()

static Attenuation a3d::Attenuation::FromRange ( float  range,
float  p = 0.01f 
)
static

Returns quadratic attenuation that falls to the fraction p at distance range.

The returned coefficients use constant = 1 and linear = 0.

Member Data Documentation

◆ constant

float a3d::Attenuation::constant = 1.0f

Constant denominator coefficient.

Definition at line 33 of file Attenuation.h.

◆ linear

float a3d::Attenuation::linear = 0.0f

Linear-distance denominator coefficient.

Definition at line 34 of file Attenuation.h.

◆ quadratic

float a3d::Attenuation::quadratic = 0.1f

Squared-distance denominator coefficient.

Definition at line 35 of file Attenuation.h.


The documentation for this struct was generated from the following file: