#include <hps.h>
Public Member Functions | |
bool | Empty () const |
bool | Equals (VisualEffectsKit const &in_kit) const |
HPS::Type | ObjectType () const |
bool | operator!= (VisualEffectsKit const &in_kit) const |
VisualEffectsKit & | operator= (VisualEffectsKit &&in_that) |
VisualEffectsKit & | operator= (VisualEffectsKit const &in_kit) |
bool | operator== (VisualEffectsKit const &in_kit) const |
void | Set (VisualEffectsKit const &in_kit) |
VisualEffectsKit & | SetAntiAliasing (bool in_state) |
VisualEffectsKit & | SetPostProcessEffectsEnabled (bool in_state) |
VisualEffectsKit & | SetShadowMaps (bool in_state, unsigned int in_samples=4, unsigned int in_resolution=1024, bool in_view_dependent=true, bool in_jitter=true) |
VisualEffectsKit & | SetShadowMaps (unsigned int in_samples, unsigned int in_resolution, bool in_view_dependent, bool in_jitter) |
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) |
VisualEffectsKit & | SetSimpleReflection (float in_opacity, unsigned int in_blurring, bool in_fading, float in_attenuation_near_distance, float in_attenuation_far_distance) |
VisualEffectsKit & | SetSimpleReflectionPlane (Plane const &in_projected_onto=Plane(0.0f, 1.0f, 0.0f, 1.0f)) |
VisualEffectsKit & | SetSimpleReflectionVisibility (VisibilityKit const &in_reflected_types) |
VisualEffectsKit & | SetSimpleShadow (bool in_state, unsigned int in_resolution=256, unsigned int in_blurring=1, bool in_ignore_transparency=false) |
VisualEffectsKit & | SetSimpleShadow (unsigned int in_resolution, unsigned int in_blurring, bool in_ignore_transparency) |
VisualEffectsKit & | SetSimpleShadowColor (RGBAColor const &in_color=RGBAColor(0.0f, 0.0f, 0.0f, 1.0f)) |
VisualEffectsKit & | SetSimpleShadowLightDirection (Vector const &in_direction=Vector(0.0f, 1.0f, 0.0f)) |
VisualEffectsKit & | SetSimpleShadowPlane (Plane const &in_projected_onto=Plane(0.0f, 1.0f, 0.0f, 1.0f)) |
void | Show (VisualEffectsKit &out_kit) const |
bool | ShowAntiAliasing (bool &out_state) const |
bool | ShowPostProcessEffectsEnabled (bool &out_state) const |
bool | ShowShadowMaps (bool &out_state, unsigned int &out_samples, unsigned int &out_resolution, bool &out_view_dependent, bool &out_jitter) const |
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 |
bool | ShowSimpleReflectionPlane (Plane &out_projected_onto) const |
bool | ShowSimpleReflectionVisibility (VisibilityKit &out_reflected_types) const |
bool | ShowSimpleShadow (bool &out_state, unsigned int &out_resolution, unsigned int &out_blurring, bool &out_ignore_transparency) const |
bool | ShowSimpleShadowColor (RGBAColor &out_color) const |
bool | ShowSimpleShadowLightDirection (Vector &out_direction) const |
bool | ShowSimpleShadowPlane (Plane &out_projected_onto) const |
VisualEffectsKit & | UnsetAntiAliasing () |
VisualEffectsKit & | UnsetEverything () |
VisualEffectsKit & | UnsetPostProcessEffectsEnabled () |
VisualEffectsKit & | UnsetShadowMaps () |
VisualEffectsKit & | UnsetSimpleReflection () |
VisualEffectsKit & | UnsetSimpleReflectionPlane () |
VisualEffectsKit & | UnsetSimpleReflectionVisibility () |
VisualEffectsKit & | UnsetSimpleShadow () |
VisualEffectsKit & | UnsetSimpleShadowColor () |
VisualEffectsKit & | UnsetSimpleShadowLightDirection () |
VisualEffectsKit & | UnsetSimpleShadowPlane () |
VisualEffectsKit () | |
VisualEffectsKit (VisualEffectsKit const &in_kit) | |
VisualEffectsKit (VisualEffectsKit &&in_that) | |
virtual | ~VisualEffectsKit () |
![]() | |
intptr_t | GetClassID () const |
intptr_t | GetInstanceID () const |
bool | HasType (HPS::Type in_mask) const |
Object (Object const &that) | |
Object (Object &&in_that) | |
Object & | operator= (Object const &other_object) |
Object & | operator= (Object &&in_that) |
virtual void | Reset () |
HPS::Type | Type () const |
Static Public Member Functions | |
static VisualEffectsKit | GetDefault () |
![]() | |
template<typename T > | |
static intptr_t | ClassID () |
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.
HPS::VisualEffectsKit::VisualEffectsKit | ( | ) |
Initializes an empty kit.
HPS::VisualEffectsKit::VisualEffectsKit | ( | VisualEffectsKit const & | in_kit | ) |
The copy constructor creates a new VisualEffectsKit object that contains the same settings as the source object.
in_kit | The source object to copy. |
HPS::VisualEffectsKit::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.
in_that | An rvalue reference to a VisualEffectsKit to take the impl from. |
|
virtual |
Destroy this kit.
|
virtual |
Indicates whether this object has any values set on it.
Reimplemented from HPS::Object.
bool HPS::VisualEffectsKit::Equals | ( | VisualEffectsKit const & | in_kit | ) | const |
Check if the source VisualEffectsKit is equivalent to this object.
in_kit | The source VisualEffectsKit to compare to this object. |
|
static |
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.
|
inlinevirtual |
This function returns the type the object, as declared. This does not necessarily give the true type of the underlying object.
Reimplemented from HPS::Object.
bool HPS::VisualEffectsKit::operator!= | ( | VisualEffectsKit const & | in_kit | ) | const |
Check if the source VisualEffectsKit is not equivalent to this object.
in_kit | The source VisualEffectsKit to compare to this object. |
VisualEffectsKit& HPS::VisualEffectsKit::operator= | ( | VisualEffectsKit && | in_that | ) |
The move assignment operator transfers the underlying impl of the rvalue reference to this VisualEffectsKit thereby avoiding a copy.
in_that | An rvalue reference to a VisualEffectsKit to take the impl from. |
VisualEffectsKit& HPS::VisualEffectsKit::operator= | ( | VisualEffectsKit const & | in_kit | ) |
Copies the source VisualEffectsKit into this object.
in_kit | The source VisualEffectsKit to copy. |
bool HPS::VisualEffectsKit::operator== | ( | VisualEffectsKit const & | in_kit | ) | const |
Check if the source VisualEffectsKit is equivalent to this object.
in_kit | The source VisualEffectsKit to compare to this object. |
void HPS::VisualEffectsKit::Set | ( | VisualEffectsKit const & | in_kit | ) |
Copies the source VisualEffectsKit into this object.
in_kit | The source object to copy. |
VisualEffectsKit& HPS::VisualEffectsKit::SetAntiAliasing | ( | bool | in_state | ) |
Manipulates the state of anti-aliasing.
in_state | Whether anti-aliasing should be used. |
VisualEffectsKit& HPS::VisualEffectsKit::SetPostProcessEffectsEnabled | ( | bool | in_state | ) |
Allows all post-processing effects to be enabled or disabled en masse on a per segment basis.
in_state | Whether post-processing effects should be used. |
VisualEffectsKit& HPS::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.
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. |
VisualEffectsKit& HPS::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.
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. |
VisualEffectsKit& HPS::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.
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. |
VisualEffectsKit& HPS::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.
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. |
VisualEffectsKit& HPS::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.
in_projected_onto | The plane that simple reflections should be projected onto. |
VisualEffectsKit& HPS::VisualEffectsKit::SetSimpleReflectionVisibility | ( | VisibilityKit const & | in_reflected_types | ) |
Defines the visibility settings for the model when rendered in the reflection plane.
in_reflected_types | A collection of visibility settings that will be applied to the reflected geometry. |
VisualEffectsKit& HPS::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.
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. |
VisualEffectsKit& HPS::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.
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. |
VisualEffectsKit& HPS::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.
in_color | The color of simple shadows. |
VisualEffectsKit& HPS::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.
in_direction | The direction that the light source for a simple shadow is coming from. |
VisualEffectsKit& HPS::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.
in_projected_onto | The plane that simple shadows should be projected onto. |
void HPS::VisualEffectsKit::Show | ( | VisualEffectsKit & | out_kit | ) | const |
Copies this object into the given VisualEffectsKit.
out_kit | The VisualEffectsKit to populate with the contents of this object. |
bool HPS::VisualEffectsKit::ShowAntiAliasing | ( | bool & | out_state | ) | const |
Shows the anti-aliasing setting.
out_state | Whether anti-aliasing should be used. |
bool HPS::VisualEffectsKit::ShowPostProcessEffectsEnabled | ( | bool & | out_state | ) | const |
Shows the post-processing effects setting.
out_state | Whether post-processing effects are enabled. |
bool HPS::VisualEffectsKit::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.
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. |
bool HPS::VisualEffectsKit::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.
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. |
bool HPS::VisualEffectsKit::ShowSimpleReflectionPlane | ( | Plane & | out_projected_onto | ) | const |
Shows the simple reflection plane setting.
out_projected_onto | The plane that simple reflections should be projected onto. |
bool HPS::VisualEffectsKit::ShowSimpleReflectionVisibility | ( | VisibilityKit & | out_reflected_types | ) | const |
Shows the simple shadow visibility setting.
out_reflected_types | A collection of visibility settings that will be applied to the reflected geometry. |
bool HPS::VisualEffectsKit::ShowSimpleShadow | ( | bool & | out_state, |
unsigned int & | out_resolution, | ||
unsigned int & | out_blurring, | ||
bool & | out_ignore_transparency | ||
) | const |
Shows the simple shadow setting.
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. |
bool HPS::VisualEffectsKit::ShowSimpleShadowColor | ( | RGBAColor & | out_color | ) | const |
Shows the simple shadow color setting.
out_color | The color of simple shadows. |
bool HPS::VisualEffectsKit::ShowSimpleShadowLightDirection | ( | Vector & | out_direction | ) | const |
Shows the simple shadow light direction setting.
out_direction | The direction that the light source for a simple shadow is coming from. |
bool HPS::VisualEffectsKit::ShowSimpleShadowPlane | ( | Plane & | out_projected_onto | ) | const |
Shows the simple shadow plane setting.
out_projected_onto | The plane that simple shadows should be projected onto. |
VisualEffectsKit& HPS::VisualEffectsKit::UnsetAntiAliasing | ( | ) |
Removes any anti-alias setting.
VisualEffectsKit& HPS::VisualEffectsKit::UnsetEverything | ( | ) |
Removes all settings from this object.
VisualEffectsKit& HPS::VisualEffectsKit::UnsetPostProcessEffectsEnabled | ( | ) |
Removes any post-processing effects setting.
VisualEffectsKit& HPS::VisualEffectsKit::UnsetShadowMaps | ( | ) |
Removes any shadow maps setting.
VisualEffectsKit& HPS::VisualEffectsKit::UnsetSimpleReflection | ( | ) |
Removes any simple reflection setting.
VisualEffectsKit& HPS::VisualEffectsKit::UnsetSimpleReflectionPlane | ( | ) |
Removes any simple reflection plane setting.
VisualEffectsKit& HPS::VisualEffectsKit::UnsetSimpleReflectionVisibility | ( | ) |
Removes any simple reflection visibility setting.
VisualEffectsKit& HPS::VisualEffectsKit::UnsetSimpleShadow | ( | ) |
Removes any simple shadow setting.
VisualEffectsKit& HPS::VisualEffectsKit::UnsetSimpleShadowColor | ( | ) |
Removes any simple shadow color setting.
VisualEffectsKit& HPS::VisualEffectsKit::UnsetSimpleShadowLightDirection | ( | ) |
Removes any simple shadow light direction setting.
VisualEffectsKit& HPS::VisualEffectsKit::UnsetSimpleShadowPlane | ( | ) |
Removes any simple shadow plane setting.