32 Q_PROPERTY(
QColor clearColor READ clearColor WRITE setClearColor NOTIFY clearColorChanged)
35 Q_PROPERTY(
bool parallaxCorrection READ parallaxCorrection WRITE setParallaxCorrection NOTIFY parallaxCorrectionChanged)
37 Q_PROPERTY(
QVector3D boxOffset READ boxOffset WRITE setBoxOffset NOTIFY boxOffsetChanged REVISION(6, 4))
38 Q_PROPERTY(
bool debugView READ debugView WRITE setDebugView NOTIFY debugViewChanged REVISION(6, 4))
57 Q_ENUM(ReflectionRefreshMode)
64 Q_ENUM(ReflectionTimeSlicing)
69 ReflectionQuality quality()
const;
71 ReflectionRefreshMode refreshMode()
const;
72 ReflectionTimeSlicing timeSlicing()
const;
73 bool parallaxCorrection()
const;
83 void setClearColor(const
QColor &clearColor);
86 void setParallaxCorrection(
bool parallaxCorrection);
87 void setBoxSize(const
QVector3D &newBoxSize);
93 void qualityChanged();
94 void clearColorChanged();
95 void refreshModeChanged();
96 void timeSlicingChanged();
97 void parallaxCorrectionChanged();
99 void boxSizeChanged();
106 void markAllDirty() override;
107 void itemChange(ItemChange, const ItemChangeData &) override;
110 QualityDirty = (1 << 0),
111 ClearColorDirty = (1 << 1),
112 RefreshModeDirty = (1 << 2),
113 ParallaxCorrectionDirty = (1 << 3),
115 TimeSlicingDirty = (1 << 5),
116 TextureDirty = (1 << 6)
120 DirtyFlags m_dirtyFlags = DirtyFlags(
DirtyFlag::QualityDirty)
122 | DirtyFlags(
DirtyFlag::RefreshModeDirty)
123 | DirtyFlags(
DirtyFlag::ParallaxCorrectionDirty)
125 | DirtyFlags(
DirtyFlag::TimeSlicingDirty)
130 void findSceneView();
131 void createDebugView();
132 void updateDebugView();
135 QColor m_clearColor =
Qt::transparent;
137 bool m_parallaxCorrection =
false;
140 bool m_debugView =
false;