As the Modularity section already described it, CoGe uses Quartz Composer heavily for its modular ecosystem. In this section you'll find the module-specific input types with some notes. For a basic overview about how to create a Quartz Composer module for CoGe with published inputs please read this tutorial: https://imimot.com/blog/create-a-simple-effect-for-coge-with-quartz-composer-part-1-rotation/
Note: if you installing Quartz Composer modules while CoGe is running, the new modules won't be listed until you click on Refresh Module Lists in the Interface menu.
When you publish an input from a Quartz Composer composition, it will appear in CoGe as a standard UI element - depends on the type. Types not listed here won't be appear on CoGe's interface.
Each of the module types have some special named input for getting special values from CoGe if needed, but almost all modules types have required inputs or outputs as well. Special inputs and outputs always needs to be ported from Quartz Composer by using those special names, listed below.
audioAnalysis: optional Structure type input. Sends the bands of CoGe's Audio Analysis as a keyed structure. Available for Quartz Compositions, Players and for Control modules.
You can also find this special names in Quartz Composer files inside your CoGe folder's modules/templates folder.
inputImage: required Image type input, CoGe will send the current frame to the effect thru this input port.
inputImages: optional Image type input. If exists in a module, CoGe will create a Matrix/Radio Button on its interface populated with the available layer sources (ClipSynths, VideoInputs, etc.)
fontName: optional String type input. If exists in a module, CoGe will create a Popup menu on its interface populated with the available fonts with font-preview if that is enabled in Preferences->Behaviour. Best use with the Image With String Quartz Composer patch.
currentBeat: optional Number type input. CoGe send values between 0-3 thru this port, represents the current beat from CoGe's BPM Clock window. Won't create anything on CoGe's interface.
measurePosition: optional Number type input. CoGe send values between 0-1 thru this port, represents the current bar (a bar is 4 beats) position from CoGe's BPM Clock window. Won't create anything on CoGe's interface.
bpm: optional Number type input. CoGe sends the current BPM from CoGe's BPM Clock window. Won't create anything on CoGe's interface.
pixelsWide: optional Number type input. CoGe sends the rendering width thru this port, in pixels. Won't create anything on CoGe's interface.
pixelsHigh: optional Number type input. CoGe sends the rendering height thru this port, in pixels. Won't create anything on CoGe's interface.
To install modules, download the .zip, unzip it, and copy the folder to CoGe/modules/player or effect or control or mixer folder, depends on the type of the module.
Some modules needs to 3rd party Quartz Composer plugins to be installed.
CoGe 1.6 adds playback support for Vuo (https://vuo.org) Compositions. You can drag and drop Vuo files to Media Slots like QC Compositions, but there are some restrictions/defects yet:
Compositions needs to conform to the Vuo Image Generator protocol Since Vuo Compositions needs some time to be initiated, it is possible they will block rendering for a couple of seconds. Currently the following input types are supported:
fontName: generates a font-selector popup button in CoGe's interface
CoGe 1.6.4 added support for using Vuo Compositions - that conforms to the Vuo Image Filter protocol - as effects. Just like with Quartz Composer effects, Vuo effect should be copied to your CoGe/modules/effect folder, into any subdirectory.
More info about Vuo Image Filters: https://imimot.com/blog/vuo-using-protocols-pt-2/
ISF - Interactive Shader Format - is a file format used to describe GLSL shaders for use in interactive applications, originally developer by our friends at VIDVOX. It can be used to create image filters or generative video sources, as well as transitions.
You can find more info about the technology - and also downloadable filters and generators - at https://www.interactiveshaderformat.com.
point2Dtype input named as
center, then CoGe will send normalised screen coordinates instead of the raw x-Y values
audioFFTtypes are not yet supported
CoGe supports both FreeFrame and FreeFrameGL effects. Generators are not yet supported.
Still stuck? How can we help?