Enable and configure Global Illumination using VCT (Voxel Cone Tracing) More...
#include <GlobalIlluminationVct.hh>
Signals | |
void | DebugVisualizationModeChanged () |
Notify debug visualization has changed. | |
void | EnabledChanged () |
Notify this property has changed. | |
void | LightingChanged () |
Notify fast-to-rebuild properties may have changed. | |
void | SettingsChanged () |
Notify various properties may have changed. | |
Public Member Functions | |
GlobalIlluminationVct () | |
Constructor. | |
~GlobalIlluminationVct () override | |
Destructor. | |
Q_INVOKABLE bool | Anisotropic () const |
See rendering::GlobalIlluminationVct::Anisotropic. | |
Q_INVOKABLE uint32_t | BounceCount () const |
See rendering::GlobalIlluminationVct::BounceCount. | |
Q_INVOKABLE bool | ConserveMemory () const |
See rendering::GlobalIlluminationVct::ConserveMemory. | |
Q_INVOKABLE uint32_t | DebugVisualizationMode () const |
See rendering::GlobalIlluminationVct::DebugVisualizationMode. | |
Q_INVOKABLE bool | Enabled () const |
See rendering::GlobalIlluminationVct::Enabled. | |
bool | eventFilter (QObject *_obj, QEvent *_event) override |
Q_INVOKABLE bool | HighQuality () const |
See rendering::GlobalIlluminationVct::HighQuality. | |
void | LoadConfig (const tinyxml2::XMLElement *_pluginElem) override |
bool | LoadGlobalIlluminationVct () |
Load the scene and attach LidarVisual to the scene. | |
Q_INVOKABLE uint32_t | OctantCountX () const |
See rendering::GlobalIlluminationVct::OctantCount. | |
Q_INVOKABLE uint32_t | OctantCountY () const |
See rendering::GlobalIlluminationVct::OctantCount. | |
Q_INVOKABLE uint32_t | OctantCountZ () const |
See rendering::GlobalIlluminationVct::OctantCount. | |
Q_INVOKABLE uint32_t | ResolutionX () const |
See rendering::GlobalIlluminationVct::Resolution. | |
Q_INVOKABLE uint32_t | ResolutionY () const |
See rendering::GlobalIlluminationVct::Resolution. | |
Q_INVOKABLE uint32_t | ResolutionZ () const |
See rendering::GlobalIlluminationVct::Resolution. | |
Q_INVOKABLE void | SetAnisotropic (const bool _anisotropic) |
See rendering::GlobalIlluminationVct::SetAnisotropic. | |
Q_INVOKABLE void | SetBounceCount (const uint32_t _bounces) |
See rendering::GlobalIlluminationVct::SetBounceCount. | |
Q_INVOKABLE void | SetConserveMemory (const bool _conserveMemory) |
See rendering::GlobalIlluminationVct::SetConserveMemory. | |
Q_INVOKABLE void | SetDebugVisualizationMode (const uint32_t _visMode) |
See rendering::GlobalIlluminationVct::SetDebugVisualizationMode. | |
Q_INVOKABLE void | SetEnabled (const bool _enabled) |
See rendering::GlobalIlluminationVct::SetEnabled & rendering::Scene::SetActiveGlobalIllumination. | |
Q_INVOKABLE void | SetHighQuality (const bool _quality) |
See rendering::GlobalIlluminationVct::SetHighQuality. | |
Q_INVOKABLE void | SetOctantCountX (const uint32_t _octantCount) |
See rendering::GlobalIlluminationVct::SetOctantCount. | |
Q_INVOKABLE void | SetOctantCountY (const uint32_t _octantCount) |
See rendering::GlobalIlluminationVct::SetOctantCount. | |
Q_INVOKABLE void | SetOctantCountZ (const uint32_t _octantCount) |
See rendering::GlobalIlluminationVct::SetOctantCount. | |
Q_INVOKABLE void | SetResolutionX (const uint32_t _res) |
See rendering::GlobalIlluminationVct::SetResolution. | |
Q_INVOKABLE void | SetResolutionY (const uint32_t _res) |
See rendering::GlobalIlluminationVct::SetResolution. | |
Q_INVOKABLE void | SetResolutionZ (const uint32_t _res) |
See rendering::GlobalIlluminationVct::SetResolution. | |
Q_INVOKABLE void | SetThinWallCounter (const float _thinWallCounter) |
See rendering::GlobalIlluminationVct::SetThinWallCounter. | |
Q_INVOKABLE float | ThinWallCounter () const |
See rendering::GlobalIlluminationVct::ThinWallCounter. | |
Q_INVOKABLE void | UpdateDebugVisualizationMode (int _mode) |
Set debug visualization mode GlogbalIllumination. | |
Q_INVOKABLE void | UpdateOctantCount (int _axis, uint32_t _count) |
Set VCT octant count. | |
Q_INVOKABLE void | UpdateResolution (int _axis, uint32_t _res) |
Set VCT resolution. | |
Public Member Functions inherited from GuiSystem | |
virtual void | Update (const UpdateInfo &_info, EntityComponentManager &_ecm) |
Update callback called every time the system is stepped. This is called at a Gazebo Transport thread, so any interaction with Qt should be done through signals and slots. | |
Public Member Functions inherited from Plugin | |
Plugin () | |
virtual | ~Plugin () |
QQuickItem * | CardItem () const |
virtual std::string | ConfigStr () |
QQmlContext * | Context () const |
bool | DeleteLaterRequested () const |
void | Load (const tinyxml2::XMLElement *_pluginElem) |
QQuickItem * | PluginItem () const |
void | PostParentChanges () |
virtual std::string | Title () const |
Properties | |
bool | anisotropic |
int | bounceCount |
bool | conserveMemory |
int | debugVisualizationMode |
bool | enabled |
Enabled QML binding. Anything that isn't GUI-only (i.e. affects simulation) needs it. | |
bool | highQuality |
int | octantCountX |
int | octantCountY |
int | octantCountZ |
int | resolutionX |
int | resolutionY |
int | resolutionZ |
float | thinWallCounter |
Additional Inherited Members | |
Protected Member Functions inherited from Plugin | |
void | DeleteLater () |
Protected Attributes inherited from Plugin | |
std::string | configStr |
std::string | title |
Detailed Description
Enable and configure Global Illumination using VCT (Voxel Cone Tracing)
Due to how QML bindings work, we must split Vectors into each component so e.g. the following Javascript code:
cascade.resolutionX = 16 cascade.resolutionY = 32 cascade.resolutionZ = 64
Will end up calling:
cascade->SetResolutionX(16); cascade->SetResolutionY(32); cascade->SetResolutionZ(64);
Even though in C++ we would normally do resolution = {16, 32, 64}; The same goes for each property.
Constructor & Destructor Documentation
◆ GlobalIlluminationVct()
Constructor.
◆ ~GlobalIlluminationVct()
|
override |
Destructor.
Member Function Documentation
◆ Anisotropic()
Q_INVOKABLE bool Anisotropic | ( | ) | const |
See rendering::GlobalIlluminationVct::Anisotropic.
- Returns
- See rendering::GlobalIlluminationVct::Anisotropic
◆ BounceCount()
Q_INVOKABLE uint32_t BounceCount | ( | ) | const |
See rendering::GlobalIlluminationVct::BounceCount.
- Returns
- See rendering::GlobalIlluminationVct::BounceCount
◆ ConserveMemory()
Q_INVOKABLE bool ConserveMemory | ( | ) | const |
See rendering::GlobalIlluminationVct::ConserveMemory.
- Returns
- See rendering::GlobalIlluminationVct::ConserveMemory
◆ DebugVisualizationMode()
Q_INVOKABLE uint32_t DebugVisualizationMode | ( | ) | const |
See rendering::GlobalIlluminationVct::DebugVisualizationMode.
- Returns
- See rendering::GlobalIlluminationVct::DebugVisualizationMode
◆ DebugVisualizationModeChanged
|
signal |
Notify debug visualization has changed.
◆ Enabled()
Q_INVOKABLE bool Enabled | ( | ) | const |
See rendering::GlobalIlluminationVct::Enabled.
- Returns
- See rendering::GlobalIlluminationVct::Enabled
◆ EnabledChanged
|
signal |
Notify this property has changed.
◆ eventFilter()
|
override |
◆ HighQuality()
Q_INVOKABLE bool HighQuality | ( | ) | const |
See rendering::GlobalIlluminationVct::HighQuality.
- Returns
- See rendering::GlobalIlluminationVct::HighQuality
◆ LightingChanged
|
signal |
Notify fast-to-rebuild properties may have changed.
◆ LoadConfig()
|
overridevirtual |
Reimplemented from Plugin.
◆ LoadGlobalIlluminationVct()
bool LoadGlobalIlluminationVct | ( | ) |
Load the scene and attach LidarVisual to the scene.
- Returns
- True if GI VCT is loaded successfully, false otherwise.
◆ OctantCountX()
Q_INVOKABLE uint32_t OctantCountX | ( | ) | const |
See rendering::GlobalIlluminationVct::OctantCount.
- Returns
- See rendering::GlobalIlluminationVct::OctantCount
◆ OctantCountY()
Q_INVOKABLE uint32_t OctantCountY | ( | ) | const |
See rendering::GlobalIlluminationVct::OctantCount.
- Returns
- See rendering::GlobalIlluminationVct::OctantCount
◆ OctantCountZ()
Q_INVOKABLE uint32_t OctantCountZ | ( | ) | const |
See rendering::GlobalIlluminationVct::OctantCount.
- Returns
- See rendering::GlobalIlluminationVct::OctantCount
◆ ResolutionX()
Q_INVOKABLE uint32_t ResolutionX | ( | ) | const |
See rendering::GlobalIlluminationVct::Resolution.
- Returns
- See rendering::GlobalIlluminationVct::Resolution
◆ ResolutionY()
Q_INVOKABLE uint32_t ResolutionY | ( | ) | const |
See rendering::GlobalIlluminationVct::Resolution.
- Returns
- See rendering::GlobalIlluminationVct::Resolution
◆ ResolutionZ()
Q_INVOKABLE uint32_t ResolutionZ | ( | ) | const |
See rendering::GlobalIlluminationVct::Resolution.
- Returns
- See rendering::GlobalIlluminationVct::Resolution
◆ SetAnisotropic()
Q_INVOKABLE void SetAnisotropic | ( | const bool | _anisotropic | ) |
See rendering::GlobalIlluminationVct::SetAnisotropic.
- Parameters
-
[in] _anisotropic See GlobalIlluminationVct::SetAnisotropic
◆ SetBounceCount()
Q_INVOKABLE void SetBounceCount | ( | const uint32_t | _bounces | ) |
See rendering::GlobalIlluminationVct::SetBounceCount.
- Parameters
-
[in] _bounces See GlobalIlluminationVct::SetBounceCount
◆ SetConserveMemory()
Q_INVOKABLE void SetConserveMemory | ( | const bool | _conserveMemory | ) |
See rendering::GlobalIlluminationVct::SetConserveMemory.
- Parameters
-
[in] _conserveMemory See GlobalIlluminationVct::SetConserveMemory
◆ SetDebugVisualizationMode()
Q_INVOKABLE void SetDebugVisualizationMode | ( | const uint32_t | _visMode | ) |
See rendering::GlobalIlluminationVct::SetDebugVisualizationMode.
- Parameters
-
[in] _visMode See GlobalIlluminationVct::SetDebugVisualizationMode
◆ SetEnabled()
Q_INVOKABLE void SetEnabled | ( | const bool | _enabled | ) |
See rendering::GlobalIlluminationVct::SetEnabled & rendering::Scene::SetActiveGlobalIllumination.
- Parameters
-
[in] _enabled See GlobalIlluminationVct::SetEnabled
◆ SetHighQuality()
Q_INVOKABLE void SetHighQuality | ( | const bool | _quality | ) |
See rendering::GlobalIlluminationVct::SetHighQuality.
- Parameters
-
[in] _quality See GlobalIlluminationVct::SetHighQuality
◆ SetOctantCountX()
Q_INVOKABLE void SetOctantCountX | ( | const uint32_t | _octantCount | ) |
See rendering::GlobalIlluminationVct::SetOctantCount.
- Parameters
-
[in] _octantCount See GlobalIlluminationVct::SetOctantCount
◆ SetOctantCountY()
Q_INVOKABLE void SetOctantCountY | ( | const uint32_t | _octantCount | ) |
See rendering::GlobalIlluminationVct::SetOctantCount.
- Parameters
-
[in] _octantCount See GlobalIlluminationVct::SetOctantCount
◆ SetOctantCountZ()
Q_INVOKABLE void SetOctantCountZ | ( | const uint32_t | _octantCount | ) |
See rendering::GlobalIlluminationVct::SetOctantCount.
- Parameters
-
[in] _octantCount See GlobalIlluminationVct::SetOctantCount
◆ SetResolutionX()
Q_INVOKABLE void SetResolutionX | ( | const uint32_t | _res | ) |
See rendering::GlobalIlluminationVct::SetResolution.
- Parameters
-
[in] _res See GlobalIlluminationVct::SetResolution
◆ SetResolutionY()
Q_INVOKABLE void SetResolutionY | ( | const uint32_t | _res | ) |
See rendering::GlobalIlluminationVct::SetResolution.
- Parameters
-
[in] _res See GlobalIlluminationVct::SetResolution
◆ SetResolutionZ()
Q_INVOKABLE void SetResolutionZ | ( | const uint32_t | _res | ) |
See rendering::GlobalIlluminationVct::SetResolution.
- Parameters
-
[in] _res See GlobalIlluminationVct::SetResolution
◆ SetThinWallCounter()
Q_INVOKABLE void SetThinWallCounter | ( | const float | _thinWallCounter | ) |
See rendering::GlobalIlluminationVct::SetThinWallCounter.
- Parameters
-
[in] _thinWallCounter See GlobalIlluminationVct::SetThinWallCounter
◆ SettingsChanged
|
signal |
Notify various properties may have changed.
◆ ThinWallCounter()
Q_INVOKABLE float ThinWallCounter | ( | ) | const |
See rendering::GlobalIlluminationVct::ThinWallCounter.
- Returns
- See rendering::GlobalIlluminationVct::ThinWallCounter
◆ UpdateDebugVisualizationMode()
Q_INVOKABLE void UpdateDebugVisualizationMode | ( | int | _mode | ) |
Set debug visualization mode GlogbalIllumination.
- Parameters
-
[in] _mode Index of selected debug visualization mode
◆ UpdateOctantCount()
Q_INVOKABLE void UpdateOctantCount | ( | int | _axis, |
uint32_t | _count | ||
) |
Set VCT octant count.
- Parameters
-
[in] _axis Axis (width, height, depth). In range [0; 3) [in] _count New octant count
◆ UpdateResolution()
Q_INVOKABLE void UpdateResolution | ( | int | _axis, |
uint32_t | _res | ||
) |
Set VCT resolution.
- Parameters
-
[in] _axis Axis (width, height, depth). In range [0; 3) [in] _res New resolution
Property Documentation
◆ anisotropic
|
readwrite |
◆ bounceCount
|
readwrite |
◆ conserveMemory
|
readwrite |
◆ debugVisualizationMode
|
readwrite |
◆ enabled
|
readwrite |
Enabled QML binding. Anything that isn't GUI-only (i.e. affects simulation) needs it.
◆ highQuality
|
readwrite |
◆ octantCountX
|
readwrite |
◆ octantCountY
|
readwrite |
◆ octantCountZ
|
readwrite |
◆ resolutionX
|
readwrite |
◆ resolutionY
|
readwrite |
◆ resolutionZ
|
readwrite |
◆ thinWallCounter
|
readwrite |
The documentation for this class was generated from the following file: