© Tobias Bäuerle, Virtuelle Präsenz WS10/11, Uni Ulm Übung Second Life Techniken.

Slides:



Advertisements
Ähnliche Präsentationen
Computer Graphics Shader
Advertisements

Algorithmentheorie 08 – Dynamische Programmierung (1)
der Universität Oldenburg
Ein- und Ausgabe von Dateien
Sortieren I - Bubblesort -
6. Der OpenMP Standard Direktiven-basiertes API zur Programmierung von Parallelrechnern mit gemeinsamem Speicher für FORTRAN, C und C++
Seminar Stochastik im WS 02/03
der Universität Oldenburg
Imperative Programmierung -Entwicklungswerkzeuge
der Universität Oldenburg
der Universität Oldenburg
Second Life Andy Gutsche Markus Otto Gliederung 1.Was ist Second Life? 2.Was kann man alles tun? 3.Technische Basis 3.1.Systemumgebung 3.2.integrierte/unterstützte.
SAP R/3 - Speichermanagement
FH-Hof Einbindung von JavaScript Anweisungen
Java: Objektorientierte Programmierung
Java: Dynamische Datentypen
Indirekte Adressierung
FH-Hof Indirekte Adressierung Richard Göbel. FH-Hof Einfache Speicherung von Daten Eine "einfache" Deklaration definiert direkt eine Speicherplatz für.
Java: Grundlagen der Objektorientierung
Dynamischer Speicher. In einer Funktion wird z.B. mit der Deklaration int i; Speicher auf dem sogenannten Stack reserviert. Wenn die Funktion verlassen.
V09 Fallende Formen, Geschwindigkeitsregelung und Timing Daniel Ebner Spieleprogrammierung mit DirectX und C++
IS: Datenbanken, © Till Hänisch 2000 CREATE TABLE Syntax: CREATE TABLE name ( coldef [, coldef] [, tableconstraints] ) coldef := name type [länge], [[NOT]NULL],
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
PRJ 2007/1 Stefan Dissmann Motivation Problem: gleiche Datenstrukturen werden für verschiedene Objekte gebraucht: z.B. Listen von Studierenden, Kunden,
PKJ 2005/1 Stefan Dissmann Zusammenfassung Bisher bekannt: Einfache Variable Feld Vereinbarung Zuweisung Block while-Schleife Bedingte Anweisung (if) Typ.
DVG Kommentare1 Kommentare. DVG Kommentare 2 Kommentare Es gibt zwei Arten von Kommentaren: einzeilige Kommentare // der Kommentar geht.
DVG Klassen und Objekte
DVG Kommentare 1 Kommentare. 2 Kommentare Es gibt zwei Arten von Kommentaren: einzeilige Kommentare // der Kommentar geht bis zum Ende der Zeile.
Einführung MySQL mit PHP
2.2 Definition eines Datenbankschemas (SQL-DDL)
Struktogramme IF-ELSE FOR – Schleife
Einfach verkettete Listen (OOP)
Java programmieren mit JavaKara
Einführung in das Programmieren mit JavaScript Mag. Andreas Starzer weloveIT – EDV Dienstleistungen.
Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung Prof. Dr. Manfred Thaller AM 3 Übung: Softwaretechnologie.
IT2 – WS 2005/20061Oct 10, 2005 Externes Verhalten – Quelltext (source code) Durch Aufrufe der Konstruktoren und Methoden kann das externe Verhalten (=die.
PHP und MYSQL am Organisatorisches Der komplette Kurs im Schnelldurchgang Bewertung von wichtig und unwichtig Historisch Kulturwissenschaftliche.
Debugging in Lua Universität zu Köln Re-usable Content in 3D und Simulationssystemen Prof. Dr. Manfred Thaller Referent: Artur Wilke.
BIT – Schaßan – WS 02/03 Basisinformationstechnologie HK-Medien Teil 1, 11.Sitzung WS 02/03.
Einführung in die Programmierung
Abteilung für Telekooperation Übung Softwareentwicklung 1 für Wirtschaftsinformatik Dr. Wieland Schwinger
Vom Umgang mit Daten. public void myProgram() { int[] saeulenWerte = new int[world.getSizeX()]; for (int i = 0; i < saeulenWerte.length; i++) { saeulenWerte[i]
Grundlagen von Objekt-Pascal Erstellt von J. Rudolf überarbeitet von H.Brehm.
Grundkonzepte des Programmierens (mit ActionScript)
Purga - Scriptengine Ein Einblick.
Prof. Dr.-Ing. Franz-Josef Behr
EPROG Tutorium #3 Philipp Effenberger
Einführung in PHP.
Einführung in PHP 5.
Variablen. var meineZahl:Number = 7; meineZahl 7 Name TypWert = Zuweisung von Variablen.
Hochschule Fulda – FB ET Sommersemester 2014
Parallelisierung für Multiprozessor-Maschinen
Paul, Morten, Yannick Blue J. Entwicklungsumgebung  versteht Java Programmcode  Für die Entwicklung eigener Software  Durch die Programmierung.
Informatik I : Software höhere Programmiersprachen Java Klassen: hat Methoden (Funktionen) und Daten (Variablen) es kann mehrere Klassen geben nur eine.
2 Datenabstraktion Geheimnisprinzip:
(Syntax, Strings/Zahlen, Variablen, Arrays)
Einführung in die Programmierung mit Java
Java-Kurs Übung Besprechung der Hausaufgabe
1 Servlets Stephan Baldes. 2 Was ist ein Servlet? S E R V L E T = Eine auf Java-Technologie basierte Web-Komponente, die von einem Container.
Wie importiert man Inhalte aus 3DS Max nach Second Life? Re-usable Content in 3D und Simulationssystemen Herr Prof. Manfred Thaller SS 2015 Maria Wagner.
Objektorientierte (OO) Programmierung
Tutorium Software-Engineering SS14 Florian Manghofer.
C++ FÜR cOMPUTERSPIELENTWICKLER
© 2008 TravelTainment The Amadeus Leisure Group Thread-Programmierung im Qt-Framework Von: Simon Lubberich Erstbetreuer:
1.Event Queue.
Java-Kurs - 5. Übung Das Paradigma der Objektorientierung (OO)
Einführung in die Programmierung
November 18 Informatik Kurse
Implementieren von Klassen
 Präsentation transkript:

© Tobias Bäuerle, Virtuelle Präsenz WS10/11, Uni Ulm Übung Second Life Techniken

© Tobias Bäuerle, Virtuelle Präsenz WS10/11, Uni Ulm Second Life Objekte bisher: ● Objekte aus Prims (geometrische Grundformen) ● komplexere Objekte durch Verlinkung ● vielfältige Eigenschaften zuweisbar – physikalische Eigenschaften – Flexibilität – Texturen – Material – Verformung (Torsion, Verscherung, Verjüngung, etc.) – Lichtquelle Übung Second Life

© Tobias Bäuerle, Virtuelle Präsenz WS10/11, Uni Ulm Second Life Objekte Wie erzeugt man organische Formen? ● Sculpted Prims – Form des Objektes wird in einer Textur (Sculpt Map) gespeichert – Pixel der Textur entsprechen den Vertexpositionen in Bezug zum Pivotpunkt des Objekts – RGB-Kanäle werden als XYZ-Koordinaten interpretiert ● Block aus 4 Pixeln beschreibt zwei Dreiecke ● in horizontaler Richtung bildet das Polygongitter einen „Ring“ ● in vertikaler Richtung abhängig ob Objekt sphärisch oder nicht Übung Second Life

© Tobias Bäuerle, Virtuelle Präsenz WS10/11, Uni Ulm Second Life Objekte Sculpt Map ● RGB-Kanäle der Texture speichern Integer zwischen 0 und 255 ● Werte kleiner 128 entsprechen negativem Offset und Werte größer 127 positivem Offset ● max. Anzahl von Vertizes pro Sculpted Prim = 1024 → Sculpt Map mit 32x32 Pixeln reicht aus ● 4 Levels of Detail (LOD) – LOD 0 = 36 Vertizes, LOD 1 = 64 Vertizes, LOD 2 = 256 Vertizes, LOD 3 = 1024 Vertizes Übung Second Life

© Tobias Bäuerle, Virtuelle Präsenz WS10/11, Uni Ulm Second Life Skripte ● Skripte in Second Life werden in der Linden Scripting Language (LSL) geschrieben ● Jedem Objekt in SL kann ein oder mehrere Skripte zugewiesen werden ● Skripte und die von den Skripten benötigten Daten (z.B. andere Objekte, Texturen) befinden sich im Objektinventar (nicht verwechseln mit Avatarinventar) ● LSL ist ereignisgesteuert und verglichbar mit endlichen Automaten, d.h. es werden verschiedene Zustände eingenommen ● ein default-Zustand muss bei jedem Skript angegeben werden, dieser ist auch der Startzustand Übung Second Life

© Tobias Bäuerle, Virtuelle Präsenz WS10/11, Uni Ulm Second Life Skripte ● LSL kennt lokale und globale Variablen – integer, float, string, key, vector, rotation, list ● Events werden „getriggert“ – state_entry(), touch_start(...), http_response(...) ● jedes Events besitzt einen Anweisungsblock der frei programmierbar ist ● Events werden synchronisiert, d.h. es wird nur ein Event zu einem Zeitpunkt ausgeführt → Konsistenz ● LSL bietet eine Vielzahl von definierten Funktionen ● Funktionen können aber auch selbst definiert werden ● jedem Skript stehen 16KiB Speicher (in neuer Version 64KiB) zur Verfügung (Bytecode, Heap, Stack) Übung Second Life

© Tobias Bäuerle, Virtuelle Präsenz WS10/11, Uni Ulm Second Life Skripte ● Kommunikation zwischen Skripten bzw. Objekte über Channels – Sender: llSay(int channel, string message) – Empfänder: //Filterfunktion und Listener llListen(integer channel, string name, key id, string msg ); // getriggerter Event listen(integer channel, string name, key id, string message) ● LSL bietet Konstrukte zur Flusskontrolle – for, if, while, do-while, jump, return, state Übung Second Life