if you set up your view platform (you can get this quite easily from
the simple universe... which is what i always use) as a transform group

yuo can then move your view platform easily by applying translations

i.e.e set up a transform group (say for example objView) and then apply
translations etc. to this group.

you can also link behaviours, i.e.e mouse bahaviours,  keyboard
behaviours, etc. to this same objView to move your camera around

if you're struggling with this (i know i did!)
can i suggest that you download this tutorial which not only explains
how to do this but also gives a lot of general VR informtation , i.e.
pros and cons of having the 'camera' at ground level, head level and so
on

it also explains a lot more complicated ways to move your view platform
around the scene

the tutorial (which i think is EXCELLENT!) is on:
http://www.sdsc.edu/~nadeau/nadeau_courses.html

finally it has some java 3d examples

here is how i would get the view platform froma simpleuniverse:

//at the top somewhere (it is public so that i can
//apply translations from button action listeners in my
// frame... otherwise you could include this inside
//your main code which generates the scene:
public TransformGroup objView;   

public ViewPlatform vplat = new ViewPlatform();

// now when you are generating your scene (i.e. branch
// group ) you need to pass the viewplatform from the
// simple universe

public BranchGroup createSceneGraph(Canvas3D c, Viewer viewthingy)

// set up the objView so that you can move it
// when the scene is live
objView = new TransformGroup();    
objView.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
        objView.setCapability(TransformGroup.ALLOW_TRANSFORM_READ);

objView.addChild(vplat);
objScale.addChild(objView);
viewthingy.getView().attachViewPlatform(vplat);
        
// yuo can now move the view platform easily
// by applying translations etc. to objView
// i.e. 

Transform3D movestartpos = new Transform3D();
movestartpos.setTranslation(new Vector3d(0.0,0.0, 4.8));

objView.setTransform(movestartpos);     


// FINALLY ... remember to get the viewplatform
//from the simple universe and pass this to your
//create branchgroup method i.e.
// (where c is my canvas3d)

SimpleUniverse u = new SimpleUniverse(c);
        u.getViewingPlatform().setNominalViewingTransform();
BranchGroup scene = createSceneGraph(c,u.getViewer()); 



hope this helps

the tutorial explains more complicated things like using a view avatar!


--- Christian Petermann <[EMAIL PROTECTED]> wrote:
> I'd like to know how I could move the user position.
> That is I want to 
> create the same effect that if it was a camera that
> is moving and not the 
> objets in the scene. How can I do that?
> It looks like a need the View attached to the scene
> graph, but I don't 
> see how I can change the transform to move the view.
> 
> Does anyone know how to do that or has any idea on
> how to proceed?
> 
> Chris.
> =====================================================================
> To subscribe/unsubscribe, send mail to
> [EMAIL PROTECTED]
> Java 3D Home Page:
> http://java.sun.com/products/java-media/3D/
> 

_________________________________________________________
Do You Yahoo!?
Free instant messaging and more at http://messenger.yahoo.com
=====================================================================
To subscribe/unsubscribe, send mail to [EMAIL PROTECTED]
Java 3D Home Page: http://java.sun.com/products/java-media/3D/

Reply via email to