home changes contents help options

each render cycle, the render()-method of all objects within the gemlist has to be called. therefore, the gemhead emits a render-trigger (a specially crafted message) which is sent to the connected objects, which in turn send the same message out again.

this works pretty well and it allows to dynamically change the gemlist with pd's message control objects, like [spigot].

unfortunately there are problems:

immediate mode:

due to the dynamic nature of the gemlist, it cannot be compiled into a display-list, thus enforcing rendering in ''immediate mode'', which is way slower (esp. on os-X)

multiple windows:

if we have multiple openGL-contexts, we have to call the openGL-functions once for every context.

this means, that the RenderTrigger-message is sent once for each GemOutput.

i do not like this at all, as it means, that the behaviour of the patch could change by just adding another GemOutput (e.g.: i sometimes use the RenderTrigger to derive a ![bang( which controls some animation or the like)

furthermore, it would be possible to change the gemlist for different GemOutputs connected to one gemcontrol. (this could also be thought of as a feature.)

i think that the RenderTrigger-message should only be emitted once per render-cycle (bound to a gemcontrol)

ideas: