Hi everyone,
I hope this is the right place to ask these questions.
We are currently working on a university computer graphics project. The
task is to implement a simple scene (which in our case is a pyramid and
crypt room), having the choice between using standard glut functions or
OpenSG. We gladly chose OpenSG ;)
That said, all of us have little to no knowledge of more complex C++
programming and had no experience with OpenSG before starting the task.
We worked our way through the tutorials but some questions remained
unanswered for us, which we hope to be able to solve with your help.
1) We'd like to be able to navigate the scene using the Walk Navigator.
As I understand it this navigator also checks for object intersection
and blocks movement through objects. In the documentation I saw the
possibility to set a ground and world for the navigator. Is this needed
or optional. Currently our Navigator seems to work partially - when
hovering over the ground and switching to walk, the view "snaps" back to
ground level. Two problems arise though: the navigator seems to stop
when reaching a wall (simple plane in our case), the view penetrates the
wall though, additionally the navigator gets stuck - unable to move
back. Second problem is that it happens that the view tilts to one side.
I tried to set an UpVector, but with no success. Do I need a ground
object? I seem to remember from old times with Performer that if no
ground was given a ray was cast "downward" to check for a ground?
2) Fly and Walk Navigator: When clicking left or right mouse button the
view only advanced one frame. When keeping the button down _and_ moving
the mouse, the scene moved forward. I tried to fix this by connecting
the glut idle callback to the display function. Now keeping the mouse
button pressed seems to work. Pressing and moving seems to speed up the
movement alot though. Shouldn't this be a consistent speed? What are we
doing wrong?
3) Lighting and Shadows: We are trying to light a simple room with a
couple of pillars with 2 point lights and 1 directional light.
Point light problems: The shadows cast seem to be correct mostly,
although some shadows seem to be in wrong places. Is this because point
lights do have a direction although they should be omnidirectional?
Spotlight: The Spotlight seems to correctly light the pillars, but not
the floor. The floor gets lit by the other lights correctly though, so
normals should be ok.
4) mgr->SetStatistics(): I tried to use the Statistics view I saw in a
couple of the tutorials. Setting this to true though doesn't change our
scene display. Is this because we are using a shadow viewport?
Sorry if these questions might sound a little naive, but we are out of
clues. Any help or pointers to the right direction are greatly appreciated.
If anyone has the time or interest to look at the code it is located at
our svn:
http://code.google.com/p/cg1-project-wookies
Many thanks
Markus W.
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Opensg-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensg-users