Reply To: uiEnvelope Status

Home Forums General Using Ctrlr uiEnvelope Status Reply To: uiEnvelope Status

#14074
macrodx
Participant
    • Topics: 3
    • Replies: 28
    • Total: 31

    Sounds great!
    Maybe you want to take this into account (I am currently working on a Lua based example for this…):

    A point is specified by
    – min, max and default value for each axis
    – linked point for each axis
    The rules are implemented on the level of the envelope control, a point itself contains no control logic. An ADSR envelope would be of type time/level and treats it´s points as a left-to-right sequence. Rules for handling are as follows:
    If a point has a range on an axis (given bei min/max value), it is moveable on the axis. If a point has a linked point, the envelope updates the point position when it updates the linked point. The ranges set the dimensions of the bounding rectangle for each point.
    Take the decay/sustain points as an example:
    Decay gets min/max values that make it moveable on both axis. Decay is linked to Sustain:Y. Sustain gets min/max:X = MAX, thus is not moveable on the x-axis. Sustain is linked to Decay:Y. Now if you move Decay on the y-axis, sustain will follow. If you move sustain on the y-axis, Decay will follow.

    As I said, I´m working on an example for that. The goal is to implement one ruleset on the envelope control level, and then set it´s character (ADSR, DADBSSR…) by adding points configured by min/max and linked points. Let´s see how this works out 🙂

    Ctrlr