Development of a DWARF-based display component for 3D scences on - - PowerPoint PPT Presentation

development of a dwarf based display component for 3d
SMART_READER_LITE
LIVE PREVIEW

Development of a DWARF-based display component for 3D scences on - - PowerPoint PPT Presentation

Development of a DWARF-based display component for 3D scences on the iPAQ - Systementwicklungsprojekt - Marco Feuerstein Lehrstuhl fr Angewandte Softwaretechnik Institut fr Informatik Technische Universitt Mnchen feuerste@in.tum.de


slide-1
SLIDE 1

November 12, 2002

Marco Feuerstein Lehrstuhl für Angewandte Softwaretechnik Institut für Informatik Technische Universität München feuerste@in.tum.de

Development of a DWARF-based display component for 3D scences on the iPAQ

  • Systementwicklungsprojekt -
slide-2
SLIDE 2

November 12, 2002 Marco Feuerstein 2

Summary

  • Setup a development environment for the iPAQ
  • Find a suitable VRML browser
  • Port it to the iPAQ
  • Write a VRML Service, which connects the VRML

browser to the DWARF Middleware ‡DWARF Service for displaying 3D graphics on the IPAQ

slide-3
SLIDE 3

November 12, 2002 Marco Feuerstein 3

Outline

  • Introduction – The SHEEP System
  • Requirements Analysis
  • Related Work

– VRML – GCJ

  • System Design
  • Implementation
  • Problems with the iPAQ
  • Conclusion
slide-4
SLIDE 4

November 12, 2002 Marco Feuerstein 4

Introduction - The SHEEP system

  • SHEEP: The Shared Environment

Entertainment Pasture

  • The SHEEP system is a multimodal

multiplayer game

  • Game is centered around a table

with a beamer-projected landscape

  • Players use intuitive interaction

technologies (beamer, head- mounted display, (touch) screen, speech, gesture)

  • Based on DWARF
  • Interaction through

DWARF services (the leaves of the tree)

slide-5
SLIDE 5

November 12, 2002 Marco Feuerstein 5

Requirements Analysis

  • Functional requirements:

– Display of graphics in 3D – Synchronization of changes in a displayed scene with the environment

  • Nonfunctional requirements:

– Velocity and efficiency of the system ‡ Short waiting time for users – Convenient and easy manipulation of displayed objects ‡ Adequate User Interface

  • Pseudo requirements:

– Hardware: Compaq iPAQ, StrongARM processor

  • No FPU ‡ Floating point emulator
  • No 3D acceleration

– Operating system: Linux – DWARF: Connection to the DWARF middleware

slide-6
SLIDE 6

November 12, 2002 Marco Feuerstein 6

Related Work - VRML

  • VRML: Virtual Reality Modeling Language

– Language for describing 3D image sequences – VRML browsers or viewers needed to view VRML scenes

  • EAI: External Authoring Interface

– Annex to VRML – API in Java – dynamic, interactive communication with VRML browser ‡ manipulation of VRML scenes VRML Browser Java Virtual Machine Java Applet / Application EAI Scene graph

slide-7
SLIDE 7

November 12, 2002 Marco Feuerstein 7

Related Work - Browser Review

‡ FreeWRL best choice

Ok Yes Basic functionality Linux/Unix, Mac OS/X FreeWRL Bad No Basic functionality All OpenVRML (Lookat) Very bad Yes Very bad All VRwave Performance EAI Support VRML Conformance Platform VRML Browser

slide-8
SLIDE 8

November 12, 2002 Marco Feuerstein 8

Related Work - GCJ

  • GCJ - The GNU Compiler for Javatm
  • First public release: 1999
  • GCJ is capable of compiling:

– Java bytecode to native machine code – Java source code directly to native machine code

  • Linking of compiled applications with the GCJ runtime,

libgcj, which provides

– the core class libraries – a garbage collector – and a bytecode interpreter

  • Possibility to invoke GCJ compiled Java code from a C++

application

  • GCJ can be configured as a cross-compiler
slide-9
SLIDE 9

November 12, 2002 Marco Feuerstein 9

System Design

VRML View gets

– Position/

  • rientation data of
  • bjects as

DWARF events (from tracked items) – Method calls to add/remove

  • bjects (from UI

Controller)

slide-10
SLIDE 10

November 12, 2002 Marco Feuerstein 10

Implementation - The How

Goal: Connect the VRML View to FreeWRL ‡ FreeWRL’s EAI in Java ‡ Java slow, native code more performant ‡ Native compilation using GCJ ‡ Native compilation on iPAQ slow ‡ Cross-compilation using GCJ

slide-11
SLIDE 11

November 12, 2002 Marco Feuerstein 11

Implementation – The Details

slide-12
SLIDE 12

November 12, 2002 Marco Feuerstein 12

Problems with the iPAQ

  • Limited number of packages for Familiar Linux

‡ Installation of Intimate (Debian) Linux

  • Limited amount of disk space

‡ PCMCIA hard disk, NFS

  • Kernel bugs
  • Adjustments for compilation of FreeWRL
  • Debugging of the build process for the cross-

compiler for ARM (‡HOWTO)

  • …And: When I got the iPAQ, someone has

changed the password, so I had to reinstall everything from SCRATCH…

slide-13
SLIDE 13

November 12, 2002 Marco Feuerstein 13

Problems with the iPAQ

slide-14
SLIDE 14

November 12, 2002 Marco Feuerstein 14

Conclusion

  • Future work for Adapter/Manipulator:

– Refactoring of Manipulator – Integration of XML Parser/Configuration – Implementation of Eventsender

  • iPAQ powerful enough for simple, but not for

graphics-intensive applications ‡ Next generation iPAQ!

slide-15
SLIDE 15

November 12, 2002 Marco Feuerstein 15

End

  • Thank you for your attention!
  • Many thanks to everyone who was supporting my

work (three little DWARFs, Franz, Ming-Ju J)

  • Any questions?