Struct in ldk_renderer.h

LDKRendererAmbientLight

typedef struct LDKRendererAmbientLight{
  u32 color;
  float intensity;
}LDKRendererAmbientLight;
Struct in ldk_renderer.h

LDKRendererLightSubmit

typedef struct LDKRendererLightSubmit{
  LDKRendererLightType type;
  LDKRendererViewId view_id;
  Vec3 position;
  Vec3 direction;
  u32 color;
  float intensity;
  float range;
  float inner_angle;
  float outer_angle;
  bool casts_shadows;
}LDKRendererLightSubmit;
Enum in ldk_renderer.h

LDKRendererLightType

typedef enum LDKRendererLightType{
  LDK_RENDERER_LIGHT_POINT=0,
  LDK_RENDERER_LIGHT_SPOT,
  LDK_RENDERER_LIGHT_DIRECTIONAL
}LDKRendererLightType;
Macro in ldk_renderer.h

LDK_RENDERER_MAX_LIGHTS_PER_VIEW

#define LDK_RENDERER_MAX_LIGHTS_PER_VIEW 16
Function in ldk_renderer.h

ldk_renderer_ambient_light_set

Set constant ambient light applied to lit materials. Color uses 0xRRGGBBAA; alpha is ignored. Intensity must be finite and non-negative. Ambient light does not count toward the per-view light limit.

LDK_API bool ldk_renderer_ambient_light_set(
 LDKRenderer *renderer,
 u32 color,
 float intensity
);

Parameters

LDKRenderer *renderer
Renderer receiving this request.
u32 color
Color value used by the operation.
float intensity
Intensity used by this operation.

Returns

True if the operation succeeds; false otherwise.

Function in ldk_renderer.h

ldk_renderer_submit_light

Submit transient world-space lighting. Views need not exist yet. The first 16 matching lights illuminate each view, in submission order. Returns false for invalid data or allocation failure.

LDK_API bool ldk_renderer_submit_light(
 LDKRenderer *renderer,
 const LDKRendererLightSubmit *light
);

Parameters

LDKRenderer *renderer
Renderer receiving this request.
const LDKRendererLightSubmit *light
Light used by this operation.

Returns

True if the operation succeeds; false otherwise.