Gabriel Maldonado writes:
Two questions about GEM.
- is it possible to enable/disable rendering of some object chains
selectively, in order to economize CPU time? I ask this because some geos could be visible at a certain moment, while other could be visible in other moments. I'd like rendering time to be totally under the user control, because CPU and DSP acceleration resources are obviously limited. Sending message 0 and 1 to "gemhead" object helps? What about init gemhead with an argument different from 1 (for example "gemhead 20" that is used in some example). Is switch~ object also useful in this case?
Yes, you are right, sending a "0" stops the rendering chain and therefore saves CPU cycles. Turn on again with "1".
switch~ doesn't help.
The init argument of a gemhead tells the system when the chain should be rendered. The default is 50, so when you have a "gemhead 20", it is rendered before all other default gemheads.
This is needed if you have objects with alpha channels for example, because the system has to draw all objects in the back, before it can draw an object in front correctly (transparent).
Same with light. The lights should always be "drawn" before objects are drawn, because the objects need to know what kind of light there is.
As GEM uses OpenGL it helps if you know the concepts of OpenGL and its state machine.
- Is it possible (or will it be possible) to record GEM video rendering
to AVI/mpeg (or even other video formats) files on the hard disk? This would be great for further video processing purposes.
I have started to experiment with this, but only for Linux, and I couldn't come up with a solution which didn't affect the performance too badly. (I didn't try too hard either).
I'd like to try it again, but it seems that I just can't find the time to do it.
Guenter