i think the projector should be the master, the camera the slave, because
its possible to have cameras that do not render, as when the canvas is being
replaced, but not possible for a render canvas to have no camera source.
what if we made projector generic for video and the camera provided a video
source? then the theora video class could be passed to the projector, or a
camera, or any other kind of video.

so for an example canvas=soy.widgets.Projector(soy.Window,soy.bodies.Camera(
soy.Scene)) or canvas=soy.widgets.Projector(soy.Window,soy.video.Video('
video.ogg')) for video.

On 4/4/07, Arc Riley <[EMAIL PROTECTED]> wrote:

I'm working to get the camera+projector issue sorted out.

For those who are not aware of this, the camera is the "object" in 3d that
observes the scene, whereas the projector (for lack of a better term) is
the
2d canvas within the window which displays what the camera can see.

The question is:

Should you pass the camera as an initial argument to projector, or
Should you pass the project as an initial argument to the camera, or
Should they continue to be the same object?

The three options look like this:

win = soy.Window('Example', size=(640,480))
sce = soy.Scene()
cam = soy.Camera(sce)
pro = soy.widgets.projector(win, cam)

OR

win = soy.Window('Example', size=(640,480))
pro = soy.widgets.projector(window)
sce = soy.Scene()
cam = soy.Camera(scene, pro)

OR (as it currently is in the code I'm looking at)

win = soy.Window('Example', size=(640,480))
sce = soy.Scene()
cam = soy.Camera(win, sce)


I don't like the current method because it doesn't keep a clean separation
between 3d-land and widget-land - I really like the concept that all
widgets
inherit the generic widget class and have predictable, standard methods.

Combining them also prevents us from having a .position attribute on each,
the
camera a 3d position and the widget a 2d position.  This isn't the only
"common attribute" that gets munged in the process either.

I also like the concept of the "projector" because it makes rendering a 3d
scene nearly identical, on the widget end of things, to rendering a video.
_______________________________________________
PySoy-Dev mailing list
[email protected]
http://www.pysoy.org/mailman/listinfo/pysoy-dev

_______________________________________________
PySoy-Dev mailing list
[email protected]
http://www.pysoy.org/mailman/listinfo/pysoy-dev

Reply via email to