I'm looking for software that will allow me to generate video content and export it for use within Resolume. I'd prefer that said software could facilitate tailored video-art experiences independent of Resolume as well. Having glanced over its features and read some key sections of the user guide, Magic seems to fit the bill. Before I delve too deeply, however, I was hoping you folks could answer a few questions:
1) What options exist for automating modules' parameters? I see MIDI and audio can be used, but what if I want to automate a parameter using a time-based function (e.g. 'sin t')?
2) As a software developer extensibility is a big plus for me! It looks like I can make use of my coding ability via the GLSL module, developing FFGL plugins, and developing MDK modules. Am I overlooking anything?
3) When developing for Magic what OpenGL version is used? Are any deprecated/removed APIs or extensions present (e.g. EXT_Framebuffer_object)?
Thank you very much for your time!
Is Magic right for me?
Re: Is Magic right for me?
Yes, Magic is definitely right for you
.
Seriously though. To answer your questions,
1) Check out the "modifier" section of the User's Guide: https://magicmusicvisuals.com/downloads ... oModifiers. There are a few oscillators (including Sine), and for even more advanced control, the Expression modifier allows you to create mathematical and logical expressions. Also check out this tutorial: viewtopic.php?f=3&t=274
2) In addition to what you mentioned, Magic supports the Interactive Shader Format, which adds a lot of functionality to GLSL: https://www.interactiveshaderformat.com/
3) Magic is designed to be compatible back to OpenGL 2.1, mainly because of FFGL. Out of curiosity, why does this matter to you?
Overall, I strongly recommend that you download the free Demo and play around before purchasing to make sure you like everything
.
Seriously though. To answer your questions,
1) Check out the "modifier" section of the User's Guide: https://magicmusicvisuals.com/downloads ... oModifiers. There are a few oscillators (including Sine), and for even more advanced control, the Expression modifier allows you to create mathematical and logical expressions. Also check out this tutorial: viewtopic.php?f=3&t=274
2) In addition to what you mentioned, Magic supports the Interactive Shader Format, which adds a lot of functionality to GLSL: https://www.interactiveshaderformat.com/
3) Magic is designed to be compatible back to OpenGL 2.1, mainly because of FFGL. Out of curiosity, why does this matter to you?
Overall, I strongly recommend that you download the free Demo and play around before purchasing to make sure you like everything
Re: Is Magic right for me?
Excellent! The linked tutorial is quite helpful - it details many of the nuances I was having trouble ironing out mentally.
Regarding my curiosity about the OpenGL version supported: I've done several personal projects using OpenGL 3.0+, so that's my preferred terrain. If I like Magic I'd definitely be trying my hand at developing using the MDK, and my gut tells me that will require a fair number of OpenGL calls... am I correct in reading your response as "there is legacy support to allow FFGL integration, but developing using more recent versions isn't much of a headache"?
Regarding my curiosity about the OpenGL version supported: I've done several personal projects using OpenGL 3.0+, so that's my preferred terrain. If I like Magic I'd definitely be trying my hand at developing using the MDK, and my gut tells me that will require a fair number of OpenGL calls... am I correct in reading your response as "there is legacy support to allow FFGL integration, but developing using more recent versions isn't much of a headache"?
Re: Is Magic right for me?
Yes you are correct
. But if you look at the MagicModule.h file in the MDK, you'll see that there isn't anything particularly "OpenGL"-y about it. The MDK does provide some convenience OpenGL information such as the size of the current viewport, but other than that, you are free to do as you want with whatever OpenGL functions you want. If you want full information about the OpenGL state, you can always query it, although there is a bit of a performance penalty.
The most important thing is that if you modify any OpenGL state, you have to return it to the way it was when you are done. The ColorRGB_example.cpp file shows an example of this -- pushing an attribute onto the stack, then popping it afterwards. Otherwise you will interfere with the other modules.
The most important thing is that if you modify any OpenGL state, you have to return it to the way it was when you are done. The ColorRGB_example.cpp file shows an example of this -- pushing an attribute onto the stack, then popping it afterwards. Otherwise you will interfere with the other modules.
Re: Is Magic right for me?
Not too different from restoring the OpenGL state when developing FFGL plugins, then - totally workable.
In truth this is more or less me trying to find something Milkdrop-esque, but more modern/controllable. It seems perfect. Between the increase and expression modifiers and the fact that rendering isn't done in realtime - a failing in Resolume that has always perplexed me - I fail to see any serious shortcomings... I'll definitely be taking Magic out for a spin. Thanks for the help, Eric!
In truth this is more or less me trying to find something Milkdrop-esque, but more modern/controllable. It seems perfect. Between the increase and expression modifiers and the fact that rendering isn't done in realtime - a failing in Resolume that has always perplexed me - I fail to see any serious shortcomings... I'll definitely be taking Magic out for a spin. Thanks for the help, Eric!