Light flags.
typedef enum LightFlags

Light is recalculated each frame.
LIGHT_FLAGS_DYNAMIC = 1,

Is light probe.
LIGHT_FLAGS_PROBE = 2

End block 'Light flags'
} LightFlags;

Light.
typedef struct Light { uint sig; byte wobj[256]; } Light;

Get position.
API M4f LightGetPos(Light *light);
light: Light.
returns: Position.

Get color.
API Color LightGetColor(Light *light);
light: Light.
returns: Color.

Set position.
API void LightSetPos(Light *light, M4f pos);
light: Light.
pos:

Set color.
API void LightSetColor(Light *light, Color color);
light: Light.
color:

Set range.
API void LightSetRange(Light *light, float radius, float falloff);
light: Light.
radius: Radius of light effect.
falloff: Sharpness of falloff. Lower is sharper, higher is softer. Default=1.

Set opening span.
API void LightSetSpan(Light *light, float span, float falloff);
light: Light.
span: Cone angle of visible light. 0=No light 1=All dirs.
falloff: Sharpness of falloff. Lower is sharper, higher is softer. Default=1.

Set ambient color.
API void LightSetAmbient(Light *light, Color color);
light: Light.
color: Color.

Initialize light. If probe flag is not set, light is a normal light.Otherwise light participates in global illumination as probe.
API void LightInit(Light *light, M4f pos, uint flags, uint level, float delay);
light: Light.
pos: Light position.
flags: Global illumination flags. Default=0.
level: Global illumination hierarchy level. Zero is top level. Default=0.
delay: Global illumination smoothness of light changes. 0=No delay.

Release light.
API void LightRel(Light *light);
light: Light.