- Qt 6.11
- Qt Quick 3D
- QML Types
- QtQuick3D.Helpers
- RenderOutputProvider
- Qt Quick 3D | Commercial or GPLv3

# RenderOutputProvider QML Type

Used as a bridge to access textures provided in passes. More...

Import Statement: | `import QtQuick3D.Helpers`
Since: | Qt 6.11
Inherits: | TextureProviderExtension

- List of all members, including inherited members

## Properties

- attachmentSelector : enumeration
- renderPass : RenderPass
- textureSource : enumeration

## Detailed Description

This type is used to provide textures that are generated by passes in the rendering pipeline.

Some example of when this is useful is when you want to access the depth texture generated by the ZPrePass, or the ambient occlusion texture generated by the SSAO pass. This type can be used to access these generated textures and use them in materials or effects.

     Texture {
         textureProvider: RenderOutputProvider {
             // Specify the pass buffer texture you want to access
             textureSource: RenderOutputProvider.DepthTexture
         }
     }

See also QQuick3DTextureProviderExtension and QSSGRenderExtension.

## Property Documentation

### attachmentSelector : enumeration

Selects which color attachment of the user-defined RenderPass to expose as a texture. Only relevant when textureSource is set to `UserPassTexture`.

Constant | Description
--- | ---
`RenderOutputProvider.Attachment0` | Use color attachment 0 (default).
`RenderOutputProvider.Attachment1` | Use color attachment 1.
`RenderOutputProvider.Attachment2` | Use color attachment 2.
`RenderOutputProvider.Attachment3` | Use color attachment 3.

See also renderPass and textureSource.

### renderPass : RenderPass

The RenderPass whose output attachments will be exposed as a texture. Setting this property automatically sets textureSource to `UserPassTexture`. Use attachmentSelector to choose which color attachment of the pass to expose.

See also attachmentSelector, textureSource, and RenderPass.

### textureSource : enumeration

This property holds which pass buffer texture to expose.

Constant | Description
--- | ---
`RenderOutputProvider.None` | No texture source is selected.
`RenderOutputProvider.UserPassTexture` | Accesses a color attachment from a user-defined RenderPass. Use the renderPass and attachmentSelector properties to specify which pass and attachment to use.
`RenderOutputProvider.AoTexture` | The ambient occlusion texture created by QtQuick3D's SSAO pass.
`RenderOutputProvider.DepthTexture` | The depth texture created by QtQuick3D's depth pre-pass.
`RenderOutputProvider.ScreenTexture` | The texture containing the rendered scene.
`RenderOutputProvider.NormalTexture` | The world-space normal texture created by QtQuick3D's normal pre-pass.
`RenderOutputProvider.MotionVectorTexture` | The motion vector texture created by QtQuick3D's motion vector pass.