Function in ldk_renderer.h

ldk_renderer_submit_mesh_instance_set

Submit one persistent instance set without copying its transforms.

LDK_API bool ldk_renderer_submit_mesh_instance_set(
 LDKRenderer *renderer,
 LDKRendererViewId view_id,
 LDKResourceMesh mesh,
 LDKResourceMaterial material,
 u32 first_index,
 u32 index_count,
 LDKResourceInstanceSet instance_set,
 u32 flags
);

Parameters

LDKRenderer *renderer
Renderer receiving this request.
LDKRendererViewId view_id
Renderer view receiving this operation.
LDKResourceMesh mesh
Mesh resource used by the operation.
LDKResourceMaterial material
Material used by the operation.
u32 first_index
First mesh index to submit.
u32 index_count
Number of indices to submit.
LDKResourceInstanceSet instance_set
Instance set used by this operation.
u32 flags
Bitmask of options controlling this operation.

Returns

True if the operation succeeds; false otherwise.

Function in ldk_renderer.h

ldk_renderer_submit_mesh_instance_set_range

Submit a contiguous range of a persistent instance set.

LDK_API bool ldk_renderer_submit_mesh_instance_set_range(
 LDKRenderer *renderer,
 LDKRendererViewId view_id,
 LDKResourceMesh mesh,
 LDKResourceMaterial material,
 u32 first_index,
 u32 index_count,
 LDKResourceInstanceSet instance_set,
 u32 first_instance,
 u32 instance_count,
 u32 flags
);

Parameters

LDKRenderer *renderer
Renderer receiving this request.
LDKRendererViewId view_id
Renderer view receiving this operation.
LDKResourceMesh mesh
Mesh resource used by the operation.
LDKResourceMaterial material
Material used by the operation.
u32 first_index
First mesh index to submit.
u32 index_count
Number of indices to submit.
LDKResourceInstanceSet instance_set
Instance set used by this operation.
u32 first_instance
First instance used by this operation.
u32 instance_count
Number of instance entries.
u32 flags
Bitmask of options controlling this operation.

Returns

True if the operation succeeds; false otherwise.

Function in ldk_renderer.h

ldk_renderer_submit_mesh_instances

Explicit instancing, one submission per mesh/range and matrix array. Matrices are copied during this call and may be released immediately. parent_world transforms each supplied local matrix into world space; pass identity when supplying final world matrices. view_id accepts ALL. index_count must be nonzero. Zero instances is a successful no-op with valid resources/range. Invalid data/allocation failure queues nothing. Ordinary submits never use instancing. Unsupported instancing falls back to one ordinary draw per instance, including ordered overlays.

LDK_API bool ldk_renderer_submit_mesh_instances(
 LDKRenderer *renderer,
 LDKRendererViewId view_id,
 LDKResourceMesh mesh,
 LDKResourceMaterial material,
 u32 first_index,
 u32 index_count,
 Mat4 parent_world,
 const Mat4 *instances,
 u32 instance_count,
 u32 flags
);

Parameters

LDKRenderer *renderer
Renderer receiving this request.
LDKRendererViewId view_id
Renderer view receiving this operation.
LDKResourceMesh mesh
Mesh resource used by the operation.
LDKResourceMaterial material
Material used by the operation.
u32 first_index
First mesh index to submit.
u32 index_count
Number of indices to submit.
Mat4 parent_world
Parent world used by this operation.
const Mat4 *instances
Instances used by this operation.
u32 instance_count
Number of instance entries.
u32 flags
Bitmask of options controlling this operation.

Returns

True if the operation succeeds; false otherwise.

Function in ldk_renderer.h

ldk_renderer_submit_mesh_instances_colored

Explicit instancing with one optional RGBA tint per instance. Colors use 0xRRGGBBAA and are copied together with the instance transforms. A NULL color array means opaque white for every instance.

LDK_API bool ldk_renderer_submit_mesh_instances_colored(
 LDKRenderer *renderer,
 LDKRendererViewId view_id,
 LDKResourceMesh mesh,
 LDKResourceMaterial material,
 u32 first_index,
 u32 index_count,
 Mat4 parent_world,
 const Mat4 *instances,
 const u32 *instance_colors,
 u32 instance_count,
 u32 flags
);

Parameters

LDKRenderer *renderer
Renderer receiving this request.
LDKRendererViewId view_id
Renderer view receiving this operation.
LDKResourceMesh mesh
Mesh resource used by the operation.
LDKResourceMaterial material
Material used by the operation.
u32 first_index
First mesh index to submit.
u32 index_count
Number of indices to submit.
Mat4 parent_world
Parent world used by this operation.
const Mat4 *instances
Instances used by this operation.
const u32 *instance_colors
Instance colors used by this operation.
u32 instance_count
Number of instance entries.
u32 flags
Bitmask of options controlling this operation.

Returns

True if the operation succeeds; false otherwise.