Struct vulkano::pipeline::GraphicsPipeline [] [src]

pub struct GraphicsPipeline<VertexDefinition, Layout, RenderP> { /* 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.

Methods

impl GraphicsPipeline<(), (), ()>
[src]

impl<Vdef, Rp> GraphicsPipeline<Vdef, (), Rp> where
    Rp: RenderPassAbstract
[src]

Deprecated

Builds a new graphics pipeline object.

See the documentation of GraphicsPipelineCreateInfo for more info about the parameter.

In order to avoid compiler errors caused by not being able to infer template parameters, this function assumes that you will only use a vertex shader and a fragment shader. See the other constructors for other possibilities.

Deprecated

Builds a new graphics pipeline object with a geometry shader.

See the documentation of GraphicsPipelineCreateInfo for more info about the parameter.

In order to avoid compiler errors caused by not being able to infer template parameters, this function assumes that you will use a vertex shader, a geometry shader and a fragment shader. See the other constructors for other possibilities.

Deprecated

Builds a new graphics pipeline object with tessellation shaders.

See the documentation of GraphicsPipelineCreateInfo for more info about the parameter.

In order to avoid compiler errors caused by not being able to infer template parameters, this function assumes that you will use a vertex shader, a tessellation control shader, a tessellation evaluation shader and a fragment shader. See the other constructors for other possibilities.

Deprecated

Builds a new graphics pipeline object with a geometry and tessellation shaders.

See the documentation of GraphicsPipelineCreateInfo for more info about the parameter.

In order to avoid compiler errors caused by not being able to infer template parameters, this function assumes that you will use a vertex shader, a tessellation control shader, a tessellation evaluation shader, a geometry shader and a fragment shader. See the other constructors for other possibilities.

impl<Mv, L, Rp> GraphicsPipeline<Mv, L, Rp>
[src]

Returns the vertex definition used in the constructor.

Returns the device used to create this pipeline.

impl<Mv, L, Rp> GraphicsPipeline<Mv, L, Rp> where
    L: PipelineLayoutAbstract
[src]

Returns the pipeline layout used in the constructor.

impl<Mv, L, Rp> GraphicsPipeline<Mv, L, Rp> where
    Rp: RenderPassDesc
[src]

Returns the pass used in the constructor.

impl<Mv, L, Rp> GraphicsPipeline<Mv, L, Rp>
[src]

Returns the render pass used in the constructor.

Returns true if the line width used by this pipeline is dynamic.

Returns the number of viewports and scissors of this pipeline.

Returns true if the viewports used by this pipeline are dynamic.

Returns true if the scissors used by this pipeline are dynamic.

Returns true if the depth bounds used by this pipeline are dynamic.

Returns true if the stencil compare masks used by this pipeline are dynamic.

Returns true if the stencil write masks used by this pipeline are dynamic.

Returns true if the stencil references used by this pipeline are dynamic.

Trait Implementations

impl<Mv, L, Rp> PipelineLayoutAbstract for GraphicsPipeline<Mv, L, Rp> where
    L: PipelineLayoutAbstract
[src]

Returns an opaque object that allows internal access to the pipeline layout. Read more

Returns the UnsafeDescriptorSetLayout object of the specified set index. Read more

impl<Mv, L, Rp> PipelineLayoutDesc for GraphicsPipeline<Mv, L, Rp> where
    L: PipelineLayoutDesc
[src]

Returns the number of sets in the layout. Includes possibly empty sets. Read more

Returns the number of descriptors in the set. Includes possibly empty descriptors. Read more

Returns the descriptor for the given binding of the given set. Read more

Returns the number of push constant ranges of the layout.

Returns a description of the given push constants range. Read more

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

Builds the union of this layout and another.

Turns the layout description into a PipelineLayout object that can be used by Vulkan. Read more

impl<Mv, L, Rp> PipelineLayoutDescNames for GraphicsPipeline<Mv, L, Rp> where
    L: PipelineLayoutDescNames
[src]

Returns the set ID and descriptor ID within set of the descriptor with the given name. Read more

impl<Mv, L, Rp> DeviceOwned for GraphicsPipeline<Mv, L, Rp>
[src]

Returns the device that owns Self.

impl<Mv, L, Rp> Debug for GraphicsPipeline<Mv, L, Rp>
[src]

Formats the value using the given formatter.

impl<Mv, L, Rp> RenderPassAbstract for GraphicsPipeline<Mv, L, Rp> where
    Rp: RenderPassAbstract
[src]

Returns an opaque object representing the render pass' internals. Read more

impl<Mv, L, Rp> RenderPassDesc for GraphicsPipeline<Mv, L, Rp> where
    Rp: RenderPassDesc
[src]

Returns the number of attachments of the render pass.

Returns the description of an attachment. Read more

Returns the number of subpasses of the render pass.

Returns the description of a subpass. Read more

Returns the number of dependencies of the render pass.

Returns the description of a dependency. Read more

Returns an iterator to the list of attachments.

Returns an iterator to the list of subpasses.

Returns an iterator to the list of dependencies.

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

Builds a render pass from this description. Read more

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

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

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

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

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

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

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

impl<C, Mv, L, Rp> RenderPassDescClearValues<C> for GraphicsPipeline<Mv, L, Rp> where
    Rp: RenderPassDescClearValues<C>, 
[src]

Decodes a C into a list of clear values where each element corresponds to an attachment. The size of the returned iterator must be the same as the number of attachments. Read more

impl<Mv, L, Rp> VulkanObject for GraphicsPipeline<Mv, L, Rp>
[src]

The type of the object.

Returns a reference to the object.

impl<Mv, L, Rp> GraphicsPipelineAbstract for GraphicsPipeline<Mv, L, Rp> where
    L: PipelineLayoutAbstract,
    Rp: RenderPassAbstract,
    Mv: VertexSource<Vec<Arc<BufferAccess + Send + Sync>>>, 
[src]

Returns an opaque object that represents the inside of the graphics pipeline.

Returns the index of the subpass this graphics pipeline is rendering to.

Returns true if the line width used by this pipeline is dynamic.

Returns the number of viewports and scissors of this pipeline.

Returns true if the viewports used by this pipeline are dynamic.

Returns true if the scissors used by this pipeline are dynamic.

Returns true if the depth bounds used by this pipeline are dynamic.

Returns true if the stencil compare masks used by this pipeline are dynamic.

Returns true if the stencil write masks used by this pipeline are dynamic.

Returns true if the stencil references used by this pipeline are dynamic.

Returns the subpass this graphics pipeline is rendering to.

impl<Mv, L, Rp, I> VertexDefinition<I> for GraphicsPipeline<Mv, L, Rp> where
    Mv: VertexDefinition<I>, 
[src]

Iterator that returns the offset, the stride (in bytes) and input rate of each buffer.

Iterator that returns the attribute location, buffer id, and infos.

Builds the vertex definition to use to link this definition to a vertex shader's input interface. Read more

impl<Mv, L, Rp, S> VertexSource<S> for GraphicsPipeline<Mv, L, Rp> where
    Mv: VertexSource<S>, 
[src]

Checks and returns the list of buffers with offsets, number of vertices and number of instances.