Kanzi  3.9.4
Kanzi Engine API
kanzi::ShadowEffectRenderer2D Class Reference

Shadow effect renderer class. More...

#include <kanzi/core.ui/effect/shadow_effect_renderer2d.hpp>

Inheritance diagram for kanzi::ShadowEffectRenderer2D:
[legend]

Public Member Functions

void setBlurRadius (float radius)
 Sets the pixel radius of the blur to use for the shadow. More...
 
void setColor (ColorRGBA color)
 Sets the color of the shadow. More...
 
void setQuality (ShadowEffect2D::Quality quality)
 Sets the quality of the shadow. More...
 
void setShadowOffset (Vector2 offset)
 Sets the 2D offset in pixels for the blurred shadow. More...
 
void setShadowOnly (bool shadowOnly)
 Sets the shadow-only mode. More...
 
void setType (ShadowEffect2D::Type type)
 Sets the shadow type. More...
 
- Public Member Functions inherited from kanzi::NodeEffectRenderer2D
void beginEffect (Renderer3D &renderer, CompositionStack &compositionStack, CompositionManager *compositionManager, const Matrix3x3 &worldTransform, Vector2 requiredSize, bool alphaRequired, bool depthRequired, bool stencilRequired)
 Begins the effect. More...
 
void blitEffect (Renderer3D &renderer, CompositionStack &compositionStack, CompositionManager *compositionManager, QuadDescription &effectQuad, const Matrix3x3 &transform, const Matrix4x4 *perspectiveMatrix, const Matrix4x4 *projectionMatrix, int blendMode, bool needsClear)
 Blits the effect to the current framebuffer. More...
 
void endEffect (Renderer3D &renderer, CompositionStack &compositionStack, CompositionManager *compositionManager)
 Ends the effect. More...
 
NodeEffect2DSharedPtr getEffect () const
 Get NodeEffect2D instance where this renderer has been instantiated from. More...
 
void restoreResources ()
 Restores resources after the rendering context has been lost. More...
 
virtual ~NodeEffectRenderer2D ()
 Declare NodeEffectRenderer2D as not movable nor copyable. More...
 

Static Public Member Functions

static ShadowEffectRenderer2DUniquePtr create (ShadowEffect2DSharedPtr shadowEffect)
 Creates instances of ShadowEffectRenderer2D. More...
 

Additional Inherited Members

- Protected Types inherited from kanzi::NodeEffectRenderer2D
using EffectPassContainer = vector< EffectPass >
 Container for effect passes. More...
 
- Protected Member Functions inherited from kanzi::NodeEffectRenderer2D
EffectPassaddEffectPass ()
 Adds an effect pass and gets a reference to that pass. More...
 
void beginInitialEffectPass (Renderer3D &renderer, CompositionStack &compositionStack, CompositionManager *compositionManager, bool alphaRequired, bool depthRequired, bool stencilRequired)
 Begins the initial effect pass (effect pass at index 0). More...
 
void blitFinalEffectPass (Renderer3D &renderer, CompositionStack &compositionStack, CompositionManager *compositionManager, QuadDescription &effectQuad, const Matrix3x3 &transform, const Matrix4x4 *perspectiveMatrix, const Matrix4x4 *projectionMatrix, int blendMode, bool needsClear)
 Blits the final effect pass, whose index is getEffectPassCount() - 1, and handles the perspective transform if necessary. More...
 
void blitIntermediateEffectPass (int effectPassIndex, Renderer3D &renderer, CompositionStack &compositionStack, CompositionManager *compositionManager)
 Blits the intermediate effect pass. More...
 
void clearRenderTarget (Renderer3D &renderer, CompositionStack &compositionStack, TextureSharedPtr texture, ColorRGBA clearColor)
 Clears the render target texture with a given color. More...
 
void clearRenderTarget (Renderer3D &renderer, CompositionStack &compositionStack, NativeFramebufferHandle framebufferHandle, ColorRGBA clearColor)
 Clears the native framebuffer with a given color. More...
 
void endInitialEffectPass (CompositionStack &compositionStack)
 Ends the initial effect pass, whose index is 0. More...
 
void finalizeEffectPasses ()
 Finalizes the effect passes. More...
 
Vector2 getEffectInputTexelSize (int effectPassIndex, int inputIndex)
 Gets the texel size of the input effect pass texture in texture coordinates. More...
 
EffectPassgetEffectPass (int index)
 Gets a reference to the effect pass at a given index. More...
 
size_t getEffectPassCount () const
 Gets the number of effect passes. More...
 
int getLastEffectPassIndex () const
 Gets the index of the last effect pass. More...
 
 NodeEffectRenderer2D (NodeEffect2DSharedPtr nodeEffect)
 Constructor. More...
 
void releaseEffectPassInputRenderTargets (NodeEffectRenderer2D::EffectPass &currentEffectPass, CompositionManager *compositionManager)
 Releases those temporary render targets used by input that have EffectPass::Input::releaseRenderTarget set to true. More...
 
void removeAllEffectPasses ()
 Removes all effect passes. More...
 
void setIntermediateGeometry (Renderer &renderer, const QuadDescription &effectQuad)
 Sets the intermediate geometry for the effect. More...
 

Detailed Description

Shadow effect renderer class.

See also
ShadowEffect2D, NodeEffect2D, NodeEffectPrefab2D, NodeEffectTemplate2D
Since
Kanzi 3.9.0

Member Function Documentation

◆ create()

static ShadowEffectRenderer2DUniquePtr kanzi::ShadowEffectRenderer2D::create ( ShadowEffect2DSharedPtr  shadowEffect)
static

Creates instances of ShadowEffectRenderer2D.

Parameters
shadowEffectThe ShadowEffect2D instance on which this renderer is based.
Returns
ShadowEffectRenderer2D instance.

◆ setBlurRadius()

void kanzi::ShadowEffectRenderer2D::setBlurRadius ( float  radius)

Sets the pixel radius of the blur to use for the shadow.

Parameters
radiusThe blur radius in pixels.

◆ setShadowOffset()

void kanzi::ShadowEffectRenderer2D::setShadowOffset ( Vector2  offset)

Sets the 2D offset in pixels for the blurred shadow.

Parameters
offsetThe shadow offset in pixels.

◆ setColor()

void kanzi::ShadowEffectRenderer2D::setColor ( ColorRGBA  color)

Sets the color of the shadow.

Parameters
colorThe shadow color.

◆ setQuality()

void kanzi::ShadowEffectRenderer2D::setQuality ( ShadowEffect2D::Quality  quality)

Sets the quality of the shadow.

Parameters
qualityThe quality level.

◆ setType()

void kanzi::ShadowEffectRenderer2D::setType ( ShadowEffect2D::Type  type)

Sets the shadow type.

Parameters
typeThe shadow type.

◆ setShadowOnly()

void kanzi::ShadowEffectRenderer2D::setShadowOnly ( bool  shadowOnly)

Sets the shadow-only mode.

Parameters
shadowOnlyWhether to enable the shadow-only mode.

The documentation for this class was generated from the following file: