[−][src]Struct nannou::vk::RenderPass
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]
D: RenderPassDesc,
pub fn new(
device: Arc<Device>,
description: D
) -> Result<RenderPass<D>, RenderPassCreationError>
[src]
device: Arc<Device>,
description: D
) -> Result<RenderPass<D>, RenderPassCreationError>
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]
device: Arc<Device>
) -> Result<RenderPass<EmptySinglePassRenderPassDesc>, RenderPassCreationError>
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> Drop for RenderPass<D>
[src]
impl<D> RenderPassDesc for RenderPass<D> where
D: RenderPassDesc,
[src]
D: RenderPassDesc,
fn num_attachments(&self) -> usize
[src]
fn attachment_desc(&self, num: usize) -> Option<AttachmentDescription>
[src]
fn num_subpasses(&self) -> usize
[src]
fn subpass_desc(&self, num: usize) -> Option<PassDescription>
[src]
fn num_dependencies(&self) -> usize
[src]
fn dependency_desc(&self, num: usize) -> Option<PassDependencyDescription>
[src]
ⓘImportant traits for RenderPassDescAttachments<'a, R>fn attachment_descs(&self) -> RenderPassDescAttachments<Self>
[src]
ⓘImportant traits for RenderPassDescSubpasses<'a, R>fn subpass_descs(&self) -> RenderPassDescSubpasses<Self>
[src]
ⓘImportant traits for RenderPassDescDependencies<'a, R>fn dependency_descs(&self) -> RenderPassDescDependencies<Self>
[src]
fn is_compatible_with<T>(&self, other: &T) -> bool where
T: RenderPassDesc + ?Sized,
[src]
T: RenderPassDesc + ?Sized,
fn build_render_pass(
self,
device: Arc<Device>
) -> Result<RenderPass<Self>, RenderPassCreationError>
[src]
self,
device: Arc<Device>
) -> Result<RenderPass<Self>, RenderPassCreationError>
fn num_color_attachments(&self, subpass: u32) -> Option<u32>
[src]
fn num_samples(&self, subpass: u32) -> Option<u32>
[src]
fn has_depth_stencil_attachment(&self, subpass: u32) -> Option<(bool, bool)>
[src]
fn has_depth(&self, subpass: u32) -> Option<bool>
[src]
fn has_writable_depth(&self, subpass: u32) -> Option<bool>
[src]
fn has_stencil(&self, subpass: u32) -> Option<bool>
[src]
fn has_writable_stencil(&self, subpass: u32) -> Option<bool>
[src]
impl<D> DeviceOwned for RenderPass<D>
[src]
impl<C, D> RenderPassDescClearValues<C> for RenderPass<D> where
D: RenderPassDescClearValues<C>,
[src]
D: RenderPassDescClearValues<C>,
fn convert_clear_values(
&self,
vals: C
) -> Box<dyn Iterator<Item = ClearValue> + 'static>
[src]
&self,
vals: C
) -> Box<dyn Iterator<Item = ClearValue> + 'static>
impl<D> Debug for RenderPass<D> where
D: Debug,
[src]
D: Debug,
impl<D> RenderPassAbstract for RenderPass<D> where
D: RenderPassDesc,
[src]
D: RenderPassDesc,
fn inner(&self) -> RenderPassSys
[src]
Auto Trait Implementations
impl<D> Send for RenderPass<D> where
D: Send,
D: Send,
impl<D> Unpin for RenderPass<D> where
D: Unpin,
D: Unpin,
impl<D> Sync for RenderPass<D> where
D: Sync,
D: Sync,
impl<D> UnwindSafe for RenderPass<D> where
D: UnwindSafe,
D: UnwindSafe,
impl<D> RefUnwindSafe for RenderPass<D> where
D: RefUnwindSafe,
D: RefUnwindSafe,
Blanket Implementations
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> From<T> for T
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> RenderPassDesc for T where
T: SafeDeref,
<T as Deref>::Target: RenderPassDesc,
[src]
T: SafeDeref,
<T as Deref>::Target: RenderPassDesc,
fn num_attachments(&self) -> usize
[src]
fn attachment_desc(&self, num: usize) -> Option<AttachmentDescription>
[src]
fn num_subpasses(&self) -> usize
[src]
fn subpass_desc(&self, num: usize) -> Option<PassDescription>
[src]
fn num_dependencies(&self) -> usize
[src]
fn dependency_desc(&self, num: usize) -> Option<PassDependencyDescription>
[src]
ⓘImportant traits for RenderPassDescAttachments<'a, R>fn attachment_descs(&self) -> RenderPassDescAttachments<Self>
[src]
ⓘImportant traits for RenderPassDescSubpasses<'a, R>fn subpass_descs(&self) -> RenderPassDescSubpasses<Self>
[src]
ⓘImportant traits for RenderPassDescDependencies<'a, R>fn dependency_descs(&self) -> RenderPassDescDependencies<Self>
[src]
fn is_compatible_with<T>(&self, other: &T) -> bool where
T: RenderPassDesc + ?Sized,
[src]
T: RenderPassDesc + ?Sized,
fn build_render_pass(
self,
device: Arc<Device>
) -> Result<RenderPass<Self>, RenderPassCreationError>
[src]
self,
device: Arc<Device>
) -> Result<RenderPass<Self>, RenderPassCreationError>
fn num_color_attachments(&self, subpass: u32) -> Option<u32>
[src]
fn num_samples(&self, subpass: u32) -> Option<u32>
[src]
fn has_depth_stencil_attachment(&self, subpass: u32) -> Option<(bool, bool)>
[src]
fn has_depth(&self, subpass: u32) -> Option<bool>
[src]
fn has_writable_depth(&self, subpass: u32) -> Option<bool>
[src]
fn has_stencil(&self, subpass: u32) -> Option<bool>
[src]
fn has_writable_stencil(&self, subpass: u32) -> Option<bool>
[src]
impl<T, C> RenderPassDescClearValues<C> for T where
T: SafeDeref,
<T as Deref>::Target: RenderPassDescClearValues<C>,
[src]
T: SafeDeref,
<T as Deref>::Target: RenderPassDescClearValues<C>,
fn convert_clear_values(
&self,
vals: C
) -> Box<dyn Iterator<Item = ClearValue> + 'static>
[src]
&self,
vals: C
) -> Box<dyn Iterator<Item = ClearValue> + 'static>
impl<T> RenderPassAbstract for T where
T: SafeDeref,
<T as Deref>::Target: RenderPassAbstract,
[src]
T: SafeDeref,
<T as Deref>::Target: RenderPassAbstract,
fn inner(&self) -> RenderPassSys
[src]
impl<T> Content for T
[src]
fn ref_from_ptr(ptr: *mut c_void, size: usize) -> Option<*mut T>
[src]
fn is_size_suitable(size: usize) -> bool
[src]
fn indiv_size() -> usize
[src]
impl<T> DeviceOwned for T where
T: Deref,
<T as Deref>::Target: DeviceOwned,
[src]
T: Deref,
<T as Deref>::Target: DeviceOwned,
impl<A, B> RenderPassCompatible<B> for A where
A: RenderPassDesc + ?Sized,
B: RenderPassDesc + ?Sized,
[src]
A: RenderPassDesc + ?Sized,
B: RenderPassDesc + ?Sized,
fn is_compatible_with(&self, other: &B) -> bool
[src]
impl<A, B> RenderPassSubpassInterface<B> for A where
A: RenderPassDesc,
B: ShaderInterfaceDef + ?Sized,
[src]
A: RenderPassDesc,
B: ShaderInterfaceDef + ?Sized,
fn is_compatible_with(&self, subpass: u32, other: &B) -> bool
[src]
impl<T> SafeBorrow<T> for T
[src]
impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S where
D: AdaptFrom<S, Swp, Dwp, T>,
Dwp: WhitePoint,
Swp: WhitePoint,
T: Component + Float,
[src]
D: AdaptFrom<S, Swp, Dwp, T>,
Dwp: WhitePoint,
Swp: WhitePoint,
T: Component + Float,
fn adapt_into_using<M>(self, method: M) -> D where
M: TransformMatrix<Swp, Dwp, T>,
[src]
M: TransformMatrix<Swp, Dwp, T>,
fn adapt_into(self) -> D
[src]
impl<T> SetParameter for T
fn set<T>(&mut self, value: T) -> <T as Parameter<Self>>::Result where
T: Parameter<Self>,
T: Parameter<Self>,
impl<T> SetParameter for T
fn set<T>(&mut self, value: T) -> <T as Parameter<Self>>::Result where
T: Parameter<Self>,
T: Parameter<Self>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,