Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
QSSGRenderSimpleQuadRenderer Class Reference

\qmltype SimpleQuadRenderer \inqmlmodule QtQuick3D.Helpers \inherits RenderExtension More...

Inheritance diagram for QSSGRenderSimpleQuadRenderer:
Collaboration diagram for QSSGRenderSimpleQuadRenderer:

Public Member Functions

 QSSGRenderSimpleQuadRenderer ()
virtual bool prepareData (QSSGFrameData &data) final
 Called after scene data is collected, but before any render data or rendering in the current frame has been done.
virtual void prepareRender (QSSGFrameData &data) final
 Prepare data for rendering.
virtual void render (QSSGFrameData &data) final
 Record the render pass.
virtual void resetForFrame () final
 Called each time a new frame starts.
virtual RenderMode mode () const final
virtual RenderStage stage () const final
 QSSGRenderSimpleQuadRenderer ()
virtual bool prepareData (QSSGFrameData &data) final
 Called after scene data is collected, but before any render data or rendering in the current frame has been done.
virtual void prepareRender (QSSGFrameData &data) final
 Prepare data for rendering.
virtual void render (QSSGFrameData &data) final
 Record the render pass.
virtual void resetForFrame () final
 Called each time a new frame starts.
virtual RenderMode mode () const final
virtual RenderStage stage () const final
Public Member Functions inherited from QSSGRenderExtension
 QSSGRenderExtension ()
virtual ~QSSGRenderExtension ()
Public Member Functions inherited from QSSGRenderGraphObject
bool hasGraphicsResources () const noexcept
virtual Q_QUICK3D_PROFILE_ID_ ~QSSGRenderGraphObject ()

Public Attributes

QSSGRenderImageimage = nullptr
QSSGRenderImageTexture renderImage
QRhiShaderResourceBindingssrb = nullptr
QSSGRhiShaderPipelinePtr quadShaderPipeline
Public Attributes inherited from QSSGRenderGraphObject
const Type type
FlagT flags { 0 }

Additional Inherited Members

Public Types inherited from QSSGRenderExtension
enum class  RenderMode { Standalone , Main }
 Specifies the render extension mode. More...
enum class  RenderStage { PreColor , PostColor }
 Specifies the order the extension will be called. More...
Public Types inherited from QSSGRenderGraphObject
enum  BaseType : quint32 {
  Node = 0x1000 , Light = 0x2000 , Camera = 0x4000 , Renderable = 0x8000 ,
  Resource = 0x10000 , Material = 0x20000 , Texture = 0x40000 , Extension = 0x80000 ,
  User = 0x80000000
}
enum class  Type : quint32 {
  Unknown = 0 , Node = BaseType::Node , Root , Layer ,
  Joint , Skeleton , ImportScene , ReflectionProbe ,
  SceneRoot , DirectionalLight = BaseType::Light | BaseType::Node , PointLight , SpotLight ,
  OrthographicCamera = BaseType::Camera | BaseType::Node , PerspectiveCamera , CustomFrustumCamera , CustomCamera ,
  Model = BaseType::Renderable | BaseType::Node , Item2D , Particles , SceneEnvironment = BaseType::Resource ,
  Effect , Geometry , TextureData , MorphTarget ,
  ModelInstance , ModelBlendParticle , ResourceLoader , RenderPass ,
  DefaultMaterial = BaseType::Material | BaseType::Resource , PrincipledMaterial , CustomMaterial , SpecularGlossyMaterial ,
  Skin , Image2D = BaseType::Texture | BaseType::Resource , ImageCube , RenderExtension = BaseType::Extension ,
  TextureProvider
}
enum class  Flags : quint32 { HasGraphicsResources = 0x1 , InternallyReserved = 0xffff0000 }
using TypeT = std::underlying_type_t<Type>
using FlagT = std::underlying_type_t<Flags>
Static Public Member Functions inherited from QSSGRenderGraphObject
static constexpr bool isNodeType (Type type) noexcept
static constexpr bool isLight (Type type) noexcept
static constexpr bool isCamera (Type type) noexcept
static constexpr bool isMaterial (Type type) noexcept
static constexpr bool isTexture (Type type) noexcept
static constexpr bool isRenderable (Type type) noexcept
static constexpr bool isResource (Type type) noexcept
static constexpr bool isExtension (Type type) noexcept
static constexpr bool isUserType (Type type) noexcept
Protected Member Functions inherited from QSSGRenderExtension
 QSSGRenderExtension (Type inType, FlagT inFlags)
 Constructor that allows users to specifying a user-type and flags for an extension.
Protected Member Functions inherited from QSSGRenderGraphObject
 QSSGRenderGraphObject (QSSGRenderGraphObject::Type inType)
 QSSGRenderGraphObject (QSSGRenderGraphObject::Type inType, FlagT inFlags)

Detailed Description

\qmltype SimpleQuadRenderer \inqmlmodule QtQuick3D.Helpers \inherits RenderExtension

The SimpleQuadRenderer class renders a full-screen quad with a specified texture.

The SimpleQuadRenderer is a convenient way to render a texture across the entire screen.

\qml import QtQuick3D.Helpers

SimpleQuadRenderer { texture: Texture { source: "myImage.png" } } \endqml

See also
RenderPassTexture

Definition at line 47 of file qquick3dsimplequadrenderpass.cpp.

Constructor & Destructor Documentation

◆ QSSGRenderSimpleQuadRenderer() [1/2]

QSSGRenderSimpleQuadRenderer::QSSGRenderSimpleQuadRenderer ( )
inline

Definition at line 51 of file qquick3dsimplequadrenderpass.cpp.

References QSSGRenderSimpleQuadRenderer().

Referenced by QSSGRenderSimpleQuadRenderer(), and QQuick3DSimpleQuadRenderer::updateSpatialNode().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ QSSGRenderSimpleQuadRenderer() [2/2]

QSSGRenderSimpleQuadRenderer::QSSGRenderSimpleQuadRenderer ( )
inline

Definition at line 51 of file qquick3dsimplequadrenderpass.cpp.

Member Function Documentation

◆ mode() [1/2]

virtual RenderMode QSSGRenderSimpleQuadRenderer::mode ( ) const
inlinefinalvirtual
Returns
The render mode used for this extension.

Implements QSSGRenderExtension.

Definition at line 107 of file qquick3dsimplequadrenderpass.cpp.

◆ mode() [2/2]

virtual RenderMode QSSGRenderSimpleQuadRenderer::mode ( ) const
inlinefinalvirtual
Returns
The render mode used for this extension.

Implements QSSGRenderExtension.

Definition at line 107 of file qquick3dsimplequadrenderpass.cpp.

◆ prepareData() [1/2]

virtual bool QSSGRenderSimpleQuadRenderer::prepareData ( QSSGFrameData & data)
inlinefinalvirtual

Called after scene data is collected, but before any render data or rendering in the current frame has been done.

Returns
Dirty state. Return true if the there are dirty data that needs to be rendered.
Note
Much of the data created/collected from the engine during the prepare and render phases is per-frame and should be released or assumed released at the start of the next frame
See also
QSSGFrameData

Implements QSSGRenderExtension.

Definition at line 56 of file qquick3dsimplequadrenderpass.cpp.

◆ prepareData() [2/2]

virtual bool QSSGRenderSimpleQuadRenderer::prepareData ( QSSGFrameData & data)
inlinefinalvirtual

Called after scene data is collected, but before any render data or rendering in the current frame has been done.

Returns
Dirty state. Return true if the there are dirty data that needs to be rendered.
Note
Much of the data created/collected from the engine during the prepare and render phases is per-frame and should be released or assumed released at the start of the next frame
See also
QSSGFrameData

Implements QSSGRenderExtension.

Definition at line 56 of file qquick3dsimplequadrenderpass.cpp.

◆ prepareRender() [1/2]

virtual void QSSGRenderSimpleQuadRenderer::prepareRender ( QSSGFrameData & data)
inlinefinalvirtual

Prepare data for rendering.

Build and collect data needed for rendering. Any render extension scheduled before this one has been processed. In addition; any render extension of mode \l RenderMode::Standalone will, if successful, have been completed in full.

Note
Much of the data created/collected from the engine during the prepare and render phases is per-frame and should be released or assumed released at the start of the next frame
See also
QSSGFrameData

Implements QSSGRenderExtension.

Definition at line 70 of file qquick3dsimplequadrenderpass.cpp.

◆ prepareRender() [2/2]

virtual void QSSGRenderSimpleQuadRenderer::prepareRender ( QSSGFrameData & data)
inlinefinalvirtual

Prepare data for rendering.

Build and collect data needed for rendering. Any render extension scheduled before this one has been processed. In addition; any render extension of mode \l RenderMode::Standalone will, if successful, have been completed in full.

Note
Much of the data created/collected from the engine during the prepare and render phases is per-frame and should be released or assumed released at the start of the next frame
See also
QSSGFrameData

Implements QSSGRenderExtension.

Definition at line 70 of file qquick3dsimplequadrenderpass.cpp.

◆ render() [1/2]

virtual void QSSGRenderSimpleQuadRenderer::render ( QSSGFrameData & data)
inlinefinalvirtual

Record the render pass.

Depending on the extensions \l {RenderMode}{mode} this function will be called during the frame's prepare or render phase.

Use data to gain access to the render context from which the active QRhi object can be queried.

See also
QSSGRenderExtension::RenderMode

Implements QSSGRenderExtension.

Definition at line 80 of file qquick3dsimplequadrenderpass.cpp.

◆ render() [2/2]

virtual void QSSGRenderSimpleQuadRenderer::render ( QSSGFrameData & data)
inlinefinalvirtual

Record the render pass.

Depending on the extensions \l {RenderMode}{mode} this function will be called during the frame's prepare or render phase.

Use data to gain access to the render context from which the active QRhi object can be queried.

See also
QSSGRenderExtension::RenderMode

Implements QSSGRenderExtension.

Definition at line 80 of file qquick3dsimplequadrenderpass.cpp.

◆ resetForFrame() [1/2]

virtual void QSSGRenderSimpleQuadRenderer::resetForFrame ( )
inlinefinalvirtual

Called each time a new frame starts.

Any data from the previous frame should be cleared at this point.

Implements QSSGRenderExtension.

Definition at line 106 of file qquick3dsimplequadrenderpass.cpp.

◆ resetForFrame() [2/2]

virtual void QSSGRenderSimpleQuadRenderer::resetForFrame ( )
inlinefinalvirtual

Called each time a new frame starts.

Any data from the previous frame should be cleared at this point.

Implements QSSGRenderExtension.

Definition at line 106 of file qquick3dsimplequadrenderpass.cpp.

◆ stage() [1/2]

virtual RenderStage QSSGRenderSimpleQuadRenderer::stage ( ) const
inlinefinalvirtual
Returns
The stage in which this render extension will be used.

Implements QSSGRenderExtension.

Definition at line 108 of file qquick3dsimplequadrenderpass.cpp.

◆ stage() [2/2]

virtual RenderStage QSSGRenderSimpleQuadRenderer::stage ( ) const
inlinefinalvirtual
Returns
The stage in which this render extension will be used.

Implements QSSGRenderExtension.

Definition at line 108 of file qquick3dsimplequadrenderpass.cpp.

Member Data Documentation

◆ image

QSSGRenderImage * QSSGRenderSimpleQuadRenderer::image = nullptr

Definition at line 110 of file qquick3dsimplequadrenderpass.cpp.

◆ quadShaderPipeline

QSSGRhiShaderPipelinePtr QSSGRenderSimpleQuadRenderer::quadShaderPipeline

Definition at line 113 of file qquick3dsimplequadrenderpass.cpp.

◆ renderImage

QSSGRenderImageTexture QSSGRenderSimpleQuadRenderer::renderImage

Definition at line 111 of file qquick3dsimplequadrenderpass.cpp.

◆ srb

QRhiShaderResourceBindings * QSSGRenderSimpleQuadRenderer::srb = nullptr

Definition at line 112 of file qquick3dsimplequadrenderpass.cpp.


The documentation for this class was generated from the following file: