70 Qt3DRender::QFrameGraphNode *
frameGraphRoot() {
return mRenderSurfaceSelector; }
99 Qt3DRender::QCamera *
mainCamera() {
return mMainCamera; }
189 QgsPreviewQuad *
addTexturePreviewOverlay( Qt3DRender::QTexture2D *texture,
const QPointF ¢erNDC,
const QSizeF &size, QVector<Qt3DRender::QParameter *> additionalShaderParameters = QVector<Qt3DRender::QParameter *>() );
220 Qt3DRender::QRenderSurfaceSelector *mRenderSurfaceSelector =
nullptr;
221 Qt3DRender::QViewport *mMainViewPort =
nullptr;
222 bool mFrustumCullingEnabled =
true;
224 Qt3DRender::QCamera *mMainCamera =
nullptr;
225 Qt3DRender::QCamera *mLightCamera =
nullptr;
228 Qt3DRender::QCameraSelector *mMainCameraSelector =
nullptr;
229 Qt3DRender::QLayerFilter *mForwardRenderLayerFilter =
nullptr;
230 Qt3DRender::QRenderTargetSelector *mForwardRenderTargetSelector =
nullptr;
231 Qt3DRender::QClearBuffers *mForwardClearBuffers =
nullptr;
232 Qt3DRender::QFrustumCulling *mFrustumCulling =
nullptr;
234 Qt3DRender::QTexture2D *mForwardColorTexture =
nullptr;
235 Qt3DRender::QTexture2D *mForwardDepthTexture =
nullptr;
237 Qt3DRender::QDebugOverlay *mDebugOverlay =
nullptr;
240 Qt3DRender::QCameraSelector *mLightCameraSelectorShadowPass =
nullptr;
241 Qt3DRender::QLayerFilter *mShadowSceneEntitiesFilter =
nullptr;
242 Qt3DRender::QRenderTargetSelector *mShadowRenderTargetSelector =
nullptr;
243 Qt3DRender::QClearBuffers *mShadowClearBuffers =
nullptr;
244 Qt3DRender::QRenderStateSet *mShadowRenderStateSet =
nullptr;
246 Qt3DRender::QTexture2D *mShadowMapTexture =
nullptr;
252 Qt3DRender::QCameraSelector *mDepthRenderCameraSelector =
nullptr;
253 Qt3DRender::QRenderStateSet *mDepthRenderStateSet =
nullptr;;
254 Qt3DRender::QLayerFilter *mDepthRenderLayerFilter =
nullptr;
255 Qt3DRender::QRenderTargetSelector *mDepthRenderCaptureTargetSelector =
nullptr;
256 Qt3DRender::QRenderCapture *mDepthRenderCapture =
nullptr;
258 Qt3DRender::QTexture2D *mDepthRenderCaptureDepthTexture =
nullptr;
259 Qt3DRender::QTexture2D *mDepthRenderCaptureColorTexture =
nullptr;
262 Qt3DRender::QCameraSelector *mPostProcessingCameraSelector =
nullptr;
263 Qt3DRender::QLayerFilter *mPostprocessPassLayerFilter =
nullptr;
264 Qt3DRender::QClearBuffers *mPostprocessClearBuffers =
nullptr;
265 Qt3DRender::QRenderTargetSelector *mRenderCaptureTargetSelector =
nullptr;
266 Qt3DRender::QRenderCapture *mRenderCapture =
nullptr;
268 Qt3DRender::QTexture2D *mRenderCaptureColorTexture =
nullptr;
269 Qt3DRender::QTexture2D *mRenderCaptureDepthTexture =
nullptr;
272 Qt3DRender::QCameraSelector *mAmbientOcclusionRenderCameraSelector =
nullptr;
273 Qt3DRender::QRenderStateSet *mAmbientOcclusionRenderStateSet =
nullptr;;
274 Qt3DRender::QLayerFilter *mAmbientOcclusionRenderLayerFilter =
nullptr;
275 Qt3DRender::QRenderTargetSelector *mAmbientOcclusionRenderCaptureTargetSelector =
nullptr;
277 Qt3DRender::QTexture2D *mAmbientOcclusionRenderTexture =
nullptr;
280 Qt3DRender::QCameraSelector *mAmbientOcclusionBlurCameraSelector =
nullptr;
281 Qt3DRender::QRenderStateSet *mAmbientOcclusionBlurStateSet =
nullptr;;
282 Qt3DRender::QLayerFilter *mAmbientOcclusionBlurLayerFilter =
nullptr;
283 Qt3DRender::QRenderTargetSelector *mAmbientOcclusionBlurRenderCaptureTargetSelector =
nullptr;
285 Qt3DRender::QTexture2D *mAmbientOcclusionBlurTexture =
nullptr;
288 Qt3DRender::QCameraSelector *mRubberBandsCameraSelector =
nullptr;
289 Qt3DRender::QLayerFilter *mRubberBandsLayerFilter =
nullptr;
290 Qt3DRender::QRenderStateSet *mRubberBandsStateSet =
nullptr;
291 Qt3DRender::QRenderTargetSelector *mRubberBandsRenderTargetSelector =
nullptr;
294 Qt3DRender::QLayerFilter *mPreviewLayerFilter =
nullptr;
295 Qt3DRender::QRenderStateSet *mPreviewRenderStateSet =
nullptr;
296 Qt3DRender::QDepthTest *mPreviewDepthTest =
nullptr;
297 Qt3DRender::QCullFace *mPreviewCullFace =
nullptr;
299 bool mShadowRenderingEnabled =
false;
300 float mShadowBias = 0.00001f;
301 int mShadowMapResolution = 2048;
304 bool mAmbientOcclusionEnabled =
false;
305 float mAmbientOcclusionIntensity = 0.5f;
306 float mAmbientOcclusionRadius = 25.f;
307 float mAmbientOcclusionThreshold = 0.5f;
309 QSize mSize = QSize( 1024, 768 );
311 bool mEyeDomeLightingEnabled =
false;
312 double mEyeDomeLightingStrength = 1000.0;
313 int mEyeDomeLightingDistance = 1;
318 QEntity *mDepthRenderQuad =
nullptr;
320 QVector3D mLightDirection = QVector3D( 0.0, -1.0f, 0.0f );
322 Qt3DCore::QEntity *mRootEntity =
nullptr;
324 Qt3DRender::QLayer *mPreviewLayer =
nullptr;
325 Qt3DRender::QLayer *mForwardRenderLayer =
nullptr;
326 Qt3DRender::QLayer *mCastShadowsLayer =
nullptr;
327 Qt3DRender::QLayer *mDepthRenderPassLayer =
nullptr;
328 Qt3DRender::QLayer *mTransparentObjectsPassLayer =
nullptr;
329 Qt3DRender::QLayer *mRubberBandsLayer =
nullptr;
335 Qt3DCore::QEntity *mRubberBandsRootEntity =
nullptr;
337 QVector<QgsPreviewQuad *> mPreviewQuads;
339 Qt3DRender::QFrameGraphNode *constructShadowRenderPass();
340 Qt3DRender::QFrameGraphNode *constructForwardRenderPass();
341 Qt3DRender::QFrameGraphNode *constructTexturesPreviewPass();
342 Qt3DRender::QFrameGraphNode *constructPostprocessingPass();
343 Qt3DRender::QFrameGraphNode *constructDepthRenderPass();
344 Qt3DRender::QFrameGraphNode *constructAmbientOcclusionRenderPass();
345 Qt3DRender::QFrameGraphNode *constructAmbientOcclusionBlurPass();
346 Qt3DRender::QFrameGraphNode *constructRubberBandsPass();
348 Qt3DCore::QEntity *constructDepthRenderQuad();
350 bool mRenderCaptureEnabled =
true;