There are various places where an Effect
node may be used.
To apply an effect on a given shape, it can be placed
on the new Appearance.effects
list:
Appearance MFNode [] effects [] # Effect
All the effects on this list (with suitable language) will be used.
This allows authors to define a library of independent shader effects
and then trivially pick desired effects for each particular shape.
Simply placing two effects on the Appearance.effects
list
makes them cooperate correctly.
Note that all introduced nodes benefit from X3D mechanism to reuse the nodes
by reference (the DEF
and USE
keywords). Reusing the
Effect
nodes
is most natural and allows to combine existing effects in any desired way.
Reusing the EffectPart
nodes is also useful, when some effects
would like to share a particular piece of code. For example,
the same EffectPart
node, with a library of useful
shading language functions, may be used for many effects.