VisualEffectsControl
-
class HPS::VisualEffectsControl : public HPS::Control
The HPS::VisualEffectsControl class is a smart pointer that is tied to a database object. This object enables you to set and unset various visual effects, such as shadows (including shadow color), reflection planes, and anti-aliasing.
Default values for the various fields of HPS::VisualEffectsControl can be found here.
Public Functions
-
inline virtual HPS::Type ObjectType() const
This function returns the type the object, as declared (if the object is derived, this does not give the true type of the derived object).
- Returns
The declared type of the object in question, which may differ from the true, underlying type.
-
VisualEffectsControl &operator=(VisualEffectsControl &&in_that)
The move assignment operator transfers the underlying impl of the rvalue reference to this VisualEffectsControl thereby avoiding a copy.
- Parameters
in_that – An rvalue reference to a VisualEffectsControl to take the impl from.
- Returns
A reference to this VisualEffectsControl.
-
VisualEffectsControl &operator=(VisualEffectsControl const &in_that)
Share the underlying smart-pointer of the VisualEffectsControl source.
- Parameters
in_that – The VisualEffectsControl source of the assignment.
- Returns
A reference to this VisualEffectsControl.
-
VisualEffectsControl &SetAmbientOcclusionEnabled(bool in_state)
Allows ambient occlusion to be enabled or disabled on a per segment basis.
- Parameters
in_state – Whether ambient occlusion should be used.
- Returns
A reference to this object.
-
VisualEffectsControl &SetAntiAliasing(bool in_state)
Manipulates the state of anti-aliasing(text and screen).
- Deprecated:
This function exists for compatibility and SetTextAntiAliasing(bool in_state) should be preferred in general usage.
- Parameters
in_state – Whether anti-aliasing(text and screen) should be used.
- Returns
A reference to this object.
-
VisualEffectsControl &SetBloomEnabled(bool in_state)
Allows bloom to be enabled or disabled on a per segment basis.
- Parameters
in_state – Whether bloom should be used.
- Returns
A reference to this object.
-
VisualEffectsControl &SetDepthOfFieldEnabled(bool in_state)
Allows depth of field to be enabled or disabled en masse on a per segment basis.
- Parameters
in_state – Whether depth of field should be used.
- Returns
A reference to this object.
-
VisualEffectsControl &SetEyeDomeLightingBackColor(bool in_state, RGBColor const &in_color = RGBColor::Black())
Sets the color to use for the back of a point in a point cloud when rendered via eye dome lighting.
Note
For this setting to have an effect, the points in a point cloud must have normals specified.
- Parameters
in_state – Whether a back color should be used for eye dome lighting.
in_color – The color to use for the back of a point for eye dome lighting.
- Returns
A reference to this object.
-
VisualEffectsControl &SetEyeDomeLightingBackColor(RGBColor const &in_color)
Sets the color to use for the back of a point in a point cloud when rendered via eye dome lighting. The state is implicitly on.
Note
For this setting to have an effect, the points in a point cloud must have normals specified.
- Parameters
in_color – The color to use for the back of a point for eye dome lighting.
- Returns
A reference to this object.
-
VisualEffectsControl &SetEyeDomeLightingEnabled(bool in_state)
Allows eye dome lighting to be enabled or disabled en masse on a per segment basis.
- Parameters
in_state – Whether eye dome lighting should be used.
- Returns
A reference to this object.
-
VisualEffectsControl &SetPostProcessEffectsEnabled(bool in_state)
Allows all post-processing effects to be enabled or disabled en masse on a per segment basis.
- Parameters
in_state – Whether post-processing effects should be used.
- Returns
A reference to this object.
-
VisualEffectsControl &SetShadowMaps(bool in_state, unsigned int in_samples = 4, unsigned int in_resolution = 1024, bool in_view_dependent = true, bool in_jitter = true)
Manipulates the state of shadow maps in the scene. A maximum of seven lights can be used with shadow maps.
- Parameters
in_state – Whether shadow maps should be used.
in_samples – The number of locations in the shadow map used to determine the percentage value of light received by a pixel in the rendered scene. *
in_resolution – The width and height of the shadow map. This value will be clamped up/down to 512, 1024 or 2048. *
in_view_dependent – When enabled, the view frustum is taken into account when generating shadow maps. This results in significantly better visual quality, but at the cost of not being able to reuse shadow maps from previous frames, even if the lighting is constant with respect to the scene. *
in_jitter – Turning this on causes stochastic sampling of shadow maps. This should reduce aliasing in the shadow map. *
- Returns
A reference to this object.
-
VisualEffectsControl &SetShadowMaps(unsigned int in_samples, unsigned int in_resolution, bool in_view_dependent, bool in_jitter)
Manipulates the state of shadow maps in the scene. The state is implicitly on. A maximum of seven lights can be used with shadow maps. *
- Parameters
in_samples – The number of locations in the shadow map used to determine the percentage value of light received by a pixel in the rendered scene. *
in_resolution – The width and height of the shadow map. This value will be clamped up/down to 512, 1024 or 2048. *
in_view_dependent – When enabled, the view frustum is taken into account when generating shadow maps. This results in significantly better visual quality, but at the cost of not being able to reuse shadow maps from previous frames, even if the lighting is constant with respect to the scene.
in_jitter – Turning this on causes stochastic sampling of shadow maps. This should reduce aliasing in the shadow map. *
- Returns
A reference to this object.
-
VisualEffectsControl &SetSilhouetteEdgesEnabled(bool in_state)
Allows silhouette edges to be enabled or disabled on a per segment basis.
- Parameters
in_state – Whether silhouette edges should be used.
- Returns
A reference to this object.
-
VisualEffectsControl &SetSimpleReflection(bool in_state, float in_opacity = 0.5f, unsigned int in_blurring = 1, bool in_fading = false, float in_attenuation_near_distance = 0.0f, float in_attenuation_far_distance = Float::Infinity)
Manipulates the state of simple reflections, projected onto a plane.
- Parameters
in_state – Whether simple shadows should be used.
in_opacity – An alpha value that sets the transparency level of the reflection plane. Valid range is [0,1] with a value of zero making the plane completely transparent.
in_blurring – The level of blurring (softening) that is applied to the shadow. Valid range is [1,31].
in_fading – Whether the reflection plane should fade as it moves away from the camera.
in_attenuation_near_distance – The orthogonal distances (in world space) from the reflection plane that the model begins to fade. Attenuation begins at in_attenuation_near_distance and increases linearly such that the model is not visible in the reflection beyond in_attenuation_far_distance.
in_attenuation_far_distance – The orthogonal distances (in world space) from the reflection plane that the model is completely faded. Attenuation begins at in_attenuation_near_distance and increases linearly such that the model is not visible in the reflection beyond in_attenuation_far_distance.
- Returns
A reference to this object.
-
VisualEffectsControl &SetSimpleReflection(float in_opacity, unsigned int in_blurring, bool in_fading, float in_attenuation_near_distance, float in_attenuation_far_distance)
Manipulates the state of simple reflections, projected onto a plane. The state is implicitly on.
- Parameters
in_opacity – An alpha value that sets the transparency level of the reflection plane. Valid range is [0,1] with a value of zero making the plane completely transparent.
in_blurring – The level of blurring (softening) that is applied to the shadow. Valid range is [1,31].
in_fading – Whether the reflection plane should fade as it moves away from the camera.
in_attenuation_near_distance – The orthogonal distances (in world space) from the reflection plane that the model begins to fade. Attenuation begins at in_attenuation_near_distance and increases linearly such that the model is not visible in the reflection beyond in_attenuation_far_distance.
in_attenuation_far_distance – The orthogonal distances (in world space) from the reflection plane that the model is completely faded. Attenuation begins at in_attenuation_near_distance and increases linearly such that the model is not visible in the reflection beyond in_attenuation_far_distance.
- Returns
A reference to this object.
-
VisualEffectsControl &SetSimpleReflectionPlane(Plane const &in_projected_onto = Plane(0.0f, 1.0f, 0.0f, 1.0f))
Manipulates the location and orientation of the plane that simple reflections are projected onto.
- Parameters
in_projected_onto – The plane that simple reflections should be projected onto.
- Returns
A reference to this object.
-
VisualEffectsControl &SetSimpleReflectionVisibility(VisibilityKit const &in_reflected_types)
Defines the visibility settings for the model when rendered in the reflection plane.
- Parameters
in_reflected_types – A collection of visibility settings that will be applied to the reflected geometry.
- Returns
A reference to this object.
-
VisualEffectsControl &SetSimpleShadow(bool in_state, unsigned int in_resolution = 256, unsigned int in_blurring = 1, bool in_ignore_transparency = false)
Manipulates the state of simple shadows, projected onto a plane.
- Parameters
in_state – Whether simple shadows should be used.
in_resolution – The width and height of the simple shadow. Valid range is [32, 1024].
in_blurring – The level of blurring (softening) that is applied to the shadow. Valid range is [1,31].
in_ignore_transparency – Whether any segment-level transparency setting should be ignored when rendering the simple shadow.
- Returns
A reference to this object.
-
VisualEffectsControl &SetSimpleShadow(unsigned int in_resolution, unsigned int in_blurring, bool in_ignore_transparency)
Manipulates the state of simple shadows, projected onto a plane. The state is implicitly on.
- Parameters
in_resolution – The width and height of the simple shadow. Valid range is [32, 1024].
in_blurring – The level of blurring (softening) that is applied to the shadow. Valid range is [1,31].
in_ignore_transparency – Whether any segment-level transparency setting should be ignored when rendering the simple shadow.
- Returns
A reference to this object.
-
VisualEffectsControl &SetSimpleShadowColor(RGBAColor const &in_color = RGBAColor(0.0f, 0.0f, 0.0f, 1.0f))
Sets the color that simple shadows will be rendered in.
- Parameters
in_color – The color of simple shadows.
- Returns
A reference to this object.
-
VisualEffectsControl &SetSimpleShadowLightDirection(Vector const &in_direction = Vector(0.0f, 1.0f, 0.0f))
Sets the direction that the light source for a simple shadow is coming from.
- Parameters
in_direction – The direction that the light source for a simple shadow is coming from.
- Returns
A reference to this object.
-
VisualEffectsControl &SetSimpleShadowPlane(Plane const &in_projected_onto = Plane(0.0f, 1.0f, 0.0f, 1.0f))
Manipulates the location and orientation of the plane that simple shadows are projected onto.
- Parameters
in_projected_onto – The plane that simple shadows should be projected onto.
- Returns
A reference to this object.
-
VisualEffectsControl &SetTextAntiAliasing(bool in_state)
Manipulates the state of text anti-aliasing.
- Parameters
in_state – Whether text anti-aliasing should be used.
- Returns
A reference to this object.
-
bool ShowAmbientOcclusionEnabled(bool &out_state) const
Shows the ambient occlusion setting for the segment.
- Parameters
out_state – Whether ambient occlusion is enabled.
- Returns
true if the setting is valid, false otherwise.
-
bool ShowAntiAliasing(bool &out_state) const
Shows the anti-aliasing setting.
- Deprecated:
This function exists for compatibility and ShowTextAntiAliasing(bool & out_state) should be preferred in general usage.
- Parameters
out_state – Whether anti-aliasing(text and screen) should be used.
- Returns
true if the setting(text and screen) is valid, false otherwise.
-
bool ShowBloomEnabled(bool &out_state) const
Shows the bloom setting for the segment.
- Parameters
out_state – Whether bloom is enabled.
- Returns
true if the setting is valid, false otherwise.
-
bool ShowDepthOfFieldEnabled(bool &out_state) const
Shows the depth of field setting for the segment.
- Parameters
out_state – Whether depth of field is enabled.
- Returns
true if the setting is valid, false otherwise.
-
bool ShowEyeDomeLightingBackColor(bool &out_state, RGBColor &out_color) const
Shows the eye dome lighting back color setting.
- Parameters
out_state – Whether a back color should be used for eye dome lighting.
out_color – The color to use for the back of a point for eye dome lighting.
- Returns
true if the setting is valid, false otherwise.
-
bool ShowEyeDomeLightingEnabled(bool &out_state) const
Shows the eye dome lighting setting for the segment.
- Parameters
out_state – Whether eye dome lighting is enabled.
- Returns
true if the setting is valid, false otherwise.
-
bool ShowPostProcessEffectsEnabled(bool &out_state) const
Shows the post-processing effects setting.
- Parameters
out_state – Whether all post-processing effects are enabled for the segment.
- Returns
true if the setting is valid, false otherwise.
-
bool ShowShadowMaps(bool &out_state, unsigned int &out_samples, unsigned int &out_resolution, bool &out_view_dependent, bool &out_jitter) const
Shows the shadow maps setting.
- Parameters
out_state – Whether shadow maps should be used.
out_samples – The number of locations in the shadow map used to determine the percentage value of light received by a pixel in the rendered scene.
out_resolution – The width and height of the shadow map.
out_view_dependent – When enabled, the view frustum is taken into account when generating shadow maps.
out_jitter – Whether stochastic sampling of shadow maps should be use to reduce aliasing in the shadow map.
- Returns
true if the setting is valid, false otherwise.
-
bool ShowSilhouetteEdgesEnabled(bool &out_state) const
Shows the silhouette edges setting for the segment.
- Parameters
out_state – Whether silhouette edges are enabled.
- Returns
true if the setting is valid, false otherwise.
-
bool ShowSimpleReflection(bool &out_state, float &out_opacity, unsigned int &out_blurring, bool &out_fading, float &out_attenuation_near_distance, float &out_attenuation_far_distance) const
Shows the simple reflection setting.
- Parameters
out_state – Whether simple shadows should be used.
out_opacity – An alpha value that sets the transparency level of the reflection plane.
out_blurring – The level of blurring (softening) that is applied to the shadow.
out_fading – Whether the reflection plane should fade as it moves away from the camera.
out_attenuation_near_distance – The orthogonal distances (in world space) from the reflection plane that the model begins to fade.
out_attenuation_far_distance – The orthogonal distances (in world space) from the reflection plane that the model is completely faded.
- Returns
true if the setting is valid, false otherwise.
-
bool ShowSimpleReflectionPlane(Plane &out_projected_onto) const
Shows the simple reflection plane setting.
- Parameters
out_projected_onto – The plane that simple reflections should be projected onto.
- Returns
true if the setting is valid, false otherwise.
-
bool ShowSimpleReflectionVisibility(VisibilityKit &out_reflected_types) const
Shows the simple shadow visibility setting.
- Parameters
out_reflected_types – A collection of visibility settings that will be applied to the reflected geometry.
- Returns
true if the setting is valid, false otherwise.
-
bool ShowSimpleShadow(bool &out_state, unsigned int &out_resolution, unsigned int &out_blurring, bool &out_ignore_transparency) const
Shows the simple shadow setting.
- Parameters
out_state – Whether simple shadows should be used.
out_resolution – The width and height of the simple shadow.
out_blurring – The level of blurring (softening) that is applied to the shadow.
out_ignore_transparency – Whether any segment-level transparency setting should be ignored when rendering the simple shadow.
- Returns
true if the setting is valid, false otherwise.
-
bool ShowSimpleShadowColor(RGBAColor &out_color) const
Shows the simple shadow color setting.
- Parameters
out_color – The color of simple shadows.
- Returns
true if the setting is valid, false otherwise.
-
bool ShowSimpleShadowLightDirection(Vector &out_direction) const
Shows the simple shadow light direction setting.
- Parameters
out_direction – The direction that the light source for a simple shadow is coming from.
- Returns
true if the setting is valid, false otherwise.
-
bool ShowSimpleShadowPlane(Plane &out_projected_onto) const
Shows the simple shadow plane setting.
- Parameters
out_projected_onto – The plane that simple shadows should be projected onto.
- Returns
true if the setting is valid, false otherwise.
-
bool ShowTextAntiAliasing(bool &out_state) const
Shows the text anti-aliasing setting.
- Parameters
out_state – Whether anti-aliasing should be used.
- Returns
true if the setting is valid, false otherwise.
-
VisualEffectsControl &UnsetAmbientOcclusionEnabled()
Removes ambient occlusion setting. If the control is attached to a WindowKey this function restores the default value of this setting as specified by VisualEffectsKit::GetDefault().
- Returns
A reference to this object.
-
VisualEffectsControl &UnsetAntiAliasing()
Removes any anti-alias setting(text and screen). If the control is attached to a WindowKey this function restores the default value of this setting as specified by VisualEffectsKit::GetDefault().
- Deprecated:
This function exists for compatibility and UnsetTextAntiAliasing() should be preferred in general usage.
- Returns
A reference to this object.
-
VisualEffectsControl &UnsetBloomEnabled()
Removes any bloom setting. If the control is attached to a WindowKey this function restores the default value of this setting as specified by VisualEffectsKit::GetDefault().
- Returns
A reference to this object.
-
VisualEffectsControl &UnsetDepthOfFieldEnabled()
Removes any depth of field setting. If the control is attached to a WindowKey this function restores the default value of this setting as specified by VisualEffectsKit::GetDefault().
- Returns
A reference to this object.
-
VisualEffectsControl &UnsetEverything()
Removes all settings from this object. If the control is attached to a WindowKey this function restores the default settings of this control as specified by VisualEffectsKit::GetDefault().
- Returns
A reference to this object.
-
VisualEffectsControl &UnsetEyeDomeLightingBackColor()
Removes any eye dome lighting back color setting. If the control is attached to a WindowKey this function restores the default value of this setting as specified by VisualEffectsKit::GetDefault().
- Returns
A reference to this object.
-
VisualEffectsControl &UnsetEyeDomeLightingEnabled()
Removes any eye dome lighting setting. If the control is attached to a WindowKey this function restores the default value of this setting as specified by VisualEffectsKit::GetDefault().
- Returns
A reference to this object.
-
VisualEffectsControl &UnsetPostProcessEffectsEnabled()
Removes any post-processing effects setting. If the control is attached to a WindowKey this function restores the default value of this setting as specified by VisualEffectsKit::GetDefault().
- Returns
A reference to this object.
-
VisualEffectsControl &UnsetShadowMaps()
Removes any shadow maps setting. If the control is attached to a WindowKey this function restores the default value of this setting as specified by VisualEffectsKit::GetDefault().
- Returns
A reference to this object.
-
VisualEffectsControl &UnsetSilhouetteEdgesEnabled()
Removes any silhouette edges setting. If the control is attached to a WindowKey this function restores the default value of this setting as specified by VisualEffectsKit::GetDefault().
- Returns
A reference to this object.
-
VisualEffectsControl &UnsetSimpleReflection()
Removes any simple reflection setting. If the control is attached to a WindowKey this function restores the default value of this setting as specified by VisualEffectsKit::GetDefault().
- Returns
A reference to this object.
-
VisualEffectsControl &UnsetSimpleReflectionPlane()
Removes any simple reflection plane setting. If the control is attached to a WindowKey this function restores the default value of this setting as specified by VisualEffectsKit::GetDefault().
- Returns
A reference to this object.
-
VisualEffectsControl &UnsetSimpleReflectionVisibility()
Removes any simple reflection visibility setting. If the control is attached to a WindowKey this function restores the default value of this setting as specified by VisualEffectsKit::GetDefault().
- Returns
A reference to this object.
-
VisualEffectsControl &UnsetSimpleShadow()
Removes any simple shadow setting. If the control is attached to a WindowKey this function restores the default value of this setting as specified by VisualEffectsKit::GetDefault().
- Returns
A reference to this object.
-
VisualEffectsControl &UnsetSimpleShadowColor()
Removes any simple shadow color setting. If the control is attached to a WindowKey this function restores the default value of this setting as specified by VisualEffectsKit::GetDefault().
- Returns
A reference to this object.
-
VisualEffectsControl &UnsetSimpleShadowLightDirection()
Removes any simple shadow light direction setting. If the control is attached to a WindowKey this function restores the default value of this setting as specified by VisualEffectsKit::GetDefault().
- Returns
A reference to this object.
-
VisualEffectsControl &UnsetSimpleShadowPlane()
Removes any simple shadow plane setting. If the control is attached to a WindowKey this function restores the default value of this setting as specified by VisualEffectsKit::GetDefault().
- Returns
A reference to this object.
-
VisualEffectsControl &UnsetTextAntiAliasing()
Removes any text anti-alias setting. If the control is attached to a WindowKey this function restores the default value of this setting as specified by VisualEffectsKit::GetDefault().
- Returns
A reference to this object.
-
explicit VisualEffectsControl(SegmentKey &in_seg)
Initializes a control tied to the segment in_seg.
-
VisualEffectsControl(VisualEffectsControl &&in_that)
The move constructor creates a VisualEffectsControl by transferring the underlying impl of the rvalue reference to this VisualEffectsControl thereby avoiding a copy and allocation.
- Parameters
in_that – An rvalue reference to a VisualEffectsControl to take the impl from.
-
VisualEffectsControl(VisualEffectsControl const &in_that)
Initializes a control tied to the same object as in_that.
-
~VisualEffectsControl()
Releases a reference to the database object this control is tied to.
Public Static Attributes
-
static const HPS::Type staticType = HPS::Type::VisualEffectsControl
-
inline virtual HPS::Type ObjectType() const