Class

ClutterDeformEffect

Description [src]

abstract class Clutter.DeformEffect : Clutter.OffscreenEffect
{
  /* No available fields */
}

A base class for effects deforming the geometry of an actor

ClutterDeformEffect is an abstract class providing all the plumbing for creating effects that result in the deformation of an actor’s geometry.

ClutterDeformEffect uses offscreen buffers to render the contents of a ClutterActor and then the Cogl vertex buffers API to submit the geometry to the GPU.

Implementing ClutterDeformEffect

Sub-classes of ClutterDeformEffect should override the Clutter.DeformEffectClass.deform_vertex virtual function; this function is called on every vertex that needs to be deformed by the effect. Each passed vertex is an in-out parameter that initially contains the position of the vertex and should be modified according to a specific deformation algorithm.

Hierarchy

hierarchy this ClutterDeformEffect ancestor_0 ClutterOffscreenEffect ancestor_0--this ancestor_1 ClutterEffect ancestor_1--ancestor_0 ancestor_2 ClutterActorMeta ancestor_2--ancestor_1 ancestor_3 GInitiallyUnowned ancestor_3--ancestor_2 ancestor_4 GObject ancestor_4--ancestor_3

Descendants

Instance methods

clutter_deform_effect_get_back_material

Retrieves the handle to the back face material used by effect.

clutter_deform_effect_get_n_tiles

Retrieves the number of horizontal and vertical tiles used to sub-divide the actor’s geometry during the effect.

clutter_deform_effect_invalidate

Invalidates the effects vertices and, if it is associated to an actor, it will queue a redraw.

clutter_deform_effect_set_back_material

Sets the material that should be used when drawing the back face of the actor during a deformation.

clutter_deform_effect_set_n_tiles

Sets the number of horizontal and vertical tiles to be used when applying the effect.

Methods inherited from ClutterOffscreenEffect (5)
clutter_offscreen_effect_create_texture

Calls the Clutter.OffscreenEffectClass.create_texture virtual function of the effect.

clutter_offscreen_effect_get_pipeline

Retrieves the pipeline used as a render target for the offscreen buffer created by effect.

clutter_offscreen_effect_get_target_size

Retrieves the size of the offscreen buffer used by effect to paint the actor to which it has been applied.

clutter_offscreen_effect_get_texture

Retrieves the texture used as a render target for the offscreen buffer created by effect.

clutter_offscreen_effect_paint_target

Calls the Clutter.OffscreenEffectClass.paint_target virtual function of the effect.

Methods inherited from ClutterEffect (1)
clutter_effect_queue_repaint

Queues a repaint of the effect. The effect can detect when the ‘paint’ method is called as a result of this function because it will not have the CLUTTER_EFFECT_PAINT_ACTOR_DIRTY flag set. In that case the effect is free to assume that the actor has not changed its appearance since the last time it was painted so it doesn’t need to call clutter_actor_continue_paint() if it can draw a cached image. This is mostly intended for effects that are using a %CoglOffscreen to redirect the actor (such as %ClutterOffscreenEffect). In that case the effect can save a bit of rendering time by painting the cached texture without causing the entire actor to be painted.

Methods inherited from ClutterActorMeta (5)
clutter_actor_meta_get_actor

Retrieves a pointer to the ClutterActor that owns meta.

clutter_actor_meta_get_enabled

Retrieves whether meta is enabled.

clutter_actor_meta_get_name

Retrieves the name set using clutter_actor_meta_set_name().

clutter_actor_meta_set_enabled

Sets whether meta should be enabled or not.

clutter_actor_meta_set_name

Sets the name of meta.

Methods inherited from GObject (43)

Please see GObject for a full list of methods.

Properties

Clutter.DeformEffect:back-material

A material to be used when painting the back of the actor to which this effect has been applied.

Clutter.DeformEffect:x-tiles

The number of horizontal tiles. The bigger the number, the smaller the tiles.

Clutter.DeformEffect:y-tiles

The number of vertical tiles. The bigger the number, the smaller the tiles.

Properties inherited from ClutterActorMeta (3)
Clutter.ActorMeta:actor

The ClutterActor attached to the ClutterActorMeta instance.

Clutter.ActorMeta:enabled

Whether or not the ClutterActorMeta is enabled.

Clutter.ActorMeta:name

The unique name to access the ClutterActorMeta.

Signals

Signals inherited from GObject (1)
GObject::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

Class structure

struct ClutterDeformEffectClass {
  void (* deform_vertex) (
    ClutterDeformEffect* effect,
    gfloat width,
    gfloat height,
    CoglTextureVertex* vertex
  );
  
}

The ClutterDeformEffectClass structure contains only private data.

Class members
deform_vertex: void (* deform_vertex) ( ClutterDeformEffect* effect, gfloat width, gfloat height, CoglTextureVertex* vertex )

Virtual function; sub-classes should override this function to compute the deformation of each vertex.

Virtual methods

Clutter.DeformEffectClass.deform_vertex

Virtual function; sub-classes should override this function to compute the deformation of each vertex.