pub struct BasicRenderPipeline { /* private fields */ }Expand description
基础渲染管线
封装 wgpu 渲染管线,提供基础的渲染功能。
§示例
use anvilkit_render::renderer::{RenderDevice, BasicRenderPipeline};
use wgpu::{TextureFormat, PrimitiveTopology};
let pipeline = BasicRenderPipeline::new(
device,
"vertex_shader.wgsl",
"fragment_shader.wgsl",
TextureFormat::Bgra8UnormSrgb,
PrimitiveTopology::TriangleList,
1,
Some("Basic Pipeline"),
&[],
None,
&[],
)?;Implementations§
Source§impl BasicRenderPipeline
impl BasicRenderPipeline
Sourcepub fn new(
device: &RenderDevice,
vertex_source: &str,
fragment_source: &str,
format: TextureFormat,
topology: PrimitiveTopology,
multisample_count: u32,
label: Option<&str>,
vertex_layouts: &[VertexBufferLayout<'_>],
depth_format: Option<TextureFormat>,
bind_group_layouts: &[&BindGroupLayout],
) -> Result<Self>
pub fn new( device: &RenderDevice, vertex_source: &str, fragment_source: &str, format: TextureFormat, topology: PrimitiveTopology, multisample_count: u32, label: Option<&str>, vertex_layouts: &[VertexBufferLayout<'_>], depth_format: Option<TextureFormat>, bind_group_layouts: &[&BindGroupLayout], ) -> Result<Self>
Sourcepub fn pipeline(&self) -> &RenderPipeline
pub fn pipeline(&self) -> &RenderPipeline
Sourcepub fn into_pipeline(self) -> RenderPipeline
pub fn into_pipeline(self) -> RenderPipeline
消费 BasicRenderPipeline 并返回内部的 wgpu RenderPipeline
Sourcepub fn vertex_shader(&self) -> &ShaderModule
pub fn vertex_shader(&self) -> &ShaderModule
Sourcepub fn fragment_shader(&self) -> &ShaderModule
pub fn fragment_shader(&self) -> &ShaderModule
Auto Trait Implementations§
impl Freeze for BasicRenderPipeline
impl !RefUnwindSafe for BasicRenderPipeline
impl Send for BasicRenderPipeline
impl Sync for BasicRenderPipeline
impl Unpin for BasicRenderPipeline
impl UnsafeUnpin for BasicRenderPipeline
impl !UnwindSafe for BasicRenderPipeline
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
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.