> I need to display the (3D) results of some computations, and I chose
> soya as the 3D engine because of its simplicity. However, I need to
> render two worlds (each with its own camera) in the same window, i.e,
> the 3D world with the texture on the left, and the wireframe for that
> world on the right (the idea is to be able to explore both worlds
> simultaneously - but it could be also thought as a multiplayer game,
> half the screen for player one, the other half for player two)
> 
> Is there any way to do this in soya? (Ideally, I would have three
> 'worlds': the left one, the right one, and one that contains the other
> two for rendering general messages (fps, location, etc) ). I think one
> solution could be to render the first two worlds to a texture instead
> of the screen, and then apply those textures to Faces in the main
> world, but i fear it will be very slow, and more important, I have no
> idea how to do that in Soya.
> 
> Any suggestion?

You can do it :

 * create several cameras

 * use camera.set_viewport to define the viewport

 * use the widget system (from soya.widget) to create a
soya.widget.Group that you'll use as root widget, and then add the 2
camera in the group

 * you may need to do "camera.partial = 1" for the second camera, to
avoid clearing twice the background (and erasing the result of the first
camera)

Jiba

Reply via email to