Struct mallumo_gls::draw::DrawCommand
[−]
[src]
pub struct DrawCommand<'a> { pub framebuffer: Option<&'a GeneralFramebuffer>, pub attachments: Option<&'a DrawTextureTarget<'a>>, pub pipeline: &'a Pipeline, pub draw_command_type: DrawCommandType<'a>, pub mode: DrawMode, pub images: Vec<(&'a Texture, usize, usize, ImageInternalFormat)>, pub images_3d: Vec<(&'a Texture3D, usize, usize, ImageInternalFormat)>, pub images_read: Vec<(&'a Texture, usize, usize, ImageInternalFormat)>, pub images_write: Vec<(&'a Texture, usize, usize, ImageInternalFormat)>, pub textures_1d: Vec<(&'a Texture1D, usize)>, pub textures_2d: Vec<(&'a Texture2D, usize)>, pub textures_3d: Vec<(&'a Texture3D, usize)>, pub textures_cubemap: Vec<(&'a TextureCubemap, usize)>, pub texture_1d_arrays: Vec<(&'a [Option<&'a Texture1D>], usize)>, pub texture_2d_arrays: Vec<(&'a [Option<&'a Texture2D>], usize)>, pub texture_3d_arrays: Vec<(&'a [Option<&'a Texture3D>], usize)>, pub texture_cubemap_arrays: Vec<(&'a [Option<&'a TextureCubemap>], usize)>, pub storages: Vec<(&'a MutableBuffer, usize)>, pub storages_read: Vec<(&'a Buffer, usize)>, pub storage_ranges: Vec<(&'a MutableBuffer, usize, usize, usize)>, pub storage_range_reads: Vec<(&'a Buffer, usize, usize, usize)>, pub uniforms: Vec<(&'a Buffer, usize)>, pub uniform_ranges: Vec<(&'a Buffer, usize, usize, usize)>, pub atomic_counters: Vec<(&'a MutableBuffer, usize)>, pub barriers: Option<MemoryBarriers>, }
Fields
framebuffer: Option<&'a GeneralFramebuffer>
attachments: Option<&'a DrawTextureTarget<'a>>
pipeline: &'a Pipeline
draw_command_type: DrawCommandType<'a>
mode: DrawMode
images: Vec<(&'a Texture, usize, usize, ImageInternalFormat)>
images_3d: Vec<(&'a Texture3D, usize, usize, ImageInternalFormat)>
images_read: Vec<(&'a Texture, usize, usize, ImageInternalFormat)>
images_write: Vec<(&'a Texture, usize, usize, ImageInternalFormat)>
textures_1d: Vec<(&'a Texture1D, usize)>
textures_2d: Vec<(&'a Texture2D, usize)>
textures_3d: Vec<(&'a Texture3D, usize)>
textures_cubemap: Vec<(&'a TextureCubemap, usize)>
texture_1d_arrays: Vec<(&'a [Option<&'a Texture1D>], usize)>
texture_2d_arrays: Vec<(&'a [Option<&'a Texture2D>], usize)>
texture_3d_arrays: Vec<(&'a [Option<&'a Texture3D>], usize)>
texture_cubemap_arrays: Vec<(&'a [Option<&'a TextureCubemap>], usize)>
storages: Vec<(&'a MutableBuffer, usize)>
storages_read: Vec<(&'a Buffer, usize)>
storage_ranges: Vec<(&'a MutableBuffer, usize, usize, usize)>
storage_range_reads: Vec<(&'a Buffer, usize, usize, usize)>
uniforms: Vec<(&'a Buffer, usize)>
uniform_ranges: Vec<(&'a Buffer, usize, usize, usize)>
atomic_counters: Vec<(&'a MutableBuffer, usize)>
barriers: Option<MemoryBarriers>
Methods
impl<'a> DrawCommand<'a>
[src]
fn arrays(pipeline: &'a Pipeline, first: usize, count: usize) -> DrawCommand<'a>
[src]
fn arrays_indirect(
pipeline: &'a Pipeline,
indirect: &'a Buffer,
offset: usize
) -> DrawCommand<'a>
[src]
pipeline: &'a Pipeline,
indirect: &'a Buffer,
offset: usize
) -> DrawCommand<'a>
fn arrays_instanced(
pipeline: &'a Pipeline,
first: usize,
count: usize,
primitive_count: usize
) -> DrawCommand<'a>
[src]
pipeline: &'a Pipeline,
first: usize,
count: usize,
primitive_count: usize
) -> DrawCommand<'a>
fn multi_draw_arrays(
pipeline: &'a Pipeline,
first: &'a [u32],
count: &'a [u32],
draw_count: usize
) -> DrawCommand<'a>
[src]
pipeline: &'a Pipeline,
first: &'a [u32],
count: &'a [u32],
draw_count: usize
) -> DrawCommand<'a>
fn multi_draw_arrays_indirect(
pipeline: &'a Pipeline,
indirect: &'a Buffer,
draw_count: usize,
stride: usize
) -> DrawCommand<'a>
[src]
pipeline: &'a Pipeline,
indirect: &'a Buffer,
draw_count: usize,
stride: usize
) -> DrawCommand<'a>
fn framebuffer(self, framebuffer: &'a GeneralFramebuffer) -> Self
[src]
fn attachments(self, attachments: &'a DrawTextureTarget<'a>) -> Self
[src]
fn mode(self, mode: DrawMode) -> Self
[src]
fn image<T: Texture>(
self,
image: &'a T,
unit: usize,
level: usize,
format: ImageInternalFormat
) -> Self
[src]
self,
image: &'a T,
unit: usize,
level: usize,
format: ImageInternalFormat
) -> Self
fn image_3d(
self,
image: &'a Texture3D,
unit: usize,
level: usize,
format: ImageInternalFormat
) -> Self
[src]
self,
image: &'a Texture3D,
unit: usize,
level: usize,
format: ImageInternalFormat
) -> Self
fn image_read<T: Texture>(
self,
image: &'a T,
unit: usize,
level: usize,
format: ImageInternalFormat
) -> Self
[src]
self,
image: &'a T,
unit: usize,
level: usize,
format: ImageInternalFormat
) -> Self
fn image_write<T: Texture>(
self,
image: &'a T,
unit: usize,
level: usize,
format: ImageInternalFormat
) -> Self
[src]
self,
image: &'a T,
unit: usize,
level: usize,
format: ImageInternalFormat
) -> Self
fn texture_1d<T: Into<Option<&'a Texture1D>>>(
self,
texture: T,
unit: usize
) -> Self
[src]
self,
texture: T,
unit: usize
) -> Self
fn texture_2d<T: Into<Option<&'a Texture2D>>>(
self,
texture: T,
unit: usize
) -> Self
[src]
self,
texture: T,
unit: usize
) -> Self
fn texture_3d<T: Into<Option<&'a Texture3D>>>(
self,
texture: T,
unit: usize
) -> Self
[src]
self,
texture: T,
unit: usize
) -> Self
fn texture_cubemap(self, texture: &'a TextureCubemap, unit: usize) -> Self
[src]
fn texture_1d_array(
self,
textures: &'a [Option<&'a Texture1D>],
starting_location: usize
) -> Self
[src]
self,
textures: &'a [Option<&'a Texture1D>],
starting_location: usize
) -> Self
fn texture_2d_array(
self,
textures: &'a [Option<&'a Texture2D>],
starting_location: usize
) -> Self
[src]
self,
textures: &'a [Option<&'a Texture2D>],
starting_location: usize
) -> Self
fn texture_3d_array(
self,
textures: &'a [Option<&'a Texture3D>],
starting_location: usize
) -> Self
[src]
self,
textures: &'a [Option<&'a Texture3D>],
starting_location: usize
) -> Self
fn texture_cubemap_array(
self,
textures: &'a [Option<&'a TextureCubemap>],
starting_location: usize
) -> Self
[src]
self,
textures: &'a [Option<&'a TextureCubemap>],
starting_location: usize
) -> Self
fn storage(self, storage: &'a MutableBuffer, location: usize) -> Self
[src]
fn storage_read(self, storage: &'a Buffer, location: usize) -> Self
[src]
fn storage_range<T>(
self,
storage: &'a MutableBuffer,
location: usize,
offset: usize,
size: usize
) -> Self
[src]
self,
storage: &'a MutableBuffer,
location: usize,
offset: usize,
size: usize
) -> Self
fn storage_range_read<T>(
self,
storage: &'a Buffer,
location: usize,
offset: usize,
size: usize
) -> Self
[src]
self,
storage: &'a Buffer,
location: usize,
offset: usize,
size: usize
) -> Self
fn uniform(self, storage: &'a Buffer, location: usize) -> Self
[src]
fn uniform_range<T>(
self,
storage: &'a Buffer,
location: usize,
offset: usize,
size: usize
) -> Self
[src]
self,
storage: &'a Buffer,
location: usize,
offset: usize,
size: usize
) -> Self