Functions (Macros For Effects)

   Print  Previous  Next

Specific Resources

»Functions called by MADRIX
Macros for Effects: Available Functions
»Effect Parameter Chaser


Using the Frame ID
Applying Asynchronous Rendering
Applying Stepped Rendering
Applying Filter Effects (FX)
Setting And Getting Blind Mode Or Solo Mode


»Static Color Effects Overview (SCE)
»Sound2Light Effects Overview (S2L)
»Music2Light Effects Overview (M2L)


General Resources

»Keyword Search
»List Of Functions (Alphabetical Order)
»List Of Functions (Grouped)
»List Of Global Variables and Constants
»List Of Operations
»List Of Structures
»Table Of Frequencies
»Table Of Notes


Available Functions

Standard Functions

For non-specific functions, see »List of Functions (Alphabetical Order)


Effect-Specific Functions Depending On The Effect

Each MADRIX Effect is different. In addition to the non-specific functions, each effect has therefore its own settings and specific functions.
Such functions are not working in other effects. A macro which uses such commands cannot be compiled in another effect.
A separate topic is provided for each MADRIX Effect.


Using The Frame ID

There are a lot of effects which use an internal Frame ID to have more control. For example, the SCE Color Scroll Effect uses the Frame ID to control the speed of scrolling. This does not make sense for all effects. However, for each effect it is possible to set and get the current Frame ID and Frame Count. The Frame Count identifies the maximal Frame ID used by the effect. This may be utilized to speed up the effect. For example, the following source code increases the speed of an effect that is controlled by the Frame ID.

void PreRenderEffect()


    SetFrameId(fmod(GetFrameId() + 2, GetFrameCount()));



However, it is not possible to set the Frame Count by a macro; except for a macro of the MAS Script Effect.

Learn more »Using Frames


Applying Asynchronous Rendering

Normally, the effects are synchronized to the Main Mixing frame rate, which is set to 50 Hz by default.
But for the »MAS Script effect, there is the option to control the render frequency independently.
Learn more »Using Frames


Applying Stepped Rendering

Normally, the effects use floating-point frames which is represented by the rational return values of the functions GetFrameId and GetFrameSteps. That way, the effects are able to render very precisely and smooth. However, sometimes it is desired to let the effects "step" pixel by pixel. This option is only available for some effects, for example »SCE Color Scroll and »MAS Script

void SetStep(int value)
int GetStep()
void ToggleStep()

Valid values for value are 0 (Off) or 1 (On). If stepped rendering is activated, effects like SCE Color Scroll look hard-stepping. In the MAS Script effect, stepped rendering causes GetFrameId and GetFrameSteps to return only integer values.

Learn more »Using Frames


Applying Filter Effects (FX)

You may quickly change the visual outcome of Effects using Filters (also called Filter Effects, FX).

void SetFilter(int filter)
int GetFilter()


Valid values for filter are the global variables »Filters. You can also find further explanations about the various filter types in this chapter.


Setting And Getting Blind Mode Or Solo Mode

Blind Mode and Solo Mode are two options available for each Layer. Blind Mode will deactivate the current Layer, while Solo Mode will only show this Layer while disabling all other Layers.

void SetBlind(int value)
int GetBlind()
void ToggleBlind()
void SetSolo(int value)
int GetSolo()
void ToggleSolo()

Valid values for value are 0 (Off) or 1 (On).


MADRIX Version: 3.6f | Script Version: 2.19
[Ctrl & +/-] = Zoom In/Out | [Ctrl & 0] = 100%
Print   Previous   Next