Skip to main content

one scene two ViewingPlatform, i want two visual, how to do it?

No replies
geminit2011
Offline
Joined: 2011-08-25
Points: 0

things like this,first,forgive my poor english.
i use java3d to create a scene, scene has a person(branchgroup),i have two viewingplatform.just like main view and Small window of view
simple code just like this:

Viewer viewer = new Viewer(cameraCanvas);
View view = viewer.getView();
view.setBackClipDistance(100f);
view.setSceneAntialiasingEnable(false);
view.setMinimumFrameCycleTime(30);

ViewingPlatform firstVP = new ViewingPlatform(1);
firstVP.getViewPlatformTransform().setCapability(TransformGroup.ALLOW_TRANSFORM_READ);
firstVP.getViewPlatformTransform().setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
viewer.setViewingPlatform(firstVP);

MainView is the person third_person view,just like fllow view of the person.
firstVP just like the person's eye.I place the firstVP in the person's head position.when i walk(the person Walking has magnitude).
the view display The person's head of the dough piece(3D plane).I also use Transparency where the eye close to the person in the third_person mode.
but the firstVP doesn't use this. because i want the user to see the two view ,that is clear to the scene.
I just want to Achieve a effect. mainview is Transparency when eye close to the person. the firstVP is always Transparency.
this Situation the problem is solved.
but i don't know how to set one scene has two view effect. anybody can help me.
i just found ViewerAvatar the principle are closed to this. but i don't get more message.

canvas3d has a descibe:
The basic Java 3D monoscopic rendering loop is as follows:

clear canvas
call preRender() // user-supplied method
set view
render opaque scene graph objects
call renderField(FIELD_ALL) // user-supplied method
render transparent scene graph objects
call postRender() // user-supplied method
synchronize and swap buffers
call postSwap() // user-supplied method

if mainview didn't render transparent scene graph objects , thing also resolve.but i can'nt control it.
does it has any good way to resolve this problem??help me ? forgive my poor engligh!