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