pub trait RenderTest {
// Required methods
fn new(path: &Path) -> Result<Self>
where Self: Sized;
fn render_with_preset_and_params(
&mut self,
preset: ShaderPreset,
frame_count: usize,
param_setter: Option<&dyn Fn(&RuntimeParameters)>,
frame_options: Option<CommonFrameOptions>,
) -> Result<RgbaImage>;
// Provided methods
fn render(&mut self, path: &Path, frame_count: usize) -> Result<RgbaImage> { ... }
fn render_with_preset(
&mut self,
preset: ShaderPreset,
frame_count: usize,
) -> Result<RgbaImage> { ... }
}Expand description
Test harness to set up a device, render a triangle, and apply a shader
Required Methods§
sourcefn new(path: &Path) -> Result<Self>where
Self: Sized,
fn new(path: &Path) -> Result<Self>where
Self: Sized,
Create a new instance of the test harness.
sourcefn render_with_preset_and_params(
&mut self,
preset: ShaderPreset,
frame_count: usize,
param_setter: Option<&dyn Fn(&RuntimeParameters)>,
frame_options: Option<CommonFrameOptions>,
) -> Result<RgbaImage>
fn render_with_preset_and_params( &mut self, preset: ShaderPreset, frame_count: usize, param_setter: Option<&dyn Fn(&RuntimeParameters)>, frame_options: Option<CommonFrameOptions>, ) -> Result<RgbaImage>
Render a shader onto an image buffer, applying the provided shader.
The test should render in linear colour space for proper comparison against backends.
For testing purposes, it is often that a single image will be reused with multiple shader presets, so the actual image that a shader will be applied to will often be part of the test harness object.
Provided Methods§
sourcefn render(&mut self, path: &Path, frame_count: usize) -> Result<RgbaImage>
fn render(&mut self, path: &Path, frame_count: usize) -> Result<RgbaImage>
Render a shader onto an image buffer, applying the provided shader.
The test should render in linear colour space for proper comparison against backends.
For testing purposes, it is often that a single image will be reused with multiple shader presets, so the actual image that a shader will be applied to will often be part of the test harness object.
sourcefn render_with_preset(
&mut self,
preset: ShaderPreset,
frame_count: usize,
) -> Result<RgbaImage>
fn render_with_preset( &mut self, preset: ShaderPreset, frame_count: usize, ) -> Result<RgbaImage>
Render a shader onto an image buffer, applying the provided shader.
The test should render in linear colour space for proper comparison against backends.
For testing purposes, it is often that a single image will be reused with multiple shader presets, so the actual image that a shader will be applied to will often be part of the test harness object.