Gazebo Rendering
API Reference
9.0.0
insert_drive_file
Tutorials
library_books
Classes
toc
Namespaces
insert_drive_file
Files
launch
Gazebo Website
Index
List
Hierarchy
Members: All
Members: Functions
Members: Variables
Members: Typedefs
Members: Enumerations
Members: Enumerator
List
Members
Functions
Typedefs
Variables
Enumerations
Enumerator
src
gz-rendering
ogre2
include
gz
rendering
ogre2
Ogre2GlobalIlluminationCiVct.hh
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2022 Open Source Robotics Foundation
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*
16
*/
17
#ifndef GZ_RENDERING_OGRE2_OGRE2GLOBALILLUMINATIONCIVCT_HH_
18
#define GZ_RENDERING_OGRE2_OGRE2GLOBALILLUMINATIONCIVCT_HH_
19
20
#include "
gz/rendering/GlobalIlluminationCiVct.hh
"
21
22
#include "gz/rendering/ogre2/Export.hh"
23
#include "
gz/rendering/ogre2/Ogre2Object.hh
"
24
25
#include <memory>
26
27
namespace
Ogre
28
{
29
class
HlmsPbs;
30
class
VctCascadeSetting;
31
}
32
33
namespace
gz
34
{
35
namespace
rendering
36
{
37
inline
namespace
GZ_RENDERING_VERSION_NAMESPACE {
38
//
39
// forward declaration
40
class
Ogre2CiVctCascadePrivate;
41
class
Ogre2GlobalIlluminationCiVctPrivate;
42
44
class
GZ_RENDERING_OGRE2_VISIBLE
Ogre2CiVctCascade
:
45
public
virtual
CiVctCascade
46
{
48
public
:
explicit
Ogre2CiVctCascade
();
49
50
public
:
~Ogre2CiVctCascade
()
override
;
51
55
public
:
void
Init
(Ogre::VctCascadeSetting *_cascade,
56
const
CiVctCascade
*_ref);
57
61
public
:
void
ReInit
(Ogre::VctCascadeSetting *_cascade);
62
63
// Documentation inherited.
64
public
:
virtual
void
SetCorrectAreaLightShadows
(
65
bool
_correctAreaLightShadows)
override
;
66
67
// Documentation inherited.
68
public
:
virtual
bool
CorrectAreaLightShadows
()
const override
;
69
70
// Documentation inherited.
71
public
:
virtual
void
SetAutoMultiplier
(
bool
_autoMultiplier)
override
;
72
73
// Documentation inherited.
74
public
:
virtual
bool
AutoMultiplier
()
const override
;
75
76
// Documentation inherited.
77
public
:
virtual
void
SetThinWallCounter
(
float
_thinWallCounter)
override
;
78
79
// Documentation inherited.
80
public
:
virtual
float
ThinWallCounter
()
const override
;
81
82
// Documentation inherited.
83
public
:
virtual
void
SetResolution
(
const
uint32_t _resolution[3])
84
override
;
85
86
// Documentation inherited.
87
public
:
virtual
const
uint32_t*
Resolution
()
const override
;
88
89
// Documentation inherited.
90
public
:
virtual
void
SetOctantCount
(
const
uint32_t _octants[3])
override
;
91
92
// Documentation inherited.
93
public
:
virtual
const
uint32_t*
OctantCount
()
const override
;
94
95
// Documentation inherited.
96
public
:
virtual
void
SetAreaHalfSize
(
97
const
gz::math::Vector3d
&_areaHalfSize)
override
;
98
99
// Documentation inherited.
100
public
:
virtual
gz::math::Vector3d
AreaHalfSize
()
const override
;
101
102
// Documentation inherited.
103
public
:
virtual
void
SetCameraStepSize
(
104
const
gz::math::Vector3d
&_stepSize)
override
;
105
106
// Documentation inherited.
107
public
:
virtual
gz::math::Vector3d
CameraStepSize
()
const override
;
108
110
private
:
std::unique_ptr<Ogre2CiVctCascadePrivate>
dataPtr;
111
};
112
114
class
GZ_RENDERING_OGRE2_VISIBLE
Ogre2GlobalIlluminationCiVct
:
115
public
virtual
GlobalIlluminationCiVct
,
public
virtual
Ogre2Object
116
{
118
protected
:
Ogre2GlobalIlluminationCiVct
();
119
121
public
:
virtual
~Ogre2GlobalIlluminationCiVct
()
override
;
122
123
// Documentation inherited
124
protected
:
virtual
void
Init
()
override
;
125
126
// Documentation inherited
127
public
:
virtual
void
Destroy
()
override
;
128
129
// Documentation inherited
130
public
:
virtual
void
Build
()
override
;
131
132
// Documentation inherited
133
public
:
virtual
void
UpdateLighting
()
override
;
134
135
// Documentation inherited
136
public
:
virtual
void
UpdateCamera
()
override
;
137
138
// Documentation inherited
139
public
:
virtual
void
SetMaxCascades
(
const
uint32_t _maxCascades)
override
;
140
141
// Documentation inherited
142
public
:
virtual
CiVctCascadePtr
AddCascade
(
143
const
CiVctCascade
* _ref)
override
;
144
145
// Documentation inherited
146
public
:
virtual
void
PopCascade
()
override
;
147
148
// Documentation inherited
149
public
:
virtual
void
AutoCalculateStepSizes
(
150
const
gz::math::Vector3d
&_stepSize)
override
;
151
152
// Documentation inherited.
153
public
:
virtual
void
SetConsistentCascadeSteps
(
154
bool
_consistentCascadeSteps)
override
;
155
156
// Documentation inherited.
157
public
:
virtual
bool
ConsistentCascadeSteps
()
const override
;
158
159
// Documentation inherited.
160
public
:
virtual
bool
Started
()
const override
;
161
162
// Documentation inherited
163
public
:
virtual
void
Start
(
164
uint32_t _bounceCount,
bool
_anisotropic)
override
;
165
166
// Documentation inherited
167
public
:
virtual
void
NewSettings
(
168
uint32_t _bounceCount,
bool
_anisotropic)
override
;
169
170
// Documentation inherited
171
public
:
virtual
void
Reset
()
override
;
172
173
// Documentation inherited
174
public
:
virtual
void
Bind
(
const
CameraPtr
&_camera)
override
;
175
176
// Documentation inherited
177
public
:
virtual
bool
Anisotropic
()
const override
;
178
179
// Documentation inherited
180
public
:
virtual
void
SetHighQuality
(
bool
_highQuality)
override
;
181
182
// Documentation inherited
183
public
:
virtual
bool
HighQuality
()
const override
;
184
188
protected
:
virtual
void
SetEnabled
(
bool
_enabled)
override
;
189
190
// Documentation inherited.
191
public
:
virtual
bool
Enabled
()
const override
;
192
193
// Documentation inherited.
194
public
:
virtual
void
SetDebugVisualization
(
195
DebugVisualizationMode
_dvm)
override
;
196
197
// Documentation inherited.
198
public
:
virtual
DebugVisualizationMode
DebugVisualization
()
const
199
override
;
200
201
// Documentation inherited.
202
public
:
virtual
void
LightingChanged
()
override
;
203
204
// Documentation inherited.
205
public
:
virtual
void
SetBounceCount
(uint32_t _bounceCount)
override
;
206
207
// Documentation inherited.
208
public
:
virtual
uint32_t
BounceCount
()
const override
;
209
210
// Documentation inherited.
211
public
:
void
SetParticipatingVisuals
(uint32_t _mask)
override
;
212
213
// Documentation inherited.
214
public
: uint32_t
ParticipatingVisuals
()
const override
;
215
218
private
: Ogre::HlmsPbs* HlmsPbs()
const
;
219
222
private
:
void
SyncModeVisualizationMode();
223
225
private
:
std::unique_ptr<Ogre2GlobalIlluminationCiVctPrivate>
dataPtr;
226
228
private
:
friend
class
Ogre2Scene
;
229
};
230
}
231
}
232
}
233
#endif