Decal animator

Decal animators describe how a decal is changed after it has been created. You create a decal animator like this in the DECALDEF lump:

animatortype AnimatorName
{
  properties
  ...
}

Any decal animator defined this way can be specified in a decal definition by using the 'Animator' keyword.

There are 5 types of decal animators:

Faders

Faders have the purpose of fading a decal out. Their syntax is:

fader FaderName
{
   DecayStart <time>
   DecayTime <time>
}
  • DecayStart specifies the time in seconds the decal remains unchanged until the fading process starts
  • DecayTime specifies the time in seconds it takes until the decal has completely faded out.

Stretchers

Stretchers have the purpose of stretching the decal to a defined size. Their syntax is:


stretcher StretcherName
{
   GoalX <size>
   GoalY <size>
   StretchStart <time>
   StretchTime <time>
}


  • GoalX specifies the final horizontal scaling factor of the decal
  • GoalY specifies the final vertical scaling factor of the decal
  • StretchStart specifies the time in seconds the decal remains unchanged until the stretching process starts
  • StretchTime specifies the time in seconds how long the stretching process will take.

Sliders


Sliders have the purpose of sliding the decal along a wall. Their syntax is:


slider SliderName
{
   DistX <size>
   DistY <size>
   SlideStart <time>
   SlideTime <time>
}


  • DistX specifies the distance the decal moves in X-direction
  • DistY specifies the distance the decal moves in Y-direction
  • SlideStart specifies the time in seconds the decal remains unchanged until the sliding process starts
  • SlideTime specifies the time in seconds how long the sliding process will take.

Color changers

Color changers have the purpose of gradually altering the color of a decal. Their syntax is:


colorchanger ChangerName
{
   Color "rr gg bb"
   FadeStart <time>
   FadeTime <time>
}


  • Color specifies the color the decal should change into.
  • FadeStart specifies the time in seconds the decal remains unchanged until the changing process starts
  • FadeTime specifies the time in seconds how long the changing process will take.

Combiner


Combiners are used to combine more than one decal animator on one decal. Their syntax is:

Combiner CombinerName
{
   AnimatorName
   AnimatorName
   ...
}

Each AnimatorName must specify a previously defined animator.


Note: All information here is directly taken from the source code and has not been verified with actual examples so there may be some slight errors.

This article is issued from Zdoom. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.