Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
QSSGRenderImage Struct Reference

#include <qssgrenderimage_p.h>

+ Inheritance diagram for QSSGRenderImage:
+ Collaboration diagram for QSSGRenderImage:

Public Types

enum class  Flag { Dirty = 1 << 0 , TransformDirty = 1 << 1 }
 
enum class  MappingModes : quint8 { Normal = 0 , Environment = 1 , LightProbe = 2 }
 
- 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 , Layer , Joint ,
  Skeleton , ImportScene , ReflectionProbe , 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 , DefaultMaterial = BaseType::Material | BaseType::Resource , PrincipledMaterial , CustomMaterial ,
  SpecularGlossyMaterial , Skin , Image2D = BaseType::Texture | BaseType::Resource , ImageCube ,
  RenderExtension = BaseType::Extension
}
 
enum class  Flags : quint32 { HasGraphicsResources = 0x1 }
 
using TypeT = std::underlying_type_t<Type>
 
using FlagT = std::underlying_type_t<Flags>
 

Public Member Functions

 QSSGRenderImage (QSSGRenderGraphObject::Type type=QSSGRenderGraphObject::Type::Image2D)
 
 ~QSSGRenderImage ()
 
bool clearDirty ()
 
void calculateTextureTransform ()
 
bool isImageTransformIdentity () const
 
- Public Member Functions inherited from QSSGRenderGraphObject
bool hasGraphicsResources () const noexcept
 
virtual Q_QUICK3D_PROFILE_ID_ ~QSSGRenderGraphObject ()
 

Public Attributes

QSSGRenderGraphObjectm_parent = nullptr
 
QSSGRenderPath m_imagePath
 
QSGTexturem_qsgTexture = nullptr
 
QSSGRenderTextureDatam_rawTextureData = nullptr
 
QSSGRenderExtensionm_extensionsSource = nullptr
 
Flags m_flags
 
QVector2D m_scale { 1.0f, 1.0f }
 
QVector2D m_pivot { 0.0f, 0.0f }
 
QVector2D m_position { 0.0f, 0.0f }
 
float m_rotation = 0.0f
 
bool m_flipU = false
 
bool m_flipV = false
 
int m_indexUV = 0
 
MappingModes m_mappingMode = MappingModes::Normal
 
QSSGRenderTextureCoordOp m_horizontalTilingMode = QSSGRenderTextureCoordOp::Repeat
 
QSSGRenderTextureCoordOp m_verticalTilingMode = QSSGRenderTextureCoordOp::Repeat
 
QSSGRenderTextureCoordOp m_depthTilingMode = QSSGRenderTextureCoordOp::Repeat
 
QSSGRenderTextureFilterOp m_magFilterType = QSSGRenderTextureFilterOp::Linear
 
QSSGRenderTextureFilterOp m_minFilterType = QSSGRenderTextureFilterOp::Linear
 
QSSGRenderTextureFilterOp m_mipFilterType = QSSGRenderTextureFilterOp::Linear
 
QSSGRenderTextureFormat m_format = QSSGRenderTextureFormat::Unknown
 
bool m_generateMipmaps = false
 
QMatrix4x4 m_textureTransform
 
- Public Attributes inherited from QSSGRenderGraphObject
const Type type
 
FlagT flags { 0 }
 

Additional Inherited Members

- 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 QSSGRenderGraphObject
 QSSGRenderGraphObject (QSSGRenderGraphObject::Type inType)
 
 QSSGRenderGraphObject (QSSGRenderGraphObject::Type inType, FlagT inFlags)
 

Detailed Description

Definition at line 33 of file qssgrenderimage_p.h.

Member Enumeration Documentation

◆ Flag

enum class QSSGRenderImage::Flag
strong
Enumerator
Dirty 
TransformDirty 

Definition at line 35 of file qssgrenderimage_p.h.

◆ MappingModes

Enumerator
Normal 
Environment 
LightProbe 

Definition at line 42 of file qssgrenderimage_p.h.

Constructor & Destructor Documentation

◆ QSSGRenderImage()

QT_BEGIN_NAMESPACE QSSGRenderImage::QSSGRenderImage ( QSSGRenderGraphObject::Type type = QSSGRenderGraphObject::Type::Image2D)

Definition at line 10 of file qssgrenderimage.cpp.

References Dirty, m_flags, and TransformDirty.

◆ ~QSSGRenderImage()

QSSGRenderImage::~QSSGRenderImage ( )
default

Member Function Documentation

◆ calculateTextureTransform()

void QSSGRenderImage::calculateTextureTransform ( )

Definition at line 30 of file qssgrenderimage.cpp.

References m_flags, m_flipU, m_flipV, m_pivot, m_position, m_rotation, m_scale, m_textureTransform, QMatrix4x4::rotate(), TransformDirty, QMatrix4x4::translate(), QVector2D::x(), and QVector2D::y().

Referenced by clearDirty().

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

◆ clearDirty()

bool QSSGRenderImage::clearDirty ( )

Definition at line 19 of file qssgrenderimage.cpp.

References calculateTextureTransform(), Dirty, m_flags, and TransformDirty.

Referenced by QSSGLayerRenderData::prepareParticlesForRender().

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

◆ isImageTransformIdentity()

bool QSSGRenderImage::isImageTransformIdentity ( ) const

Definition at line 67 of file qssgrenderimage.cpp.

References QMatrix4x4::isIdentity(), m_mappingMode, m_textureTransform, and Normal.

+ Here is the call graph for this function:

Member Data Documentation

◆ m_depthTilingMode

QSSGRenderTextureCoordOp QSSGRenderImage::m_depthTilingMode = QSSGRenderTextureCoordOp::Repeat

Definition at line 74 of file qssgrenderimage_p.h.

Referenced by QQuick3DTexture::updateSpatialNode().

◆ m_extensionsSource

QSSGRenderExtension* QSSGRenderImage::m_extensionsSource = nullptr

Definition at line 60 of file qssgrenderimage_p.h.

Referenced by QQuick3DTexture::updateSpatialNode().

◆ m_flags

Flags QSSGRenderImage::m_flags

◆ m_flipU

bool QSSGRenderImage::m_flipU = false

◆ m_flipV

bool QSSGRenderImage::m_flipV = false

Definition at line 69 of file qssgrenderimage_p.h.

Referenced by calculateTextureTransform().

◆ m_format

Definition at line 78 of file qssgrenderimage_p.h.

◆ m_generateMipmaps

bool QSSGRenderImage::m_generateMipmaps = false

Definition at line 79 of file qssgrenderimage_p.h.

Referenced by QQuick3DTexture::updateSpatialNode().

◆ m_horizontalTilingMode

QSSGRenderTextureCoordOp QSSGRenderImage::m_horizontalTilingMode = QSSGRenderTextureCoordOp::Repeat

Definition at line 72 of file qssgrenderimage_p.h.

Referenced by QQuick3DTexture::updateSpatialNode().

◆ m_imagePath

QSSGRenderPath QSSGRenderImage::m_imagePath

Definition at line 53 of file qssgrenderimage_p.h.

Referenced by QQuick3DTexture::updateSpatialNode().

◆ m_indexUV

int QSSGRenderImage::m_indexUV = 0

Definition at line 70 of file qssgrenderimage_p.h.

Referenced by QQuick3DTexture::updateSpatialNode().

◆ m_magFilterType

Definition at line 75 of file qssgrenderimage_p.h.

Referenced by QQuick3DTexture::updateSpatialNode().

◆ m_mappingMode

MappingModes QSSGRenderImage::m_mappingMode = MappingModes::Normal

◆ m_minFilterType

Definition at line 76 of file qssgrenderimage_p.h.

Referenced by QQuick3DTexture::updateSpatialNode().

◆ m_mipFilterType

Definition at line 77 of file qssgrenderimage_p.h.

Referenced by QQuick3DTexture::updateSpatialNode().

◆ m_parent

QSSGRenderGraphObject* QSSGRenderImage::m_parent = nullptr

Definition at line 51 of file qssgrenderimage_p.h.

◆ m_pivot

QVector2D QSSGRenderImage::m_pivot { 0.0f, 0.0f }

◆ m_position

QVector2D QSSGRenderImage::m_position { 0.0f, 0.0f }

◆ m_qsgTexture

QSGTexture* QSSGRenderImage::m_qsgTexture = nullptr

Definition at line 58 of file qssgrenderimage_p.h.

Referenced by QQuick3DTexture::updateSpatialNode().

◆ m_rawTextureData

QSSGRenderTextureData* QSSGRenderImage::m_rawTextureData = nullptr

Definition at line 59 of file qssgrenderimage_p.h.

Referenced by QQuick3DTexture::updateSpatialNode().

◆ m_rotation

float QSSGRenderImage::m_rotation = 0.0f

◆ m_scale

QVector2D QSSGRenderImage::m_scale { 1.0f, 1.0f }

◆ m_textureTransform

QMatrix4x4 QSSGRenderImage::m_textureTransform

Definition at line 83 of file qssgrenderimage_p.h.

Referenced by calculateTextureTransform(), and isImageTransformIdentity().

◆ m_verticalTilingMode

QSSGRenderTextureCoordOp QSSGRenderImage::m_verticalTilingMode = QSSGRenderTextureCoordOp::Repeat

Definition at line 73 of file qssgrenderimage_p.h.

Referenced by QQuick3DTexture::updateSpatialNode().


The documentation for this struct was generated from the following files: