class RPPointLight

Bases: RPLight

This represents a point light, a light which has a position and radius. Checkout the RenderPipeline documentation for more information about this type of light.

Inheritance diagram

Inheritance diagram of RPPointLight


This contructs a new point light with default settings. By default the light is set to be an infinitely small point light source. You can change this with RPPointLight::set_inner_radius().

float get_inner_radius(void) const

This returns the inner radius of the light, previously set with RPPointLight::get_inner_radius().

float get_radius(void) const

This returns the lights radius previously set with RPPointLight::set_radius()

void set_inner_radius(float inner_radius)

This sets the inner radius of the light. Anything greater than zero causes the light to get an area light. This has influence on the specular highlights of the light aswell as the shadows.

The inner radius controls the size of the lights sphere size in world space units. A radius of 0 means the light has no inner radius, and the light will be have like an infinite small point light source. A radius greater than zero will cause the light to behave like it would be an emissive sphere with the given inner radius emitting light. This is more physically correct.

void set_radius(float radius)

This sets the radius of the light. It controls the lights influence. After a distance greater than this radius, the light influence is zero.