Struct vulkano::pipeline::GraphicsPipeline [−][src]
pub struct GraphicsPipeline<VertexDefinition, Layout> { /* fields omitted */ }
Defines how the implementation should perform a draw operation.
This object contains the shaders and the various fixed states that describe how the implementation should perform the various operations needed by a draw command.
Implementations
impl GraphicsPipeline<(), ()>
[src]
impl GraphicsPipeline<(), ()>
[src]pub fn start<'a>(
) -> GraphicsPipelineBuilder<BufferlessDefinition, EmptyEntryPointDummy, (), EmptyEntryPointDummy, (), EmptyEntryPointDummy, (), EmptyEntryPointDummy, (), EmptyEntryPointDummy, ()>
[src]
pub fn start<'a>(
) -> GraphicsPipelineBuilder<BufferlessDefinition, EmptyEntryPointDummy, (), EmptyEntryPointDummy, (), EmptyEntryPointDummy, (), EmptyEntryPointDummy, (), EmptyEntryPointDummy, ()>
[src]Starts the building process of a graphics pipeline. Returns a builder object that you can fill with the various parameters.
impl<Mv, L> GraphicsPipeline<Mv, L>
[src]
impl<Mv, L> GraphicsPipeline<Mv, L>
[src]impl<Mv, L> GraphicsPipeline<Mv, L> where
L: PipelineLayoutAbstract,
[src]
impl<Mv, L> GraphicsPipeline<Mv, L> where
L: PipelineLayoutAbstract,
[src]impl<Mv, L> GraphicsPipeline<Mv, L>
[src]
impl<Mv, L> GraphicsPipeline<Mv, L>
[src]impl<Mv, L> GraphicsPipeline<Mv, L>
[src]
impl<Mv, L> GraphicsPipeline<Mv, L>
[src]pub fn render_pass(&self) -> &Arc<RenderPass>
[src]
pub fn render_pass(&self) -> &Arc<RenderPass>
[src]Returns the render pass used in the constructor.
pub fn has_dynamic_line_width(&self) -> bool
[src]
pub fn has_dynamic_line_width(&self) -> bool
[src]Returns true if the line width used by this pipeline is dynamic.
pub fn num_viewports(&self) -> u32
[src]
pub fn num_viewports(&self) -> u32
[src]Returns the number of viewports and scissors of this pipeline.
pub fn has_dynamic_viewports(&self) -> bool
[src]
pub fn has_dynamic_viewports(&self) -> bool
[src]Returns true if the viewports used by this pipeline are dynamic.
pub fn has_dynamic_scissors(&self) -> bool
[src]
pub fn has_dynamic_scissors(&self) -> bool
[src]Returns true if the scissors used by this pipeline are dynamic.
pub fn has_dynamic_depth_bounds(&self) -> bool
[src]
pub fn has_dynamic_depth_bounds(&self) -> bool
[src]Returns true if the depth bounds used by this pipeline are dynamic.
pub fn has_dynamic_stencil_compare_mask(&self) -> bool
[src]
pub fn has_dynamic_stencil_compare_mask(&self) -> bool
[src]Returns true if the stencil compare masks used by this pipeline are dynamic.
pub fn has_dynamic_stencil_write_mask(&self) -> bool
[src]
pub fn has_dynamic_stencil_write_mask(&self) -> bool
[src]Returns true if the stencil write masks used by this pipeline are dynamic.
pub fn has_dynamic_stencil_reference(&self) -> bool
[src]
pub fn has_dynamic_stencil_reference(&self) -> bool
[src]Returns true if the stencil references used by this pipeline are dynamic.
Trait Implementations
impl<Mv, L> Debug for GraphicsPipeline<Mv, L>
[src]
impl<Mv, L> Debug for GraphicsPipeline<Mv, L>
[src]impl<Mv, L> DeviceOwned for GraphicsPipeline<Mv, L>
[src]
impl<Mv, L> DeviceOwned for GraphicsPipeline<Mv, L>
[src]impl<Mv, L> GraphicsPipelineAbstract for GraphicsPipeline<Mv, L> where
L: PipelineLayoutAbstract,
Mv: VertexSource<Vec<Arc<dyn BufferAccess + Send + Sync>>>,
[src]
impl<Mv, L> GraphicsPipelineAbstract for GraphicsPipeline<Mv, L> where
L: PipelineLayoutAbstract,
Mv: VertexSource<Vec<Arc<dyn BufferAccess + Send + Sync>>>,
[src]fn inner(&self) -> GraphicsPipelineSys<'_>
[src]
fn inner(&self) -> GraphicsPipelineSys<'_>
[src]Returns an opaque object that represents the inside of the graphics pipeline.
fn has_dynamic_line_width(&self) -> bool
[src]
fn has_dynamic_line_width(&self) -> bool
[src]Returns true if the line width used by this pipeline is dynamic.
fn num_viewports(&self) -> u32
[src]
fn num_viewports(&self) -> u32
[src]Returns the number of viewports and scissors of this pipeline.
fn has_dynamic_viewports(&self) -> bool
[src]
fn has_dynamic_viewports(&self) -> bool
[src]Returns true if the viewports used by this pipeline are dynamic.
fn has_dynamic_scissors(&self) -> bool
[src]
fn has_dynamic_scissors(&self) -> bool
[src]Returns true if the scissors used by this pipeline are dynamic.
fn has_dynamic_depth_bounds(&self) -> bool
[src]
fn has_dynamic_depth_bounds(&self) -> bool
[src]Returns true if the depth bounds used by this pipeline are dynamic.
fn has_dynamic_stencil_compare_mask(&self) -> bool
[src]
fn has_dynamic_stencil_compare_mask(&self) -> bool
[src]Returns true if the stencil compare masks used by this pipeline are dynamic.
fn has_dynamic_stencil_write_mask(&self) -> bool
[src]
fn has_dynamic_stencil_write_mask(&self) -> bool
[src]Returns true if the stencil write masks used by this pipeline are dynamic.
fn has_dynamic_stencil_reference(&self) -> bool
[src]
fn has_dynamic_stencil_reference(&self) -> bool
[src]Returns true if the stencil references used by this pipeline are dynamic.
impl<Mv, L> Hash for GraphicsPipeline<Mv, L> where
L: PipelineLayoutAbstract,
Mv: VertexSource<Vec<Arc<dyn BufferAccess + Send + Sync>>>,
[src]
impl<Mv, L> Hash for GraphicsPipeline<Mv, L> where
L: PipelineLayoutAbstract,
Mv: VertexSource<Vec<Arc<dyn BufferAccess + Send + Sync>>>,
[src]impl<Mv, L> PartialEq<GraphicsPipeline<Mv, L>> for GraphicsPipeline<Mv, L> where
L: PipelineLayoutAbstract,
Mv: VertexSource<Vec<Arc<dyn BufferAccess + Send + Sync>>>,
[src]
impl<Mv, L> PartialEq<GraphicsPipeline<Mv, L>> for GraphicsPipeline<Mv, L> where
L: PipelineLayoutAbstract,
Mv: VertexSource<Vec<Arc<dyn BufferAccess + Send + Sync>>>,
[src]impl<Mv, L> PipelineLayoutAbstract for GraphicsPipeline<Mv, L> where
L: PipelineLayoutAbstract,
[src]
impl<Mv, L> PipelineLayoutAbstract for GraphicsPipeline<Mv, L> where
L: PipelineLayoutAbstract,
[src]fn sys(&self) -> PipelineLayoutSys<'_>
[src]
fn sys(&self) -> PipelineLayoutSys<'_>
[src]Returns an opaque object that allows internal access to the pipeline layout. Read more
fn descriptor_set_layout(
&self,
index: usize
) -> Option<&Arc<UnsafeDescriptorSetLayout>>
[src]
fn descriptor_set_layout(
&self,
index: usize
) -> Option<&Arc<UnsafeDescriptorSetLayout>>
[src]Returns the UnsafeDescriptorSetLayout
object of the specified set index. Read more
impl<Mv, L> PipelineLayoutDesc for GraphicsPipeline<Mv, L> where
L: PipelineLayoutDesc,
[src]
impl<Mv, L> PipelineLayoutDesc for GraphicsPipeline<Mv, L> where
L: PipelineLayoutDesc,
[src]fn num_sets(&self) -> usize
[src]
fn num_sets(&self) -> usize
[src]Returns the number of sets in the layout. Includes possibly empty sets. Read more
fn num_bindings_in_set(&self, set: usize) -> Option<usize>
[src]
fn num_bindings_in_set(&self, set: usize) -> Option<usize>
[src]Returns the number of descriptors in the set. Includes possibly empty descriptors. Read more
fn descriptor(&self, set: usize, binding: usize) -> Option<DescriptorDesc>
[src]
fn descriptor(&self, set: usize, binding: usize) -> Option<DescriptorDesc>
[src]Returns the descriptor for the given binding of the given set. Read more
fn num_push_constants_ranges(&self) -> usize
[src]
fn num_push_constants_ranges(&self) -> usize
[src]Returns the number of push constant ranges of the layout.
fn push_constants_range(&self, num: usize) -> Option<PipelineLayoutDescPcRange>
[src]
fn push_constants_range(&self, num: usize) -> Option<PipelineLayoutDescPcRange>
[src]Returns a description of the given push constants range. Read more
fn provided_set_layout(
&self,
_set: usize
) -> Option<Arc<UnsafeDescriptorSetLayout>>
[src]
fn provided_set_layout(
&self,
_set: usize
) -> Option<Arc<UnsafeDescriptorSetLayout>>
[src]If the PipelineLayoutDesc
implementation is able to provide an existing
UnsafeDescriptorSetLayout
for a given set, it can do so by returning it here. Read more
fn union<T>(self, other: T) -> PipelineLayoutDescUnion<Self, T> where
Self: Sized,
[src]
fn union<T>(self, other: T) -> PipelineLayoutDescUnion<Self, T> where
Self: Sized,
[src]Builds the union of this layout and another.
fn check_against_limits(
&self,
device: &Device
) -> Result<(), PipelineLayoutLimitsError>
[src]
fn check_against_limits(
&self,
device: &Device
) -> Result<(), PipelineLayoutLimitsError>
[src]Checks whether this description fulfills the device limits requirements.
fn build(
self,
device: Arc<Device>
) -> Result<PipelineLayout<Self>, PipelineLayoutCreationError> where
Self: Sized,
[src]
fn build(
self,
device: Arc<Device>
) -> Result<PipelineLayout<Self>, PipelineLayoutCreationError> where
Self: Sized,
[src]Turns the layout description into a PipelineLayout
object that can be used by Vulkan. Read more
impl<Mv, L, I> VertexDefinition<I> for GraphicsPipeline<Mv, L> where
Mv: VertexDefinition<I>,
[src]
impl<Mv, L, I> VertexDefinition<I> for GraphicsPipeline<Mv, L> where
Mv: VertexDefinition<I>,
[src]type BuffersIter = <Mv as VertexDefinition<I>>::BuffersIter
type BuffersIter = <Mv as VertexDefinition<I>>::BuffersIter
Iterator that returns the offset, the stride (in bytes) and input rate of each buffer.
type AttribsIter = <Mv as VertexDefinition<I>>::AttribsIter
type AttribsIter = <Mv as VertexDefinition<I>>::AttribsIter
Iterator that returns the attribute location, buffer id, and infos.
fn definition(
&self,
interface: &I
) -> Result<(Self::BuffersIter, Self::AttribsIter), IncompatibleVertexDefinitionError>
[src]
fn definition(
&self,
interface: &I
) -> Result<(Self::BuffersIter, Self::AttribsIter), IncompatibleVertexDefinitionError>
[src]Builds the vertex definition to use to link this definition to a vertex shader’s input interface. Read more
impl<Mv, L, S> VertexSource<S> for GraphicsPipeline<Mv, L> where
Mv: VertexSource<S>,
[src]
impl<Mv, L, S> VertexSource<S> for GraphicsPipeline<Mv, L> where
Mv: VertexSource<S>,
[src]impl<Mv, L> VulkanObject for GraphicsPipeline<Mv, L>
[src]
impl<Mv, L> VulkanObject for GraphicsPipeline<Mv, L>
[src]const TYPE: ObjectType
[src]
const TYPE: ObjectType
[src]The ObjectType
of the internal Vulkan handle.
fn internal_object(&self) -> Pipeline
[src]
fn internal_object(&self) -> Pipeline
[src]Returns a reference to the object.
impl<Mv, L> Eq for GraphicsPipeline<Mv, L> where
L: PipelineLayoutAbstract,
Mv: VertexSource<Vec<Arc<dyn BufferAccess + Send + Sync>>>,
[src]
L: PipelineLayoutAbstract,
Mv: VertexSource<Vec<Arc<dyn BufferAccess + Send + Sync>>>,
Auto Trait Implementations
impl<VertexDefinition, Layout> RefUnwindSafe for GraphicsPipeline<VertexDefinition, Layout> where
Layout: RefUnwindSafe,
VertexDefinition: RefUnwindSafe,
Layout: RefUnwindSafe,
VertexDefinition: RefUnwindSafe,
impl<VertexDefinition, Layout> Send for GraphicsPipeline<VertexDefinition, Layout> where
Layout: Send,
VertexDefinition: Send,
Layout: Send,
VertexDefinition: Send,
impl<VertexDefinition, Layout> Sync for GraphicsPipeline<VertexDefinition, Layout> where
Layout: Sync,
VertexDefinition: Sync,
Layout: Sync,
VertexDefinition: Sync,
impl<VertexDefinition, Layout> Unpin for GraphicsPipeline<VertexDefinition, Layout> where
Layout: Unpin,
VertexDefinition: Unpin,
Layout: Unpin,
VertexDefinition: Unpin,
impl<VertexDefinition, Layout> UnwindSafe for GraphicsPipeline<VertexDefinition, Layout> where
Layout: UnwindSafe,
VertexDefinition: UnwindSafe,
Layout: UnwindSafe,
VertexDefinition: UnwindSafe,
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> Content for T
[src]
impl<T> Content for T
[src]pub fn ref_from_ptr(*mut c_void, usize) -> Option<*mut T>
[src]
pub fn ref_from_ptr(*mut c_void, usize) -> Option<*mut T>
[src]Builds a pointer to this type from a raw pointer.
pub fn is_size_suitable(usize) -> bool
[src]
pub fn is_size_suitable(usize) -> bool
[src]Returns true if the size is suitable to store a type like this.
pub fn indiv_size() -> usize
[src]
pub fn indiv_size() -> usize
[src]Returns the size of an individual element.