[][src]Struct vulkano::framebuffer::RenderPass

pub struct RenderPass<D> { /* fields omitted */ }

Defines the layout of multiple subpasses.

The RenderPass struct should always implement the RenderPassAbstract trait. Therefore you can turn any Arc<RenderPass<D>> into a Arc<RenderPassAbstract + Send + Sync> if you need to.

Methods

impl<D> RenderPass<D> where
    D: RenderPassDesc
[src]

pub fn new(
    device: Arc<Device>,
    description: D
) -> Result<RenderPass<D>, RenderPassCreationError>
[src]

Builds a new render pass.

Panic

  • Can panic if it detects some violations in the restrictions. Only inexpensive checks are performed. debug_assert! is used, so some restrictions are only checked in debug mode.

impl RenderPass<EmptySinglePassRenderPassDesc>[src]

pub fn empty_single_pass(
    device: Arc<Device>
) -> Result<RenderPass<EmptySinglePassRenderPassDesc>, RenderPassCreationError>
[src]

Builds a render pass with one subpass and no attachment.

This method is useful for quick tests.

impl<D> RenderPass<D>[src]

pub fn granularity(&self) -> [u32; 2][src]

Returns the granularity of this render pass.

If the render area of a render pass in a command buffer is a multiple of this granularity, then the performance will be optimal. Performances are always optimal for render areas that cover the whole framebuffer.

pub fn desc(&self) -> &D[src]

Returns the description of the render pass.

Note: You must not somehow modify the description. This shouldn't be possible anyway if RenderPassDesc was implemented correctly.

Trait Implementations

impl<D> DeviceOwned for RenderPass<D>[src]

impl<D> RenderPassDesc for RenderPass<D> where
    D: RenderPassDesc
[src]

Important traits for RenderPassDescAttachments<'a, R>
fn attachment_descs(&self) -> RenderPassDescAttachments<Self> where
    Self: Sized
[src]

Returns an iterator to the list of attachments.

Important traits for RenderPassDescSubpasses<'a, R>
fn subpass_descs(&self) -> RenderPassDescSubpasses<Self> where
    Self: Sized
[src]

Returns an iterator to the list of subpasses.

Important traits for RenderPassDescDependencies<'a, R>
fn dependency_descs(&self) -> RenderPassDescDependencies<Self> where
    Self: Sized
[src]

Returns an iterator to the list of dependencies.

fn is_compatible_with<T: ?Sized>(&self, other: &T) -> bool where
    Self: Sized,
    T: RenderPassDesc
[src]

Returns true if this render pass is compatible with another render pass. Read more

fn build_render_pass(
    self,
    device: Arc<Device>
) -> Result<RenderPass<Self>, RenderPassCreationError> where
    Self: Sized
[src]

Builds a render pass from this description. Read more

fn num_color_attachments(&self, subpass: u32) -> Option<u32>[src]

Returns the number of color attachments of a subpass. Returns None if out of range.

fn num_samples(&self, subpass: u32) -> Option<u32>[src]

Returns the number of samples of the attachments of a subpass. Returns None if out of range or if the subpass has no attachment. TODO: return an enum instead? Read more

fn has_depth_stencil_attachment(&self, subpass: u32) -> Option<(bool, bool)>[src]

Returns a tuple whose first element is true if there's a depth attachment, and whose second element is true if there's a stencil attachment. Returns None if out of range. Read more

fn has_depth(&self, subpass: u32) -> Option<bool>[src]

Returns true if a subpass has a depth attachment or a depth-stencil attachment.

fn has_writable_depth(&self, subpass: u32) -> Option<bool>[src]

Returns true if a subpass has a depth attachment or a depth-stencil attachment whose layout is not DepthStencilReadOnlyOptimal. Read more

fn has_stencil(&self, subpass: u32) -> Option<bool>[src]

Returns true if a subpass has a stencil attachment or a depth-stencil attachment.

fn has_writable_stencil(&self, subpass: u32) -> Option<bool>[src]

Returns true if a subpass has a stencil attachment or a depth-stencil attachment whose layout is not DepthStencilReadOnlyOptimal. Read more

impl<D> RenderPassAbstract for RenderPass<D> where
    D: RenderPassDesc
[src]

impl<C, D> RenderPassDescClearValues<C> for RenderPass<D> where
    D: RenderPassDescClearValues<C>, 
[src]

impl<D> Drop for RenderPass<D>[src]

impl<D> Debug for RenderPass<D> where
    D: Debug
[src]

Auto Trait Implementations

impl<D> Send for RenderPass<D> where
    D: Send

impl<D> Sync for RenderPass<D> where
    D: Sync

Blanket Implementations

impl<T> DeviceOwned for T where
    T: Deref,
    <T as Deref>::Target: DeviceOwned
[src]

impl<T> Content for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]