Module Render_bundle.Encoder

Encoders.

Encoders

module Descriptor : sig ... end

Descriptors.

type bundle := t
type t

The type for GPURenderBundleEncoder objects.

val label : t -> Jstr.t

label e is the label of e.

val finish : ?descr:t -> t -> bundle

finish e finishes recording commands.

Setup commands

val set_pipeline : t -> Compute_pipeline.t -> unit

set_pipline e p sets the pipeline of e to p for subsequent commands.

val set_bind_group : ?dynamic_offsets:int list -> ?group:Bind_group.t -> t -> index:int -> unit

set_bind_group sets a bind group for subsequent commands.

val set_bind_group' : ?group:Bind_group.t -> t -> index:int -> dynamic_offsets:int array -> offsets_start:int -> offsets_length:int -> unit

set_bind_group' sets a bind group for subsequent commands.

val set_index_buffer : ?offset:int -> ?size:int -> t -> Buffer.t -> format:Index_format.t -> unit

set_index_buffer sets the index data for subsequent commands.

val set_vertex_buffer : ?buffer:Buffer.t -> ?offset:int -> ?size:int -> t -> slot:int -> unit

set_index_buffer sets sets the vertex data for subsequent commands.

Draw commands

val draw : ?first_instance:int -> ?first_vertex:int -> ?instance_count:int -> t -> vertex_count:int -> unit

draw draws primitives.

val draw_indexed : ?first_instance:int -> ?base_vertex:int -> ?first_index:int -> ?instance_count:int -> t -> index_count:int -> unit

draw_indexed draws indexed primitives.

val draw_indirect : t -> Buffer.t -> offset:int -> unit

draw_indirect draws primitives.

val draw_indexed_indirect : t -> Buffer.t -> offset:int -> unit

draw_indexed_indirect draws indexed primitives.

Debug commands

val push_debug_group : t -> Jstr.t -> unit

push_debug_group e l starts a debug group l on e.

val pop_debug_group : t -> unit

pop_debug_group e ends the debug group o n e.

val insert_debug_marker : t -> Jstr.t -> unit

insert_debug_marker e l marks a point l in e.