VisualEffectsKit
-
class HPS::VisualEffectsKit : public HPS::Kit
The HPS::VisualEffectsKit class is a user space object, useful for carrying a group attribute settings. Calling HPS::VisualEffectsKit::GetDefault() will return a kit with values found in this table.
Public Functions
-
virtual bool Empty() const
Indicates whether this object has any values set on it.
- Returns
true if no values are set on this object, false otherwise.
-
bool Equals(VisualEffectsKit const &in_kit) const
Check if the source VisualEffectsKit is equivalent to this object.
- Parameters
in_kit – The source VisualEffectsKit to compare to this object.
- Returns
true if the objects are equivalent, false otherwise.
-
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.
-
bool operator!=(VisualEffectsKit const &in_kit) const
Check if the source VisualEffectsKit is not equivalent to this object.
- Parameters
in_kit – The source VisualEffectsKit to compare to this object.
- Returns
true if the objects are not equivalent, false otherwise.
-
VisualEffectsKit &operator=(VisualEffectsKit &&in_that)
The move assignment operator transfers the underlying impl of the rvalue reference to this VisualEffectsKit thereby avoiding a copy.
- Parameters
in_that – An rvalue reference to a VisualEffectsKit to take the impl from.
- Returns
A reference to this VisualEffectsKit.
-
VisualEffectsKit &operator=(VisualEffectsKit const &in_kit)
Copies the source VisualEffectsKit into this object.
- Parameters
in_kit – The source VisualEffectsKit to copy.
- Returns
A reference to this object.
-
bool operator==(VisualEffectsKit const &in_kit) const
Check if the source VisualEffectsKit is equivalent to this object.
- Parameters
in_kit – The source VisualEffectsKit to compare to this object.
- Returns
true if the objects are equivalent, false otherwise.
-
void Set(VisualEffectsKit const &in_kit)
Copies the source VisualEffectsKit into this object.
- Parameters
in_kit – The source object to copy.
-
VisualEffectsKit &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.
-
VisualEffectsKit &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.
-
VisualEffectsKit &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.
-
VisualEffectsKit &SetDepthOfFieldEnabled(bool in_state)
Allows depth of field to be enabled or disabled on a per segment basis.
- Parameters
in_state – Whether depth of field should be used.
- Returns
A reference to this object.
-
VisualEffectsKit &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.
-
VisualEffectsKit &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.
-
VisualEffectsKit &SetEyeDomeLightingEnabled(bool in_state)
Allows eye dome lighting to be enabled or disabled on a per segment basis.
- Parameters
in_state – Whether eye dome lighting should be used.
- Returns
A reference to this object.
-
VisualEffectsKit &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.
-
VisualEffectsKit &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.
- 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.
-
VisualEffectsKit &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.
- 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.
-
VisualEffectsKit &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.
-
VisualEffectsKit &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.
-
VisualEffectsKit &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.
-
VisualEffectsKit &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.
-
VisualEffectsKit &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.
-
VisualEffectsKit &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.
-
VisualEffectsKit &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.
-
VisualEffectsKit &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.
-
VisualEffectsKit &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.
-
VisualEffectsKit &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.
-
VisualEffectsKit &SetTextAntiAliasing(bool in_state)
Manipulates the state of anti-aliasing.
- Parameters
in_state – Whether anti-aliasing should be used.
- Returns
A reference to this object.
-
void Show(VisualEffectsKit &out_kit) const
Copies this object into the given VisualEffectsKit.
- Parameters
out_kit – The VisualEffectsKit to populate with the contents of this object.
-
bool ShowAmbientOcclusionEnabled(bool &out_state) const
Shows the ambient occlusion setting.
- 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.
- 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.
- 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.
- 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 post-processing effects are enabled.
- 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.
- 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 text anti-aliasing should be used.
- Returns
true if the setting is valid, false otherwise.
-
VisualEffectsKit &UnsetAmbientOcclusionEnabled()
Removes any ambient occlusion setting.
- Returns
A reference to this object.
-
VisualEffectsKit &UnsetAntiAliasing()
Removes any anti-alias setting(text and screen).
- Deprecated:
This function exists for compatibility and UnsetTextAntiAliasing() should be preferred in general usage.
- Returns
A reference to this object.
-
VisualEffectsKit &UnsetBloomEnabled()
Removes any bloom setting.
- Returns
A reference to this object.
-
VisualEffectsKit &UnsetDepthOfFieldEnabled()
Removes any depth of field setting.
- Returns
A reference to this object.
-
VisualEffectsKit &UnsetEverything()
Removes all settings from this object.
- Returns
A reference to this object.
-
VisualEffectsKit &UnsetEyeDomeLightingBackColor()
Removes any eye dome lighting back color setting.
- Returns
A reference to this object.
-
VisualEffectsKit &UnsetEyeDomeLightingEnabled()
Removes any eye dome lighting setting.
- Returns
A reference to this object.
-
VisualEffectsKit &UnsetPostProcessEffectsEnabled()
Removes any post-processing effects setting.
- Returns
A reference to this object.
-
VisualEffectsKit &UnsetShadowMaps()
Removes any shadow maps setting.
- Returns
A reference to this object.
-
VisualEffectsKit &UnsetSilhouetteEdgesEnabled()
Removes any silhouette edges setting.
- Returns
A reference to this object.
-
VisualEffectsKit &UnsetSimpleReflection()
Removes any simple reflection setting.
- Returns
A reference to this object.
-
VisualEffectsKit &UnsetSimpleReflectionPlane()
Removes any simple reflection plane setting.
- Returns
A reference to this object.
-
VisualEffectsKit &UnsetSimpleReflectionVisibility()
Removes any simple reflection visibility setting.
- Returns
A reference to this object.
-
VisualEffectsKit &UnsetSimpleShadow()
Removes any simple shadow setting.
- Returns
A reference to this object.
-
VisualEffectsKit &UnsetSimpleShadowColor()
Removes any simple shadow color setting.
- Returns
A reference to this object.
-
VisualEffectsKit &UnsetSimpleShadowLightDirection()
Removes any simple shadow light direction setting.
- Returns
A reference to this object.
-
VisualEffectsKit &UnsetSimpleShadowPlane()
Removes any simple shadow plane setting.
- Returns
A reference to this object.
-
VisualEffectsKit &UnsetTextAntiAliasing()
Removes any text anti-alias setting.
- Returns
A reference to this object.
-
VisualEffectsKit()
Initializes an empty kit.
-
VisualEffectsKit(VisualEffectsKit &&in_that)
The move constructor creates a VisualEffectsKit by transferring the underlying impl of the rvalue reference to this VisualEffectsKit thereby avoiding a copy and allocation.
- Parameters
in_that – An rvalue reference to a VisualEffectsKit to take the impl from.
-
VisualEffectsKit(VisualEffectsKit const &in_kit)
The copy constructor creates a new VisualEffectsKit object that contains the same settings as the source object.
- Parameters
in_kit – The source object to copy.
-
virtual ~VisualEffectsKit()
Destroy this kit.
Public Static Functions
-
static VisualEffectsKit GetDefault()
Creates a VisualEffectsKit which contains the default settings. The returned object will not necessarily have values set for every option, but it will have settings for those options where it is reasonable to have a default.
- Returns
A VisualEffectsKit with the default settings.
Public Static Attributes
-
static const HPS::Type staticType = HPS::Type::VisualEffectsKit
-
virtual bool Empty() const