Introduction to the XVR technology: an overview Franco Tecchia franco@sssup.it
VR installations can be complex systems • Integration is hard: many aspects to tackle, Integration is hard: many aspects to tackle, many subtle many subtle details easy to overlook details easy to overlook 10/17/06 2
The complexity is intrinsic Haptic Real-Time Interaction Network Graphics communication VR App Positional Physics sound Engine Collision Detection 10/17/06 3
Writing VR applications is an hard task • Often require good C++ skill and a deep knowledge of Often require good C++ skill and a deep knowledge of several HW technologies (video/audio/haptic) several HW technologies (video/audio/haptic) Plenty of tools available, but mixing them is no trivial. Plenty of tools available, but mixing them is no trivial. • Also, Hi-performance tools and libraries need to be Also, Hi-performance tools and libraries need to be properly handled (otherwise performances might suffer) properly handled (otherwise performances might suffer) • Multidisciplinary: Team-work is a necessity Multidisciplinary: Team-work is a necessity 10/17/06 4
3D @ PERCRO 10/17/06 5
XVR: An IDE for VR applications 10/17/06 6
What is XVR • A fully integrated development environment A fully integrated development environment • JAVA-like programming language (but VR-oriented) JAVA-like programming language (but VR-oriented) • Using precompiled byte code (like JAVA) Using precompiled byte code (like JAVA) • The IDE integrates a very fast compiler The IDE integrates a very fast compiler • The virtual machine is an ActiveX component The virtual machine is an ActiveX component • Applications can be embedded inside web pages Applications can be embedded inside web pages • Data exchange with JavaScript, VBScript, Flash etc Data exchange with JavaScript, VBScript, Flash etc 10/17/06 7
Why to use a scripting language for VR? Because C++ is not always needed Because C++ is not always needed • • C++ is very powerful and flexible, but also very generic C++ is very powerful and flexible, but also very generic • Development environment hard to install and maintain Development environment hard to install and maintain • Mixing, linking, wrapping up can easily become a Mixing, linking, wrapping up can easily become a nightmare nightmare • Sharing code is hard (includes/dependencies) Sharing code is hard (includes/dependencies) 10/17/06 8
XVR Workflow Dedicated scripting Output language Binary ByteCode Interpreter Compiler (Virtual Machine) 10/17/06 9
Why was the project started? (2001) • Bringing advanced 3D applications on the web Bringing advanced 3D applications on the web • High-performance VR software inside a web browser High-performance VR software inside a web browser • Not a designer tool, but a programmer tool Not a designer tool, but a programmer tool Advanced functionalities Advanced functionalities • • Lot of flexibility Lot of flexibility 10/17/06 10
A WEB-enabled technology… 10/17/06 11
…controlling VR installations 10/17/06 12
3D graphics for Cultural Heritage 10/17/06 13
3D graphics for motion-based Simulators 10/17/06 14
Industrial Applications 10/17/06 15
Co-located Manipulation of CAD data 10/17/06 16
Hi-quality Virtual Environments Rendering 10/17/06 17
Vertex and Fragment Shaders 10/17/06 18
Real-Time Medical Imaging 10/17/06 19
Advanced VR Installations 10/17/06 20
XVR Network Renderer Screen Sc reen Screen CRT project or CRT project or CRT projec t or VRlib Servers Et hernet VRlib Client 10/17/06 21
XVR Network Renderer 10/17/06 22
XVR Network Renderer 10/17/06 23
Installation example 10/17/06 24
XVR Network Renderer (CAVE) 10/17/06 25
Augmented Reality 10/17/06 26
AR - Assistant 10/17/06 27
Recommend
More recommend