Dear Carsten, dear all,
first, thank you for your fast reply.

>> [implementing headtracking]
> what does your setup look like, that is do you have an HMD, a (large)
> single screen, or a CAVE-like environment?

I'll provide some background information: We are developing a
cooperative visualisation tool, which is currently focused on desktop
rendering. ("We" are at the Regional Computing Centre of the University
of Cologne)

This desktop tool should be enabled for VR-installations in general. But
the first step is a single screen (rear-projection, two projectors,
polarizing filters).
Currently we are using OpenSG 1.8. Using 2.0 is desired but not actually
planned.

> What do you specifically want to know about the ProjectionCameraDeco?
> Basically it works by defining a projection surface in the coordinate
> system of the decorated camera and the user position relative to the
> decorated camera. So data from your headtracker influences the user,
> while to navigate around the scene you'd modify the camera's beacon.

We have implemented stereo projection using
ShearedStereoCameraDecorator-objects decorating the camera. Which works
as expected. Reading further, we came across this directions
>http://www.opensg.org/htdocs/doc-1.8/PageSystemWindow.html#PageSystemWindowCameraDecoratorsStereoProjection
In theory it is obvious, what needs to be done.
We studied
>http://www.opensg.org/htdocs/doc-1.8/classosg_1_1ProjectionCameraDecorator.html
and could not distil the relevant information:

1) According to the description the corners of the projection screen
have to be set. Which function needs to be used to to so? Which
coordinate system/units have to be used?

2) From the tracking system we obtain coordinates of the user's eyes in
mm from an arbitrary origin.

This has to be passed to the system in coordinates relatively to the
camera. So there has to be a node, which is a child of the
camera-beacon. This is transformed(translated/rotated) corresponding to
the position of the tracked user to the centre of the screen?

There are private functions which seem connected to this (e.g. NodePtr
&getUser(void) ) but I do not see how the actual implementation should
be done, i.e. how and which functions need to be utilised.


Many thanks in advance for your time and my apologies. I am still not
really familiar with the OpenSG, so please bear with my potentially
stupid questions.

regards,
Martin Wewior


------------------------------------------------------------------------------
_______________________________________________
Opensg-users mailing list
Opensg-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/opensg-users

Reply via email to