Trait pill_engine::internal::PillRenderer[][src]

pub trait PillRenderer {
Show 14 methods fn new(window: &Window, config: Config) -> Self
    where
        Self: Sized
;
fn resize(&mut self, new_window_size: PhysicalSize<u32>);
fn set_master_pipeline(
        &mut self,
        vertex_shader_bytes: &[u8],
        fragment_shader_bytes: &[u8]
    ) -> Result<()>;
fn create_mesh(
        &mut self,
        name: &str,
        mesh_data: &MeshData
    ) -> Result<RendererMeshHandle>;
fn create_texture(
        &mut self,
        name: &str,
        image_data: &DynamicImage,
        texture_type: TextureType
    ) -> Result<RendererTextureHandle>;
fn create_material(
        &mut self,
        name: &str,
        textures: &MaterialTextureMap,
        parameters: &MaterialParameterMap
    ) -> Result<RendererMaterialHandle>;
fn create_camera(&mut self) -> Result<RendererCameraHandle>;
fn update_material_textures(
        &mut self,
        renderer_material_handle: RendererMaterialHandle,
        textures: &MaterialTextureMap
    ) -> Result<()>;
fn update_material_parameters(
        &mut self,
        renderer_material_handle: RendererMaterialHandle,
        parameters: &MaterialParameterMap
    ) -> Result<()>;
fn destroy_mesh(
        &mut self,
        renderer_mesh_handle: RendererMeshHandle
    ) -> Result<()>;
fn destroy_texture(
        &mut self,
        renderer_texture_handle: RendererTextureHandle
    ) -> Result<()>;
fn destroy_material(
        &mut self,
        renderer_material_handle: RendererMaterialHandle
    ) -> Result<()>;
fn destroy_camera(
        &mut self,
        renderer_camera_handle: RendererCameraHandle
    ) -> Result<()>;
fn render(
        &mut self,
        active_camera_entity_handle: EntityHandle,
        render_queue: &Vec<RenderQueueItem>,
        camera_component_storage: &ComponentStorage<CameraComponent>,
        transform_component_storage: &ComponentStorage<TransformComponent>
    ) -> Result<(), RendererError>;
}

Required methods

Implementors