A PFX file is composed of various elements of different types

This section summarises of the elements which can compose a PFX file.

The various pages which describe different elements are nested in the same structure as they are in the PFX format, so the navigation reflects the internal arrangement of a PFX file.

A <texture> element is used to describe an imageThe root element of any PFX file is a <pfx> element<shader> elements provide shader source for a pipeline.The <pipeline> element completely defines a rendering configuration, with attributes, uniforms, buffers referenced, shaders, textures, and so onThe <effect> element defines the entire actual rendering procedure of a PFX effectThe <pass> element defines a rendering operation to one or more targetsAn <attribute> element defines a vertex attributeA <buffer> element defines a buffer that could be used as a uniform, storage, or atomic buffer by an effectA <vboBinding> element defines a vertex buffer object binding<file> provides a file containing shader code in whatever format is suitable for the implementation and API versionThe <code> element directly contains shader source code for the <shader> element<entry> elements describe entries (variables) in a buffer (UBO or SSBO)A <subpass> defines a set of rendering operations. A subpass can either form part, or the entirety of a passA <pipeline> element within a <subpass> references an actual pipeline element that will be used to render provided a <condition> is metA <condition> element contains a condition that must be satisfied so the containing pipeline element can be chosen to render an object<buffer> specifies a buffer that will be present in the specific binding pointA <texture> references an image that will be used by shaders in the pipelineThis element contains a reference to a <shader> element defined elsewhere in the PFX file<depthstencil> element configures the depth/depthstencil buffer used by the pipeline<blending> element configures blending for colour attachments<rasterization> element configures various options for the polygons, like winding order and cullingAn input attachment is a special type of attachment used to communicate image information between subpassesA <uniform> element defines a shader invocation-constant value