<pipeline> (//pfx/pipeline)

The <pipeline> element completely defines a rendering configuration, with attributes, uniforms, buffers referenced, shaders, textures, and so on.

The <pipeline> element completely defines a rendering configuration, with attributes, uniforms, buffers referenced, shaders, textures, and so on.

A <pipeline> element references other elements (textures, buffers and shaders), and exports a number of application-specific semantics which can be used by an application to identify the meaning of a given attribute, uniform, or texture.

<pipeline> elements get referenced in <subpass> elements, where they are normally decorated with <condition> elements. This mechanism is intended to be implemented in such a way, as to allow a user to add renderables to subpasses that can use different pipelines depending on what object is being rendered.

Also, many different types of configurations can be configured in the pipeline, such as alpha blending, depth and / or stencil testing, the primitive topology etc.

XML Attributes (<pipeline> element)

ATTRIBUTE

Description

Name

A unique text identifier for this effect.

Child elements (<pipeline> element)

ELEMENT

Description

<attribute>

The definition of a vertex attribute.

<vbobinding>

The definition of a vertex buffer object binding.

<uniform>

The definition of a shader constant.

<buffer>

A reference to a <buffer> element and information of its shader access. Only valid for apis that support such functionality.

<texture>

A reference to a <texture> element or model texture, and information for its sampling.

<shader>

A reference to a <shader> element.

<depthstencil>

Optional configuration of depth/stencil testing.

<blending>

Optional configuration of alpha blending.

<rasterization>

Optional configuration of culling.