QGIS API Documentation
4.3.0-Master (52aa6503bed)
Toggle main menu visibility
Loading...
Searching...
No Matches
src
3d
framegraph
qgsambientocclusionrenderentity.h
Go to the documentation of this file.
1
/***************************************************************************
2
qgsambientocclusionrenderentity.h
3
--------------------------------------
4
Date : June 2022
5
Copyright : (C) 2022 by Belgacem Nedjima
6
Email : belgacem dot nedjima at gmail dot com
7
***************************************************************************
8
* *
9
* This program is free software; you can redistribute it and/or modify *
10
* it under the terms of the GNU General Public License as published by *
11
* the Free Software Foundation; either version 2 of the License, or *
12
* (at your option) any later version. *
13
* *
14
***************************************************************************/
15
16
#ifndef QGSAMBIENTOCCLUSIONRENDERENTITY_H
17
#define QGSAMBIENTOCCLUSIONRENDERENTITY_H
18
19
#include "
qgsrenderpassquad.h
"
20
21
#define SIP_NO_FILE
22
23
namespace
Qt3DRender
24
{
25
class
QCamera;
26
class
QParameter;
27
class
QTexture2D;
28
}
//namespace Qt3DRender
29
30
39
class
QgsAmbientOcclusionRenderEntity
:
public
QgsRenderPassQuad
40
{
41
Q_OBJECT
42
public
:
44
QgsAmbientOcclusionRenderEntity
( Qt3DRender::QTexture2D *depthTexture, Qt3DRender::QLayer *layer, Qt3DRender::QCamera *camera, QNode *parent =
nullptr
);
45
47
void
setIntensity
(
float
intensity );
48
50
void
setRadius
(
float
radius );
51
53
void
setThreshold
(
float
threshold );
54
55
private
:
56
Qt3DRender::QParameter *mDepthTextureParameter =
nullptr
;
57
Qt3DRender::QParameter *mAmbientOcclusionKernelParameter =
nullptr
;
58
59
// user configurable
60
Qt3DRender::QParameter *mIntensityParameter =
nullptr
;
61
Qt3DRender::QParameter *mRadiusParameter =
nullptr
;
62
Qt3DRender::QParameter *mThresholdParameter =
nullptr
;
63
64
// derived from camera parameters
65
Qt3DRender::QParameter *mFarPlaneParameter =
nullptr
;
66
Qt3DRender::QParameter *mNearPlaneParameter =
nullptr
;
67
Qt3DRender::QParameter *mProjMatrixParameter =
nullptr
;
68
Qt3DRender::QParameter *mAspectRatioParameter =
nullptr
;
69
Qt3DRender::QParameter *mTanHalfFovParameter =
nullptr
;
70
};
71
72
#endif
// QGSAMBIENTOCCLUSIONRENDERENTITY_H
QgsAmbientOcclusionRenderEntity::setThreshold
void setThreshold(float threshold)
Sets the amount of occlusion when the effects starts to kick in.
Definition
qgsambientocclusionrenderentity.cpp:107
QgsAmbientOcclusionRenderEntity::setRadius
void setRadius(float radius)
Sets the radius for the ambient occlusion effect.
Definition
qgsambientocclusionrenderentity.cpp:102
QgsAmbientOcclusionRenderEntity::setIntensity
void setIntensity(float intensity)
Sets the intensity for the ambient occlusion effect.
Definition
qgsambientocclusionrenderentity.cpp:97
QgsAmbientOcclusionRenderEntity::QgsAmbientOcclusionRenderEntity
QgsAmbientOcclusionRenderEntity(Qt3DRender::QTexture2D *depthTexture, Qt3DRender::QLayer *layer, Qt3DRender::QCamera *camera, QNode *parent=nullptr)
Constructor.
Definition
qgsambientocclusionrenderentity.cpp:31
QgsRenderPassQuad::QgsRenderPassQuad
QgsRenderPassQuad(Qt3DRender::QLayer *layer, QNode *parent=nullptr)
Constructor.
Definition
qgsrenderpassquad.cpp:33
Qt3DRender
Definition
qgs3d.h:45
qgsrenderpassquad.h
Generated on
for QGIS API Documentation by
1.17.0