70 Qt3DRender::QFrameGraphNode *
frameGraphRoot() {
return mRenderSurfaceSelector; }
195 QgsPreviewQuad *
addTexturePreviewOverlay( Qt3DRender::QTexture2D *texture,
const QPointF ¢erNDC,
const QSizeF &size, QVector<Qt3DRender::QParameter *> additionalShaderParameters = QVector<Qt3DRender::QParameter *>() );
226 Qt3DRender::QRenderSurfaceSelector *mRenderSurfaceSelector =
nullptr;
227 Qt3DRender::QViewport *mMainViewPort =
nullptr;
228 bool mFrustumCullingEnabled =
true;
230 Qt3DRender::QCamera *mMainCamera =
nullptr;
231 Qt3DRender::QCamera *mLightCamera =
nullptr;
234 Qt3DRender::QCameraSelector *mMainCameraSelector =
nullptr;
235 Qt3DRender::QLayerFilter *mForwardRenderLayerFilter =
nullptr;
236 Qt3DRender::QRenderTargetSelector *mForwardRenderTargetSelector =
nullptr;
237 Qt3DRender::QClearBuffers *mForwardClearBuffers =
nullptr;
238 Qt3DRender::QFrustumCulling *mFrustumCulling =
nullptr;
240 Qt3DRender::QTexture2D *mForwardColorTexture =
nullptr;
241 Qt3DRender::QTexture2D *mForwardDepthTexture =
nullptr;
243#if QT_VERSION >= QT_VERSION_CHECK(5, 15, 0)
244 Qt3DRender::QDebugOverlay *mDebugOverlay =
nullptr;
248 Qt3DRender::QCameraSelector *mLightCameraSelectorShadowPass =
nullptr;
249 Qt3DRender::QLayerFilter *mShadowSceneEntitiesFilter =
nullptr;
250 Qt3DRender::QRenderTargetSelector *mShadowRenderTargetSelector =
nullptr;
251 Qt3DRender::QClearBuffers *mShadowClearBuffers =
nullptr;
252 Qt3DRender::QRenderStateSet *mShadowRenderStateSet =
nullptr;
254 Qt3DRender::QTexture2D *mShadowMapTexture =
nullptr;
260 Qt3DRender::QCameraSelector *mDepthRenderCameraSelector =
nullptr;
261 Qt3DRender::QRenderStateSet *mDepthRenderStateSet =
nullptr;;
262 Qt3DRender::QLayerFilter *mDepthRenderLayerFilter =
nullptr;
263 Qt3DRender::QRenderTargetSelector *mDepthRenderCaptureTargetSelector =
nullptr;
264 Qt3DRender::QRenderCapture *mDepthRenderCapture =
nullptr;
266 Qt3DRender::QTexture2D *mDepthRenderCaptureDepthTexture =
nullptr;
267 Qt3DRender::QTexture2D *mDepthRenderCaptureColorTexture =
nullptr;
270 Qt3DRender::QCameraSelector *mPostProcessingCameraSelector =
nullptr;
271 Qt3DRender::QLayerFilter *mPostprocessPassLayerFilter =
nullptr;
272 Qt3DRender::QClearBuffers *mPostprocessClearBuffers =
nullptr;
273 Qt3DRender::QRenderTargetSelector *mRenderCaptureTargetSelector =
nullptr;
274 Qt3DRender::QRenderCapture *mRenderCapture =
nullptr;
276 Qt3DRender::QTexture2D *mRenderCaptureColorTexture =
nullptr;
277 Qt3DRender::QTexture2D *mRenderCaptureDepthTexture =
nullptr;
280 Qt3DRender::QCameraSelector *mAmbientOcclusionRenderCameraSelector =
nullptr;
281 Qt3DRender::QRenderStateSet *mAmbientOcclusionRenderStateSet =
nullptr;;
282 Qt3DRender::QLayerFilter *mAmbientOcclusionRenderLayerFilter =
nullptr;
283 Qt3DRender::QRenderTargetSelector *mAmbientOcclusionRenderCaptureTargetSelector =
nullptr;
285 Qt3DRender::QTexture2D *mAmbientOcclusionRenderTexture =
nullptr;
288 Qt3DRender::QCameraSelector *mAmbientOcclusionBlurCameraSelector =
nullptr;
289 Qt3DRender::QRenderStateSet *mAmbientOcclusionBlurStateSet =
nullptr;;
290 Qt3DRender::QLayerFilter *mAmbientOcclusionBlurLayerFilter =
nullptr;
291 Qt3DRender::QRenderTargetSelector *mAmbientOcclusionBlurRenderCaptureTargetSelector =
nullptr;
293 Qt3DRender::QTexture2D *mAmbientOcclusionBlurTexture =
nullptr;
296 Qt3DRender::QCameraSelector *mRubberBandsCameraSelector =
nullptr;
297 Qt3DRender::QLayerFilter *mRubberBandsLayerFilter =
nullptr;
298 Qt3DRender::QRenderStateSet *mRubberBandsStateSet =
nullptr;
299 Qt3DRender::QRenderTargetSelector *mRubberBandsRenderTargetSelector =
nullptr;
302 Qt3DRender::QLayerFilter *mPreviewLayerFilter =
nullptr;
303 Qt3DRender::QRenderStateSet *mPreviewRenderStateSet =
nullptr;
304 Qt3DRender::QDepthTest *mPreviewDepthTest =
nullptr;
305 Qt3DRender::QCullFace *mPreviewCullFace =
nullptr;
307 bool mShadowRenderingEnabled =
false;
308 float mShadowBias = 0.00001f;
309 int mShadowMapResolution = 2048;
312 bool mAmbientOcclusionEnabled =
false;
313 float mAmbientOcclusionIntensity = 0.5f;
314 float mAmbientOcclusionRadius = 25.f;
315 float mAmbientOcclusionThreshold = 0.5f;
317 QSize mSize = QSize( 1024, 768 );
319 bool mEyeDomeLightingEnabled =
false;
320 double mEyeDomeLightingStrength = 1000.0;
321 int mEyeDomeLightingDistance = 1;
326 QEntity *mDepthRenderQuad =
nullptr;
328 QVector3D mLightDirection = QVector3D( 0.0, -1.0f, 0.0f );
330 Qt3DCore::QEntity *mRootEntity =
nullptr;
332 Qt3DRender::QLayer *mPreviewLayer =
nullptr;
333 Qt3DRender::QLayer *mForwardRenderLayer =
nullptr;
334 Qt3DRender::QLayer *mCastShadowsLayer =
nullptr;
335 Qt3DRender::QLayer *mDepthRenderPassLayer =
nullptr;
336 Qt3DRender::QLayer *mTransparentObjectsPassLayer =
nullptr;
337 Qt3DRender::QLayer *mRubberBandsLayer =
nullptr;
343 Qt3DCore::QEntity *mRubberBandsRootEntity =
nullptr;
345 QVector<QgsPreviewQuad *> mPreviewQuads;
347 Qt3DRender::QFrameGraphNode *constructShadowRenderPass();
348 Qt3DRender::QFrameGraphNode *constructForwardRenderPass();
349 Qt3DRender::QFrameGraphNode *constructTexturesPreviewPass();
350 Qt3DRender::QFrameGraphNode *constructPostprocessingPass();
351 Qt3DRender::QFrameGraphNode *constructDepthRenderPass();
352 Qt3DRender::QFrameGraphNode *constructAmbientOcclusionRenderPass();
353 Qt3DRender::QFrameGraphNode *constructAmbientOcclusionBlurPass();
354 Qt3DRender::QFrameGraphNode *constructRubberBandsPass();
356 Qt3DCore::QEntity *constructDepthRenderQuad();
358 bool mRenderCaptureEnabled =
true;