3D-Visualisierung von bewegten Objekten. Vortrag in Anwendungen I

Ähnliche Dokumente
3D-Visualisierung von bewegten Objekten

11. Computergrafik. Ludwig-Maximilians-Universität München Medieninformatik, Prof. Butz Digitale Medien WS 2006/

Überblick. Der X3D Standard Überblick der Technologien Profile X3D Grundgerüst. Objekte Formen Materialien

Computergrafik SS 2014 Oliver Vornberger. Kapitel 21: 3D im Web

Ludwig-Maximilians-Universität München Prof. Hußmann Medientechnik 10-70

VRML + HTML + Scripting/Java

Ereignisse sind ihrerseits als Felder von Knoten definiert.

3D-Formate im Web. Teil 1: VRML. Von Lars Hillebrandt,

Einführung in VRML. Was ist VRML? Paul Scheremet Ratschläge: : Diego Iglesias. Language und wird wermel gesprochen.

Szenengraphen. Codruţa Cosma. Universität Ulm Sommersemester 2005

Ereignisse sind ihrerseits als Felder von Knoten definiert.

Definition eigener Knotentypen: Prototypen

Dreidimensionales Höhleninformationssystem

Vor-Geschichte von VRML

ProPra WS 2008/09: LEGO-Sculptor

VRML. Kapitel Geschichte

11. Computergrafik und Virtuelle Realität

VRML-Kurs Teil 2. Jeder VRML-Knoten kann 0 oder mehr Felder enthalten. Die Felder haben eine festgelegte Semantik, Typisierung und Default-Werte.

Virtuelle Realität und Simulation - Übung 2

11. Computergrafik und Virtuelle Realität

11. Computergrafik und Virtuelle Realität

Sensor nodes. Types of sensor nodes (using VRML)

GDV. Übung 1. R. Dörner Uni Frankfurt / Fraunhofer-AGC. Folie 1 Vers. 26-Apr-00

Virtuelle Realität und Simulation - Übung 1

Virtuelle Realität und Simulation - Übung 1

Realtime 3D Computer Graphics Virtual Reality

Literatur: Alan Watt: 3D Computergrafik, 3. Auflage, Pearson Studium Ludwig-Maximilians-Universität München Prof. Hußmann Digitale Medien 10-33

VRML. HTWM Hochschule für Technik und Wirtschaft Mittweida University of applied Sciences

VRML / Virtual Reality Modelling Language

X3D. Im Rahmen des Lehrfaches Virtual Reality Prof. Dr.-Ing. Brunthaler, Stefan [TH Wildau]

Einführung in VRML. Praktikum VRML und Java3D: C. Seiler Uni Frankfurt / Fraunhofer-AGC

GDV Übungen: VRML und Java3D: Einführung in VRML. C. Seiler Uni Frankfurt / Fraunhofer-AGC. Diese Folien basieren auf folgenden Kursen:

VR ML. Oliver Vornberger, Universität Osnabrück

VRML- (und X3D-) Umfang: 3D-Grafik + Dynamik (Animation) + Interaktion + Klang + Internetfähigkeit (VRML-Browser als Plugin von Webbrowsern)

Einführung - Was ist Java3D?

Einführung in VRML. GDV Übungen: VRML und Java3D. Aussprache VRML. Was ist VRML? Was ist VRML? VRML: Features (Geometrien) Beispiel einer VRML Szene

VRML Tools. Markus Czok, Carsten Rohde

Modellierung virtueller 3D-Welten für das Internet

Präsentationen in 3D (Großer Beleg)

Virtuelle Realität. G. Zachmann Clausthal University, Germany cg.in.tu-clausthal.de

Warum X3D als ISO Standard?

Virtuelle Darstellung eines 3D-Modells in VRML

Einführung - Was ist Java3D?

INHALTSVERZEICHNIS. Vorwort 1. Einleitung 5. Kapitel 1 X3D und XML 11. Kapitel 2 Der Baukasten X3D 27

Virtual Reality: Modellierung virtueller Welten

Computer-Graphik II Scenegraphs / VRML

Computer-Graphik II Scenegraphs / VRML

Virtuelle Realität X3D / VRML

3D-Druckformate und COLLADA

Klausur Physik 1 (GPH1) am

Programmieren in Java -Eingangstest-

Media Transformation I Theater als VR-Erfahrung

3-D-Visualisierung der SOLA-Stafette im Internet

Virtuelle Realität X3D / VRML

14. Java Klassen. Klassen (Java) vs. Records (Pascal) Klassen - Konzeptuell. Klassen - Technisch

Das Interface-Konzept am Beispiel der Sprache Java

Mathematik Seminar WS 2003: Simulation und Bildanalyse mit Java. Software-Architektur basierend auf dem Plug-in-Konzept

XML-basierte 3D-Komponenten

4. 3. Grafik-Programmierung

14. Java Klassen. Klassen, Typen, Objekte, Deklaration, Instanzierung, Konstruktoren, statische Felder und Methoden, Datenkapselung

Semistrukturierte Daten

V by WBR1/BFH-TI 2011 by MOU2/BFH-TI

Java 3D. Linien, Flächen und Objekte Axel Bartsch, Okt. 2002

Einführung in X3D. Ein kurzes Tutorial. Jan-Martin Kirves

Handbuch für die Erweiterbarkeit

Datenaustausch mit JSON

Browserbasiertes, kollaboratives Whiteboard

Aufbau interaktiver 3D-Engines

Erweiterte Interaktion mit Trees und Charts in APEX

1 Modellierung einer Uhr

3D-Welten - Technik und Einsatzszenarien

3D webservices - where do we stand? Emmanuel Belo emmanuel.belo@camptocamp.com

Newtek Lightwave Grundlagen der 3D-Vektorgrafik

Überblick. Klassen Optionale Typen DOM. Optionale Parameter Klassen. Einführung. 2 Motivation 3 Werkzeuge 4 Demonstration 5 Dart

Studienarbeit. Interaktiv begehbarer Lageplan in VRML. Möglichkeiten von VRML, Modellierung eines Gebäudes in VRML. Frank Meier Universität Freiburg

Objektorientierte Programmierung

Vorlesung Programmieren

Swetlana Stickhof. Universität Heidelberg

12. Java Klassen. Klassen - Technisch. Beispiel: Erdbebendaten. Klassen - Konzeptuell

Computergrafik SS 2016

Werkzeugunterstützung für UML Profiles. Verteidigung des Großen Belegs Andreas Pleuß

EAD II Übung 5. Graphische Benutzungsoberfläche mit BlueJ

- dynamisches Laden -

Conservative Volumetric Visibility with Occluder Fusion

Javakurs FSS Lehrstuhl Stuckenschmidt. Tag 3 - Objektorientierung

Objektorientierte graphische Programmierung

Szenengraph-Architekturen im Kontext von VR- und AR-Anwendungen

Vorkurs Informatik WiSe 15/16

Scalable Vector Graphics (SVG)

14. Java Objektorientierung. Klassen, Vererbung, Kapselung

Multimedia-Labor WS1999/2000. Andreas Junghans, Jürgen Baier

14. Java Objektorientierung

14. Java Objektorientierung

Aufgabenvorstellung Phase 2

e i n e r m i t V R M L

Virtueller Campus. Virtueller Campus Horw mit interaktiver Steuerung. HowTo: Scripting-Komponente in Betrieb nehmen

Computergrafik Universität Osnabrück, Henning Wenke,

Transkript:

3D-Visualisierung von bewegten Objekten Vortrag in Anwendungen I Stephan Koops 08.06.2005

Agenda Motivation VRML Animation Logik in der 3D-Welt X3D VRML- und X3D-Viewer Editoren Mein Beitrag zum Ferienclub 2

Motivation allgemein Sachen echt 3D zu betrachten ist wesentlich schöner als nur 2D Architektur-Modelle medizinische Anwendungen persönlich mit 3D-Anwendungen beschäftigen 3

Übersicht 3D-Produkte standardisiert: VRML / X3D java3d proprietär: Anfy 3D12 Shout 3D13 Cult 3D14 viewpoint 4

Agenda Motivation VRML Animation Logik in der 3D-Welt X3D VRML- und X3D-Viewer Editoren Mein Beitrag zum Ferienclub 5

Geschichte 3D im Web 1994-1995: VRML 1.0 1995-1996 : VRML 2.0 1997: VRML 2.0 wird als VRML97 ISO-Standard 1997: Gründung des VRML-Konsortiums 1999: Umbenennung in Web3D-Konsortium 2002: X3D 6

VRML - Beispiel Einführungs-Demo 7

VRML - Beispiel Beispiel: Würfel 8

VRML - Beispiel Beispiel: Würfel #VRML V2.0 utf8 Shape { geometry Box { } appearance Appearance { material Material { diffusecolor 1.0 0.0 0.0 } } } 9

VRML - Struktur Alles zusammen im Szenegraph: Verschachtelte Knoten Knoten enspr. Objekte Datenfelder entspr. Attributen 10

VRML - Wiederverwendung Knoten können Namen bekommen, um später zu referenzieren (DEF name) weiterhin kann man sie später erneut instantiieren (USE name) Protoypen definierbar Attribute später veränderbar getrennt in Interface und Implementierung auch in anderen Dateien definierbar mit Inline kann man andere Dateien einbinden 11

VRML - geometrische Knoten sichtbarer Teil der 3D-Welt werden im Knoten Shape angeordnet die einfachen geometrischen Knoten Box: Quader Cone: Kegel Cylinder Sphere: Kugel Text... 12

VRML - geometrische Knoten die komplizierten geometrischen Knoten... ElevationGrid PointSet IndexedLineSet IndexedFaceSet Extrusion 13

VRML - Aussehen Aussehen der geometrischen Knoten: Unterknoten Appearance Material Texturen ImageTexture MovieTexture PixelTexture TextureTransform 14

VRML - Aussehen Aussehen: Unterknoten material Farben diffusecolor (Eigenfarbe) emissivecolor (Eigenleuchten) specularcolor (Farbe von Reflexionen) shininess (Reflexionsgrad) transparency (Grad der Transparenz) ambientintensity (Leuchtkraft) 15

VRML - Hintergrund Knoten BackGround Boden und Himmel jeweils Farben und Farbübergänge möglich besonders am Himmel interessant 16

VRML - Lichtquellen verschiedene Lichtquellen möglich: DirectionalLight PointLight SpotLight 17

VRML - Beobachter Beobachter: avatarsize (Größe des Beobachter) headlight (Helmlicht) speed type visibilitylimit 18

VRML - Viewpoints Viewpoint { position 0 0 10 orientation 0 0 1 0 jump FALSE description "von oben" } 19

VRML - Hello World #VRML V2.0 utf8 Group { children [ Viewpoint { description "hello, world!" orientation 0 1 0 1.57 position 6-1 0 } NavigationInfo { type [ "EXAMINE" "ANY" ] } Shape { # Weltkugel geometry Sphere { } appearance Appearance { texture ImageTexture { url [ "earth-topo.png" ] } } } # Shape #... Fortsetzung #... Fortsetzung Transform { rotation 0 1 0 1.57 translation 0-2 1.25 children [ Shape { geometry Text { string [ "Hello" "world!" ] } appearance Appearance { material Material { diffusecolor 0.1 0.5 1 } } } # Shape ] # children } # Transform ] # children } # Group 20

Agenda Motivation VRML Animation Logik in der 3D-Welt X3D VRML- und X3D-Viewer Editoren Mein Beitrag zum Ferienclub 21

Animation - Beispiel Beispiel: bewegter Würfel 22

Animation Animation besteht aus folgenden Komponenten: Sensor (auslösen von und reagieren auf Ereignisse) Routen = Verbindungen zwischen Objekten Interpolator (berechnet Zwischenwerte) (geometrisches) Objekt 23

Animation Üblicherweise veränderte Felder: translation rotation scale Kindsknoten hinzufügen oder entfernen 24

Animation - Sensoren TimeSensor: Zeitgeber TouchSensor: Berührungen mit Mauszeiger VisibilitySensor: Sichtbarkeit eines Objektes ProximitySensor: Betrachters betritt Bereich PlaneSensor: Verschiebung eines Objektes in xy CylinderSensor: Objekt um die y-achse drehen SphereSensor: Rollen eines Objektes 25

Animation - Ereignisse Ereignisse werden bei Veränderung eines Werts ausgelöst Methodenaufruf werden durch bestimmte Felder repräsentiert 26

Animation - Routen Ereignisse werden entlang der Routen verschickt von einem Datenfeld eines Objektes zu einem Datenfeld eines Objektes ROUTE Uhr.fraction_changed TO Interpolator.set_fraction 27

Animation - Interpolatoren Interpolatoren berechnen Zwischenwerte PositionInterpolator: (x, y, z) CoordinationInterpolator: (für komplexe Flächen) NormalInterpolator: (über Normalenvektoren) OrientationInterpolator (Achse mit Drehung) ColorInterpolator: (RGB-Werte) ScalarInterpolator: (einzelne Werte) 28

Animation - Interpolatoren Zwischenwerte werden aufgrund gegebener Anfangsintervalle berechnet Beispiel für Transparenz: DEF Name ScalarInterpolator { key [0.0 0.9 0.0] keyvalue [ 0.0, # undurchsichtig 1.0, # durchsichtig 0.0 # undurchsichtig ] } 29

Animation - Beispiel Beispiel: bewegter Würfel #VRML V2.0 utf8 # Animation Background { skycolor 1 1 1 } DEF Wuerfel Transform { children [ Shape { geometry Box {} appearance Appearance { material Material {} } } ] } # Fortsetzung... #... Fortsetzung DEF Uhr TimeSensor { cycleinterval 5.0 loop TRUE } DEF Interp PositionInterpolator { key [ 0.0 0.9 1.0 ] keyvalue [ 0.0-2.0 0.0, 0.0 2.0 0.0, 0.0-2.0 0.0 ] } ROUTE Uhr.fraction_changed TO Interp.set_fraction ROUTE Interp.value_changed TO Wuerfel.set_translation 30

Agenda Motivation VRML Animation Logik in der 3D-Welt X3D VRML- und X3D-Viewer Editoren Mein Beitrag zum Ferienclub 31

Logik in VRML bisherige Knoten etc. reichen für komplexe Animationen nicht aus Logik nötig 32

Logik in VRML bisherige Knoten etc. reichen für komplexe Animationen nicht aus Logik nötig Programmiersprachen JavaScript Java 33

Logik - Schnittstelle Schnittstelle zwischen VRML und Prog-Sprache Knoten vom Typ Script DEF Name Script { field SFVec3f position [1 2 3] eventin SFFloat sethoehe eventout SFInt32 hoehechanged url "klasse.class" } 34

Logik - Java Packages, die der Viewer zur Verfügung stellt: vrml.* vrml.field.* vrml.node.* 35

Logik - Java Implementierung erbt von der Klasse vrml.script. dort beliebige Funktionalität Ereignis-Verarbeitung processevent(event) Zugriff auf definierte Ereignisse (Felder entsprechend) geteventout(string name) geteventin(string name) 36

Agenda Motivation VRML Animation Logik in der 3D-Welt X3D VRML- und X3D-Viewer Editoren Mein Beitrag zum Ferienclub 37

X3D Nachfolger von VRML Umwandlung VRML X3D möglich automatisch quasi ohne Verlust 38

X3D Würfel-Beispiel: VRML #VRML V2.0 utf8 Shape { geometry Box { } appearance Appearance { material Material { diffusecolor 1.0 0.0 0.0 } } } 39

X3D Würfel-Beispiel: VRML #VRML V2.0 utf8 Shape { geometry Box { } appearance Appearance { material Material { diffusecolor 1.0 0.0 0.0 } } } X3D <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE X3D PUBLIC "ISO//Web3D//DTD X3D 3.0//EN" "http://www.web3d.org/specifications/x3d-3.0.dtd"> <X3D profile="full"> <Scene> <Shape> <Box /> <Appearance> <Material diffusecolor="1.0 0.0 0.0"/> </Appearance> </Shape> </Scene> </X3D> 40

X3D Struktur von X3D im Prinzip gleich VRML-Knoten werden XML-Elemente Datenfelder werden XML-Attribute ein Vorteil von XML: Einfacher lesbar, da immer klar ist, welche End-Klammer zu welchem Anfang gehört 41

X3D - Komponenten X3D ist modular aufgebaut für VRML gibt es keinen Browser, der die gesamte Spezifikation erfüllt. spezialisierte Browser möglich, die nur einen Teil, den aber optimal implementieren X3D ist erweiterbar (XML-typisch) 42

X3D - Profile Profile setzen sich aus Komponenten zusammen Core Profile ganz minimal Interchange Profile beschränkten Lichteinsatz, keine Interaktion Interactive Profile nur eingeschränkte Interakion erlaubt MPEG-4 interactive Profile: MPEG-4 Standard Immersive Profile: volle VRML Funktionalität Full Profile Volle Implementation der X3D Spezifikation 43

Agenda Motivation VRML Animation Logik in der 3D-Welt X3D VRML- und X3D-Viewer Editoren Mein Beitrag zum Ferienclub 44

VRML- und X3D-Viewer Browser-Plugin von Cortona (VRML) für private Nutzung kostenlos Browser-Plugin von www.bitmanagement.de (beides) zum Testen kostenlose Version Xj3D vom Web3D-Konsortium (X3D) Für PocketPCs und Handhelds Pocket Cortona 45

VRML- und X3D-Editoren Dune Einfacher grafischer Editor zum Bearbeiten von VRML-Dateien; nach 5 Minuten intuitiv bedienbar X3D-Export möglich; Java-Bibliotheken werden benötigt Blender3d sieht sehr professionell aus Probleme mit der Anzeige vermutlich überdimensioniert (Links finden sich bei den Quellangaben) 46

VRML- und X3D-Editoren mjbworld sehr technisch orientiert X3D-Edit Einfacher Editor vom Web3D-Konsortium Ließ sich bei mir nicht starten (Links finden sich bei den Quellangaben) 47

Agenda Motivation VRML Animation Logik in der 3D-Welt X3D VRML- und X3D-Viewer Editoren Mein Beitrag zum Ferienclub 48

Mein Beitrag 3D-Visualisierung des Ferienclubs Anzeige von Gelände Attraktionen / Sportstätten /... Aufenthaltsort von Personen Wo sind / waren unsere Kinder Wo sind meine Freunde gerade? 49

Mein Beitrag Aufenthalt von Personen Anfang: statisch aktuell zu einem bestimmten Zeitpunkt Ziel: Film Realtime wo war eine Person über einen gewissen Zeitraum? 50

Mein Beitrag Anzeigen von Personen Person realistisch darstellen Körper, evtl. in den Farben der jeweiligen Kleidung Versuch: Gesicht anzeigen (mit Foto) 51

Ich benötige Wer ist und war wo? Feststellung der Positionen der einzelnen Gäste Daten der RFID-Tags Farben der Kleidung Fotos der Gesichter 52

Ich benötige Positionen der Personen müssen ständig aktuell gehalten werden ständiges Abfragen nötig viel Datenverkehr evtl. Einsatz von Agenten Abfragen der Daten der RFIDs nur Veränderungen an die Anwendung schicken 53

Ich benötige sonstige Daten der Personen Gesichter Kleidung ändern sich üblicherweise nicht Abfrage über WebService 54

Quellen http://www.vrml2.de/, 2005-05-26 http://www.debacher.de/vrml/, 2005-05-27 http://www.web3d.org/, 2005-05-26 http://www-lehre.inf.uos.de/~okrone/dip/node35.html, 2005-06-02 XML-basierte 3D-Szenebeschreibungssprache - Praxistauglichkeit des VRML- Nachfolgers X3D (Dilpomarbeit von Stefan Rother an der HAW, 2003) http://www.hoepnet.de/index.php?id=35&action=detail&sid=21&cat=22, 2005-06-02 http://www.oreilly.de/catalog/perlmodger/manpage/vrmlpm.htm, 2005-06-03 http://www.foruma.de/vrml-tutorial/index.htm, 2005-06-03 http://www.uni-essen.de/hrz/beratung/hrzblatt/hrz150/vrml.html, 2005-06-03 http://www.csv.ica.uni-stuttgart.de/vrml/howto.html, 2005-06-06 http://www.gisuser.com.au/gu/content/2001/gu47/gu47_feature/gu47_feature_3.html, 2005-06-07 http://www.google.de/search?q=vrml, immer :-) Multimedia-Labor der HAW http://mmlab.haw-hamburg.de/ 55

Quellen Viewer Cortona: Browser-Plugin für VRML-Dateien: http://www.parallelgraphics.com/products/cortona/, 2005-05-26 Cortona: Viewer für Pocket PC und Handhelp PC http://www.parallelgraphics.com/products/cortonace/, 2005-06-02 Browser-Plugin für VRML und X3D: http://www.bitmanagement.de/, 2005-05-28 Xj3D: http://www.web3d.org/x3d/applications/xj3d/, 2005-06-03 Editoren: http://www.csv.ica.uni-stuttgart.de/homes/js/linuxtag/editoren.html, 2005-06-07 Blender3D: http://www.blender3d.org, 2005-05-28 Dune: http://www.csv.ica.uni-stuttgart.de/vrml/dune/index_white_dune.html, 2005-05-28 X3D-Edit: http://www.web3d.org/x3d/content/readme.x3d-edit.html, 2005-05-28 mjbworld: http://www.euclideanspace.com/mjbworld/index.htm, 2005-06-02 Liste mit vielen Programmen: http://www.csv.ica.uni-stuttgart.de/homes/js/linuxtag/editoren.html, 2005-06-07 56

Fragen?? 57

Danke für die Aufmerksamkeit 58