GEM ONLINE DOCUMENTATION CHAPTER 7: TODO


  This is a list of future improvements and changes.
No importance should be given to the order...it is just
when I thought of things.
    - Mark D.

---------------------------- TODO -----------------------------

OBJECTS
-------

triangle_fan
stereoscopic display
6 DOF trackers (Ascension flock of birds) and pinch gloves
NURBS
Alias/Wavefront file data
    - articulation hierarchies in Wavefront's Kinemation
    - read Preview's .mov files (an ascii list of x, y, and/or z values)
	- write my own A/W parser
"analog" image generation (this is a request from Vibeke)
    "The equivalent of a waveform generator (sin, cos, ramp, pulse, etc)
    that can be used for a range of things, including low frequency control
    of colors, position or objects, etc as well as for generating complex
    lissajous patterns such as low frequency rasters. They should be able to
    be multiplied together, synchronized, filtered and modulated by other
    waveforms in both position, color and brightness. Sort of like the way I
    used to make animation with analog music synthesizers. It should be able
    to be input into a video image modulation object, so that multiples of
    ntsc video frequencies can create synthetic moving patterns. With that
    approach in the past, I would display moving, tuned lissajous patterns
    on an oscilloscope, rescan it with a video camera and then input the
    video into a video synthesizer. Then some of the control signals used in
    creating the lissajous pattern and movement would be used to further
    modulate the video signal in the video synthesizer. With GEM and PD, we
    can combine the best of analog audio (for pictures as well as audio),
    video synthesizers, and digital 2 and 3-D graphics."
particle systems with defined motion paths
    - this can be accomplished by having a motion object which accepts a
    	path
non-cartesian coordinate tools
morphing between alias/wavefront models
    - assume same number of points in each model

PIXES
-----
pix_video for NT
motion and image analysis
movie objects
crop for all pix objects
    - like dimen and offset for pix_video
some way to fragment an image so that it can be used as multiple
    texture maps (hopefully arbitrary shapes, but possibly only rectangular)
pix_nonlinearfilter
pix_histogram
pix_erosion
pix_dilation
pix_medianfilter
pix_lowpass
pix_highpass
video external keyer
    - three inputs - the matte and two image inputs
increased control of the Threshold object.
    - upper and lower levels adjustable
read in JPEG, SGI, and MPEG images


OPENGL
------
be able to switch between single and double buffering on the fly
have multiple graphics windows
be able to use multiple pipes (MCO)
try out glMatrixMode(GL_TEXTURE) to deal with nonstandard texture mapping
render to a pixblock (use pbuffers or offscreen renderer)
multipass rendering

GENERAL
-------
allow mouse input
figure out how to find GEM for external objects
    - instead of setting LD_LIBARY_PATH on SGI
