Elaztek Developer Hub
Blamite Game Engine - blam!  00398.09.22.23.2015.blamite
The core library for the Blamite Game Engine.
light Struct Reference

#include <light.h>

+ Collaboration diagram for light:

Public Member Functions

 TAG_ENUM (shape, { directional, point, spotlight, virtual_point, area_cheap, area_pbr, })
 The shape/type of the light source. More...
 
 TAG_BLOCK (spotlight_settings, { real inner_angle;real outer_angle;real falloff;real near_clip_distance;})
 
 TAG_ENUM (attenuation_method, { simple, complex, })
 
 TAG_BLOCK (simple_attenuation, { real radius;real luminance_threshold;})
 
 TAG_BLOCK (complex_attenuation, { real range;real constant;real linear;real quadratic;})
 

Public Attributes

bitfield16 flags
 
real power_scale
 The relative power scale of the light. More...
 
color diffuse_color
 
color specular_color
 
real maximum_distance
 The maximum distance that this light will be visible. If the camera is further than this distance away from the light, then the light will no longer be rendered. More...
 
real near_clip_distance
 The near clip distance of the light. If the camera is this close to the light, shadows will stop being rendered. Only applies when using texture shadows. More...
 
real far_clip_distance
 The far clip distance of the light. If the camera is at least this far from the light, shadows will stop being rendered. Only applies when using texture shadows. More...
 
real near_shadow_distance
 The near shadow distance of the light. If the camera is this close to the light, shadows will no longer be cast by this light source. More...
 
real far_shadow_distance
 The far shadow distance of the light. If the camera is this far from the light, shadows will no longer be cast by this light source. More...
 

Member Function Documentation

◆ TAG_BLOCK() [1/3]

light::TAG_BLOCK ( complex_attenuation  ,
{ real range;real constant;real linear;real quadratic;}   
)

◆ TAG_BLOCK() [2/3]

light::TAG_BLOCK ( simple_attenuation  ,
{ real radius;real luminance_threshold;}   
)

◆ TAG_BLOCK() [3/3]

light::TAG_BLOCK ( spotlight_settings  ,
{ real inner_angle;real outer_angle;real falloff;real near_clip_distance;}   
)

◆ TAG_ENUM() [1/2]

light::TAG_ENUM ( attenuation_method  ,
{ simple, complex, }   
)

◆ TAG_ENUM() [2/2]

light::TAG_ENUM ( shape  ,
{ directional, point, spotlight, virtual_point, area_cheap, area_pbr, }   
)

The shape/type of the light source.

Member Data Documentation

◆ diffuse_color

color light::diffuse_color

◆ far_clip_distance

real light::far_clip_distance

The far clip distance of the light. If the camera is at least this far from the light, shadows will stop being rendered. Only applies when using texture shadows.

◆ far_shadow_distance

real light::far_shadow_distance

The far shadow distance of the light. If the camera is this far from the light, shadows will no longer be cast by this light source.

◆ flags

bitfield16 light::flags

◆ maximum_distance

real light::maximum_distance

The maximum distance that this light will be visible. If the camera is further than this distance away from the light, then the light will no longer be rendered.

◆ near_clip_distance

real light::near_clip_distance

The near clip distance of the light. If the camera is this close to the light, shadows will stop being rendered. Only applies when using texture shadows.

◆ near_shadow_distance

real light::near_shadow_distance

The near shadow distance of the light. If the camera is this close to the light, shadows will no longer be cast by this light source.

◆ power_scale

real light::power_scale

The relative power scale of the light.

◆ specular_color

color light::specular_color

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