An Interactive and Immersive Virtual Environment - PowerPoint PPT Presentation

1 / 17
About This Presentation
Title:

An Interactive and Immersive Virtual Environment

Description:

Same code will run on a POCS. Has Javadoc documentation ... Classpath file finder. Animation sequence controller and suite of interpolators ... – PowerPoint PPT presentation

Number of Views:63
Avg rating:3.0/5.0
Slides: 18
Provided by: engineerin70
Category:

less

Transcript and Presenter's Notes

Title: An Interactive and Immersive Virtual Environment


1
The eScience Wedge
  • An Interactive and Immersive Virtual Environment
  • A guide to developing applications using the TIWI
    package and utilities

Dr Henry Gardner, Pascal Vuylsteker, David
Walsh, Rod Harris, Hugh Fisher http//escience
.anu.edu.au thewedge_at_escience.anu.edu.au
2
Overview
  • Hardware features and layout
  • The TIWI Interface
  • Classpath setup package layout
  • Building a simple application
  • Java3D scenegraph basics review
  • TIWI utilities and advanced features

3
Hardware Features
  • Stereo optic display ( basic 3D cue )
  • Dual screen ( immersion )
  • Implies 4 output buffers, 4 x rendering time (
    ?? )
  • 8 speaker digital audio ( immersion, 3D )
  • Ultrasound head tracker ( immersion )
  • and 3Dmouse ( interactivity )
  • Domino input device ( navigation, control )
  • Microphone ( interactivity )

4
Wedge Hardware Layout
Note Microphone
Headtracker and 3Dmouse controllers
not shown
IR signal
IR Emitter
Mirror
Projector
Projector
Monolith serial ports
speakers
1 2
Wedge
bondi
8
Remote/local switch
Video (x2)
IR signal
Monitors
Video line splitters
monolith
DAC/ADC DSP
IR signal
Dual 500w amplifiers
Wildcat 4210
Internet
5
The Tracked Interactive Wedge Interface
  • An API for the Wedge using Java3D
  • See http//escience.anu.edu.au/tiwi/src/tiwi.zip
  • Not the only way of programming the Wedge
  • Includes Demos and utilities
  • Easier to setup than straight Java3D
  • Same code will run on a POCS
  • Has Javadoc documentation
  • See http//ephebe.anu.edu.au/tiwi/tiwidoc/

6
(No Transcript)
7
What the Wedge class gives you
  • Class Wedge extends View
  • Creates the Virtual Universe, Locale,
    ViewPlatform, Physical Environment and Physical
    Body objects, inter alia, for you
  • Physical Environment
  • Used to setup input devices (sensors) audio
    output
  • Physical Body
  • Holds human based parameter, eg height, eye width
  • ViewPlatform
  • One per view, can be placed under arbitrarily
    complex TransformGroup tree

8
Building a TIWI Application
  • package tutorial
  • public class Cube
  • public static void main(String args)
  • new Cube(1)
  • public Cube(int size)
  • // set up graphics configuration
  • // create a wedge object

9
Building a TIWI Application
  • package tutorial
  • import javax.media.j3d.
  • import anu.escience.tiwi.
  • public class Cube
  • public static void main(String args)
  • new Cube(1)
  • public Cube(int size)
  • // set up graphics configuration
  • // create a wedge object

10
Building a TIWI Application
  • package tutorial
  • import javax.media.j3d.
  • import anu.escience.tiwi.
  • public class Cube
  • public static void main(String args)
  • new Cube(1)
  • public Cube(int size)
  • // set up graphics configuration
  • WedgeConfigTemplate wct new
    GraphicsConfigTemplate()
  • WedgeConfiguration wc new GraphicsConfiguratio
    n(wct)
  • // create a wedge object

11
Building a TIWI Application
  • package tutorial
  • import javax.media.j3d.
  • import anu.escience.tiwi.
  • public class Cube
  • public static void main(String args)
  • new Cube(1)
  • public Cube(int size)
  • // set up graphics configuration
  • WedgeConfigTemplate wct new
    GraphicsConfigTemplate()
  • WedgeConfiguration wc new GraphicsConfiguratio
    n(wct)
  • // create a wedge object
  • Wedge wedge Wedge.getWedge(wc)

12
Building a TIWI Application
  • package tutorial
  • import javax.media.j3d.
  • import anu.escience.tiwi.
  • public class Cube
  • public static void main(String args)
  • new Cube(1)
  • public Cube(int size)
  • // set up graphics configuration
  • WedgeConfigTemplate wct new
    GraphicsConfigTemplate()
  • WedgeConfiguration wc new GraphicsConfiguratio
    n(wct)
  • // create a wedge object
  • Wedge wedge Wedge.getWedge(wc)

13
Building a TIWI Application
  • package tutorial
  • import javax.media.j3d.
  • import anu.escience.tiwi.
  • public class Cube
  • public static void main(String args)
  • new Cube(1)
  • public Cube(int size)
  • // set up graphics configuration
  • WedgeConfigTemplate wct new
    GraphicsConfigTemplate()
  • WedgeConfiguration wc new GraphicsConfiguratio
    n(wct)
  • // create a wedge object
  • Wedge wedge Wedge.getWedge(wc)

14
Java3D Scene Graph
VirtualUniverse
Locale
BranchGroup
BranchGroup
Transformgroup
Transformgroup
Transformgroup
Transform3D
Box
Shape3D
Transformgroup
Transformgroup
Cone
IndexedFaceSet
BranchGroup
Shape3D
Shape3D
15
Homogeneous Coordinates and the Java3D
Transform3D class
Affine Transformations
1 0 0 0 0 1 0 0 0
0 1 0 0 0 0 1

Identity matrix, basic data contained in the
Transform3D class
T1
S1 0 0
R1 R2 R3 R4 R5 R6 R7
R8 R9
T1
T2
0 S2 0
T2
T3
0 0 S3
T3
0 0 0 1
0 0 0 1
16
Compound Transformations
  • Homogeneous coordinates allow building compound
    transformations by simple matrix multiplication
  • Matrix multiplication is associative
  • ((AB)C (A(BC))
  • But not commutative
  • (AB ! BA)
  • What does this imply?

17
Tiwi Utilities
  • Virtual head tracker
  • Built in keyboard listener
  • Simple 3D mouse cursor
  • ANU Loaded Functionality Alpha (AlfAlpha)
  • Classpath file finder
  • Animation sequence controller and suite of
    interpolators
Write a Comment
User Comments (0)
About PowerShow.com