#include <PolygonLightDelegate.h>
Inherits AZ::Render::LightDelegateBase< PolygonLightFeatureProcessorInterface >.
Public Member Functions | |
| PolygonLightDelegate (LmbrCentral::PolygonPrismShapeComponentRequests *shapeBus, EntityId entityId, bool isVisible) | |
| void | SetLightEmitsBothDirections (bool lightEmitsBothDirections) override |
| Sets if this shape is double-sided (only applicable for 2d shapes). | |
| float | GetSurfaceArea () const override |
| Gets the surface area of the shape. | |
| float | GetEffectiveSolidAngle () const override |
| Returns the number of steradians covered by this light type. | |
| float | CalculateAttenuationRadius (float lightThreshold) const override |
| Calculates the attenuation radius for this light type based on a threshold value. | |
| void | DrawDebugDisplay (const Transform &transform, const Color &color, AzFramework::DebugDisplayRequests &debugDisplay, bool isSelected) const override |
| Handle any additional debug display drawing for beyond what the shape already provides. | |
| Aabb | GetLocalVisualizationBounds () const override |
| Returns the Aabb for the debug visualization of the light. | |
Public Member Functions inherited from AZ::Render::LightDelegateBase< PolygonLightFeatureProcessorInterface > | |
| LightDelegateBase (EntityId entityId, bool isVisible) | |
| void | SetConfig (const AreaLightComponentConfig *config) override |
| Sets the area light component config so delegates don't have to cache the same data locally. | |
| void | SetChroma (const Color &chroma) override |
| Sets the color of the light independent of light intensity. The color is a mask on the total light intensity. | |
| void | SetIntensity (float intensity) override |
| Sets the light intensity. | |
| float | SetPhotometricUnit (PhotometricUnit unit) override |
| Sets the light unit, and returns the converted light intensity. | |
| void | SetAttenuationRadius (float radius) override |
| Sets the maximum distance from any part of the surface of the area light at which this light will have an effect. | |
| const PhotometricValue & | GetPhotometricValue () const override |
| Gets the light intensity. | |
| void | SetLightEmitsBothDirections (bool lightEmitsBothDirections) override |
| Sets if this shape is double-sided (only applicable for 2d shapes). | |
| void | SetUseFastApproximation (bool useFastApproximation) override |
| void | SetVisibility (bool visibility) override |
| Turns the visibility of this light on/off. | |
| void | SetEnableShutters (bool enabled) override |
| void | SetShutterAngles (float innerAngleDegrees, float outerAngleDegrees) override |
| void | SetEnableShadow (bool enabled) override |
| Sets if shadows should be enabled. | |
| void | SetShadowBias (float bias) override |
| Sets the shadow bias. | |
| void | SetShadowmapMaxSize (ShadowmapSize size) override |
| Sets the maximum resolution of the shadow map. | |
| void | SetShadowFilterMethod (ShadowFilterMethod method) override |
| Sets the filter method for the shadow. | |
| void | SetFilteringSampleCount (uint32_t count) override |
| Sets the sample count for filtering of the shadow boundary, max 64. | |
| void | SetEsmExponent (float esmExponent) override |
| Sets the Esm exponent to use. Higher values produce a steeper falloff between light and shadow. | |
| void | SetNormalShadowBias (float bias) override |
| Sets the normal bias. Reduces acne by biasing the shadowmap lookup along the geometric normal. | |
| void | SetShadowCachingMode (AreaLightComponentConfig::ShadowCachingMode cachingMode) override |
| void | SetAffectsGI (bool affectsGI) override |
| Sets if the light should affect diffuse global illumination. | |
| void | SetAffectsGIFactor (float affectsGIFactor) override |
| Sets the multiplier on the contribution to diffuse global illumination. | |
| void | SetLightingChannelMask (uint32_t lightingChannelMask) override |
| Set the lighting channel mask. | |
| void | SetGoboTexture (AZ::Data::Instance< AZ::RPI::Image > goboTexture) override |
Additional Inherited Members | |
Protected Member Functions inherited from AZ::Render::LightDelegateBase< PolygonLightFeatureProcessorInterface > | |
| void | InitBase (EntityId entityId) |
| PolygonLightFeatureProcessorInterface * | GetFeatureProcessor () const |
| const AreaLightComponentConfig * | GetConfig () const |
| FeatureProcessorType::LightHandle | GetLightHandle () const |
| const Transform & | GetTransform () const |
| bool | GetShuttersEnabled () |
| bool | GetShadowsEnabled () |
| void | OnShapeChanged (ShapeChangeReasons changeReason) override |
| void | OnTransformChanged (const Transform &local, const Transform &world) override |
Protected Attributes inherited from AZ::Render::LightDelegateBase< PolygonLightFeatureProcessorInterface > | |
| LmbrCentral::ShapeComponentRequests * | m_shapeBus |
Manages rendering a Polygon light through the Polygon light feature processor and communication with a Polygon shape bus for the area light component.
|
overridevirtual |
Calculates the attenuation radius for this light type based on a threshold value.
Implements AZ::Render::LightDelegateInterface.
|
overridevirtual |
Handle any additional debug display drawing for beyond what the shape already provides.
Implements AZ::Render::LightDelegateInterface.
|
inlineoverridevirtual |
Returns the number of steradians covered by this light type.
Implements AZ::Render::LightDelegateInterface.
|
overridevirtual |
Returns the Aabb for the debug visualization of the light.
Implements AZ::Render::LightDelegateInterface.
|
overridevirtual |
Gets the surface area of the shape.
Implements AZ::Render::LightDelegateInterface.
|
overridevirtual |
Sets if this shape is double-sided (only applicable for 2d shapes).
Implements AZ::Render::LightDelegateInterface.