advanced nodes

Sat Nov 08, 2014 3:30 am

So I've found myself wishing I could trigger events conditionally a few times recently.

For example another animation at the end of a oscillator or similar.

I havn't exactly figured out what the most 'magic' way to propose to do this is, perhaps a modifier you could put at the end of your modifier list that exposes the current value to a list of variables and a window similar to the playlist window that showed exposed variables.

From there nodes like a boolean node that would trigger its own bypass if conditions were met.

WgjFoVz.png
WgjFoVz.png (25.36 KiB) Viewed 7881 times
2 sec mockup of what I mean by that.

Another alternative could just be exposing a nodes own bypass to the MDK so conditional effects could be made.

I'd love to get some discussion about ways this could be done better and more user friendly. Also any tricks you're currently using to achieve things like this with the tools currently available :)
Syd
 
Posts: 60
Joined: Thu Oct 16, 2014 10:32 am

Re: advanced nodes

Sun Nov 09, 2014 12:37 am

For example another animation at the end of a oscillator or similar.

Hmm, can you describe this a bit more? I'm not sure I understand. An oscillator doesn't really "end"; it keeps going forever.

Another alternative could just be exposing a nodes own bypass to the MDK so conditional effects could be made.

I do plan on allowing the bypass button to be controlled in the same way as other module parameters, so you'd be able to use modifiers for it. Would this be sufficient?

I don't think there's a way to expose the bypass button to the MDK, because when bypass is engaged, the MDK draw functions aren't called.
Eric
Site Admin
 
Posts: 2793
Joined: Wed Apr 09, 2014 9:28 pm

Re: advanced nodes

Sun Nov 09, 2014 2:25 am

Eric wrote:Hmm, can you describe this a bit more? I'm not sure I understand. An oscillator doesn't really "end"; it keeps going forever.


sorry, I worded it a bit vague. what I mean is say when an oscillator hits 1.0 (or a configurable value) activate another chain of nodes.

Use case would be advanced animations where when it passes some value with an osc and triggers another animation.

Eric wrote:I do plan on allowing the bypass button to be controlled in the same way as other module parameters, so you'd be able to use modifiers for it. Would this be sufficient?

I don't think there's a way to expose the bypass button to the MDK, because when bypass is engaged, the MDK draw functions aren't called.


What you're proposing with the bypass parameters is definitely awesome, esp if it also gives us midi control too :)

I'm assuming modifiers for bypass would continue to calculate even with the bypass on?
Syd
 
Posts: 60
Joined: Thu Oct 16, 2014 10:32 am

Re: advanced nodes

Sun Nov 09, 2014 5:58 pm

What you're proposing with the bypass parameters is definitely awesome, esp if it also gives us midi control too :)

I'm assuming modifiers for bypass would continue to calculate even with the bypass on?

Yup, what I'm thinking is that you would go into the module's menu and select something like "Show Parameter for Bypass". A new Bypass parameter would appear at the bottom of the module, and it would work just like the other parameters.
bypass1.jpg
bypass1.jpg (7.35 KiB) Viewed 8264 times

What do you think?
Eric
Site Admin
 
Posts: 2793
Joined: Wed Apr 09, 2014 9:28 pm

Re: advanced nodes

Mon Nov 10, 2014 6:16 am

that's a really nice change!

although still doesn't help that much with synchronizing animations across nodes.

Perhaps another alternative could be a node that only has a single output at a time?

functionality would be:

(value / number of outputs = selected output) so 2 outputs with a value of 0.51 enables output 2, disabling output 1 etc.
Syd
 
Posts: 60
Joined: Thu Oct 16, 2014 10:32 am

Re: advanced nodes

Mon Nov 10, 2014 8:41 am

+1 for conditional nodes. Boolean, and or xor etc :).
blackdot
 
Posts: 528
Joined: Sun Jul 06, 2014 10:18 pm

Re: advanced nodes

Mon Nov 10, 2014 6:15 pm

Ahh, so I think you're talking about some kind of "mixer" module? In which the parameter's value would control which of the module inputs is let through?

Try this with the GLSLShader module:
FadeMix.txt
(270 Bytes) Downloaded 756 times

Hook up two inputs to the module, and use the X Param to fade between them.

Yes? No? Let me know what you think. I wrote that shader a while ago but I guess I never posted it.

Also, if you have a copy of Resolume, some of its FFGL plugins behave in a similar way, particularly the ones that have "Mixer" in their names.
Eric
Site Admin
 
Posts: 2793
Joined: Wed Apr 09, 2014 9:28 pm

Re: advanced nodes

Mon Nov 10, 2014 11:37 pm

again, very close to what I'm after but I'm trying to use paramaters to keep it in sync.


Say for example I make an effect where I had a sphere that rolls from left to right with an oscillator. At 0.0 and 1.0 I want to trigger an effect where you get an explosion of particles (whether that's with video, ffgl, etc etc).
Syd
 
Posts: 60
Joined: Thu Oct 16, 2014 10:32 am

Re: advanced nodes

Wed Nov 12, 2014 9:00 pm

To trigger a video with a Ramp modifier (for example), you can link the Goto Start parameter in the Video module. Like this:
GotoStartRamp.jpg
GotoStartRamp.jpg (15.44 KiB) Viewed 8243 times

When the Ramp crosses from below .5 to above .5, the Goto Start parameter will be triggered. If you disable the Looping parameter as I did above, the video will play to the End Time and then stop until it's re-triggered.

As for syncing with other oscillators in the scene, this is what the "Edit > Synchronize Modules" command is for. While editing a scene you can use it to start all oscillators at the beginning, so that they will be perfectly in sync if their parameters are the same. But more importantly, this happens automatically when you change scenes.

Am I on the right track here? :)
Eric
Site Admin
 
Posts: 2793
Joined: Wed Apr 09, 2014 9:28 pm

Re: advanced nodes

Sat Nov 12, 2016 7:21 pm

Perhaps i should have posted this as a new thread, as it consists of more ideas than what can apply to this thread, but this is where it started, and so this is where it goes :lol:

The "linearity" of the modifiers is kinda limiting. Especially since there is only 1 line of modifiers. A "network" thing would be great.

A "scene"/"macro"-layout (like the regular magic window) to place the modifiers of each module/box/window in (double clicking on the box/module could expand it to a mini-scene thing), where the modifiers could be linked according to ones needs. This should allow placing modifiers on the modifiers (which is already mentioned). And it could also perhaps enable us to place the "Sound-Input" thingS where we want in the line of modifiers - like the other modifiers. It would be AWESOME!!! If one could make scenes within scenes - or Macros - then the functionality would be a LOT better!

A GLOBAL/MASTER "Volume"/"Frequency" sensitivity thingy would also be AWESOME! Especially for people without MIDI controllers, it takes a lot of work to adjust a bunch of parameters everytime one wants to play higher or lower volume. Im using MIDI, and so i already have my assigned "HighPass" and "LowPass" sliders, but it would be more practical to have an additional "MASTER VOLUME SENSITIVITY" - or ideally multiple ones for various frequencies, as some music have more bass than treble, and vice versa...

The DJ software "Traktor" has a function called "key-mappings", like MIDI-mapping, only with the regular QWERTY keyboard. Id LOVE to see this in this software as well..!

GLOBAL MODIFIER FOR OFFSETTING THE MIDI INPUT - To make the most out of a limited MIDI-controller, why not make A MASTER/GLOBAL module-thingy (or perhaps as a function in the "AUDIO-MIDI" window) that allows offsetting MIDI CC#, or perhaps the "MIDI channel"... Like the "Shift" or "CapsLock" buttons on a computer..? If this would be difficult to switch with a MIDI command, then maybe a "Program Change" command could work instead??? Or is this also MIDI??? Ability to use a regular COMPUTER QWERTY KEYBOARD for this purpose would add a LOT of extra functionality for people with just a limited MIDI controller

MIDI input with "swing" function, so that the effect of the MIDI slider increases or decreases the further "up" (or down) one pushes a slider.

Ability to invert MIDI signals on specific modifiers

Ability to choose MIDI VALUE; both TO and FROM

Ability to use MIDI to range from a negative to a positive number would also make things a lot simpler.

As well as an external BPM input thing, which i know is already mentioned. Switching between shaders, etc, with only the "20-80hz" function does not allow for very good syncronization with the music, and i dont want to have to manually change some mathematical values for every new song...
Espen
 
Posts: 36
Joined: Sat Nov 12, 2016 12:22 pm

Re: advanced nodes

Sun Nov 13, 2016 6:33 am

Espen wrote:A GLOBAL/MASTER "Volume"/"Frequency" sensitivity thingy would also be AWESOME! Especially for people without MIDI controllers, it takes a lot of work to adjust a bunch of parameters everytime one wants to play higher or lower volume. Im using MIDI, and so i already have my assigned "HighPass" and "LowPass" sliders, but it would be more practical to have an additional "MASTER VOLUME SENSITIVITY" - or ideally multiple ones for various frequencies, as some music have more bass than treble, and vice versa...


add a scale modifier to your FFTs, global volume can be adjusted in your audio/midi window by right clicking the box at the far right of your inputs.
Syd
 
Posts: 60
Joined: Thu Oct 16, 2014 10:32 am

Re: advanced nodes

Mon Nov 14, 2016 5:09 pm

Perhaps i should have posted this as a new thread, as it consists of more ideas than what can apply to this thread, but this is where it started, and so this is where it goes :lol:

It's ok, no problem :). But some of your suggestions are already in the software (such as what Syd described above), so you might want to have a quick look at the User's Guide. And some of your other suggestions are coming in 2.0. The rest I think I already have on my to-do list :).

The "linearity" of the modifiers is kinda limiting. Especially since there is only 1 line of modifiers. A "network" thing would be great.

Well, there are a *lot* of more advanced programs that can do what you're describing, such as Max/MSP, vvvv, TouchDesigner, Isadora, etc. These are full visual programming environments in which the network concept applies to everything, including single numerical values. Some of them are free for personal use, so you might want to check them out. But for Magic, I've decided to keep things simple and focus on the nodes as video processing/generating elements only. This is the way it will remain for the foreseeable future.
Eric
Site Admin
 
Posts: 2793
Joined: Wed Apr 09, 2014 9:28 pm

Re: advanced nodes

Wed Nov 16, 2016 8:03 pm

Regarding right clicking to adjust global volume.

It would be better if this did not block the rest of the interface, or was available as a slider in the UI to allow "on the fly" adjustments live.
artnik
 
Posts: 264
Joined: Tue Jan 05, 2016 5:33 pm

Re: advanced nodes

Thu Nov 17, 2016 2:34 am

Yeah, I'm a bit embarrassed to admit that someone suggested that almost exactly 2 years ago (viewtopic.php?f=4&t=228&p=776#p776), but I still haven't gotten around to it. I promise I will make it a priority after 2.0.
Eric
Site Admin
 
Posts: 2793
Joined: Wed Apr 09, 2014 9:28 pm

Re: advanced nodes

Thu Nov 17, 2016 8:22 am

great ! ;)
damstraversaz
 
Posts: 162
Joined: Tue Aug 26, 2014 11:22 am

Re: advanced nodes

Tue Apr 09, 2019 10:44 am

The DJ software "Traktor" has a function called "key-mappings", like MIDI-mapping, only with the regular QWERTY keyboard. Id LOVE to see this in this software as well..!


Hello, I know this is an old discussion but I want to point that the keyboard mapping would be very usefull.
If it is not feasible, at least changing shortcuts in preferences would be nice...

I use a mac laptop with Italian keyboard and I need to switch to english/USA keyboard every time I need to perform the playlist to go forward and backward through the scenes and it is quite annoying.

Thank-you!

Daniele
lodevalm
 
Posts: 2
Joined: Tue Mar 19, 2019 11:50 am

Re: advanced nodes

Tue Apr 09, 2019 2:24 pm

Sorry about that, but why not use MIDI for the Playlist? That's really how it's designed to function best...

I've tried to design things such that you wouldn't need to use the keyboard during a performance, just a MIDI controller.
Eric
Site Admin
 
Posts: 2793
Joined: Wed Apr 09, 2014 9:28 pm

Return to Feature Requests

© 2020 Color & Music, LLC • This web site is mobile-friendly