Struct three_d::renderer::ForwardPipeline
source · [−]pub struct ForwardPipeline { /* private fields */ }Expand description
Forward render pipeline which can render objects (implementing the Object trait). Forward rendering directly draws to the given render target (for example the screen) and is therefore the same as calling Object::render directly.
Implementations
sourceimpl ForwardPipeline
impl ForwardPipeline
sourcepub fn new(context: &Context) -> ThreeDResult<Self>
pub fn new(context: &Context) -> ThreeDResult<Self>
Constructor.
sourcepub fn render_pass(
&self,
camera: &Camera,
objects: &[&dyn Object],
lights: &[&dyn Light]
) -> ThreeDResult<()>
pub fn render_pass(
&self,
camera: &Camera,
objects: &[&dyn Object],
lights: &[&dyn Light]
) -> ThreeDResult<()>
Render the objects. Also avoids rendering objects outside the camera frustum and render the objects in the order given by cmp_render_order. Must be called in a render target render function, for example in the callback function of Screen::write.
sourcepub fn depth_pass(
&self,
camera: &Camera,
objects: &[&dyn Object]
) -> ThreeDResult<()>
pub fn depth_pass(
&self,
camera: &Camera,
objects: &[&dyn Object]
) -> ThreeDResult<()>
Render the distance from the camera to the objects in each pixel into a depth texture. Also, do not render transparent objects and objects outside the camera frustum. Must be called in a render target render function, where a depth texture is bound, for example in the callback function of Screen::write or DepthTargetTexture2D::write.
sourcepub fn depth_pass_texture(
&self,
camera: &Camera,
objects: &[&dyn Object]
) -> ThreeDResult<DepthTargetTexture2D>
pub fn depth_pass_texture(
&self,
camera: &Camera,
objects: &[&dyn Object]
) -> ThreeDResult<DepthTargetTexture2D>
Creates a new DepthTargetTexture2D, applies a ForwardPipeline::depth_pass and returns the texture.
Auto Trait Implementations
impl !RefUnwindSafe for ForwardPipeline
impl !Send for ForwardPipeline
impl !Sync for ForwardPipeline
impl Unpin for ForwardPipeline
impl !UnwindSafe for ForwardPipeline
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber to this type, returning a
WithDispatch wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber to this type, returning a
WithDispatch wrapper. Read more