Struct ark_api::unstable_render::UnstableRender
source · pub struct UnstableRender { /* private fields */ }Expand description
Gives access to unstable rendering specific functionality like drawing 2D triangles.
Use the require_unstable_render_api macro’s unstable_render() function to get an instance of UnstableRender.
See the module level documentation for an example.
A UnstableRender object can be cheaply cloned.
Implementations§
source§impl UnstableRender
impl UnstableRender
sourcepub fn execute_compute_mesh(
&self,
shader: &RenderShader,
input_mesh: Option<&RenderMesh>,
input_buffers: &[&RenderGpuBuffer],
push_constants: &[u8],
output: &RenderGpuMesh,
thread_count: Option<(u32, u32, u32)>
) -> Result<(), Error>
pub fn execute_compute_mesh( &self, shader: &RenderShader, input_mesh: Option<&RenderMesh>, input_buffers: &[&RenderGpuBuffer], push_constants: &[u8], output: &RenderGpuMesh, thread_count: Option<(u32, u32, u32)> ) -> Result<(), Error>
Execute a compute shader that generates a mesh and writes it to the output RenderGpuMesh.
If no thread count is provided the thread count will be (output_mesh_vertex_count, 1, 1).
sourcepub fn execute_compute(
&self,
shader: &RenderShader,
input_buffers: &[&RenderGpuBuffer],
push_constants: &[u8],
thread_count: (u32, u32, u32)
) -> Result<(), Error>
pub fn execute_compute( &self, shader: &RenderShader, input_buffers: &[&RenderGpuBuffer], push_constants: &[u8], thread_count: (u32, u32, u32) ) -> Result<(), Error>
Execute a compute shader that does not generate any mesh
sourcepub fn create_gpu_mesh(
&self,
num_vertices: u32,
num_indices: u32,
num_materials: u32
) -> Result<RenderGpuMesh, Error>
pub fn create_gpu_mesh( &self, num_vertices: u32, num_indices: u32, num_materials: u32 ) -> Result<RenderGpuMesh, Error>
Create a gpu mesh
sourcepub fn create_gpu_mesh_from_mesh(
&self,
input_mesh: &RenderMesh
) -> Result<RenderGpuMesh, Error>
pub fn create_gpu_mesh_from_mesh( &self, input_mesh: &RenderMesh ) -> Result<RenderGpuMesh, Error>
Create a gpu mesh from existing mesh
sourcepub fn create_gpu_buffer(&self, data: &[u8]) -> Result<RenderGpuBuffer, Error>
pub fn create_gpu_buffer(&self, data: &[u8]) -> Result<RenderGpuBuffer, Error>
Create a gpu buffer
sourcepub fn create_shader(
&self,
entry: &str,
spirv: &[u8]
) -> Result<RenderShader, Error>
pub fn create_shader( &self, entry: &str, spirv: &[u8] ) -> Result<RenderShader, Error>
Create a shader
Trait Implementations§
source§impl Clone for UnstableRender
impl Clone for UnstableRender
source§fn clone(&self) -> UnstableRender
fn clone(&self) -> UnstableRender
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for UnstableRender
Auto Trait Implementations§
impl RefUnwindSafe for UnstableRender
impl Send for UnstableRender
impl Sync for UnstableRender
impl Unpin for UnstableRender
impl UnwindSafe for UnstableRender
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more