Universität zu Köln Historisch Kulturwissenschaftliche Informationsverarbeitung WS 12/13 Softwaretechnologie II (Teil 1): Simulation und 3D Programmierung.

Slides:



Advertisements
Ähnliche Präsentationen
Topic Map zur Darstellung der Beziehungen
Advertisements

Microsoft DirectShow Multimediaschnittstelle Video DVD MP3 Song
Referat zum Thema: Soundkarte Von Julian Weger IT-Klasse 2482.
Ziele der Analyse sozialer Netzwerke in den Sozialwissenschaften
Dynamischer Speicher. In einer Funktion wird z.B. mit der Deklaration int i; Speicher auf dem sogenannten Stack reserviert. Wenn die Funktion verlassen.
Internetstruktur Das Internet besteht aus vielen Computern, die weltweit untereinander vernetzt sind.
Virtuelle Forschungsumgebungen Hintergrundbeitrag: HTML5: Video Player und VideoJS Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung.
Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Kapitel 12: „Variablen und Konstanten verwenden und Spiele.
Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Softwaretechnologie II (Teil 2): Simulation und 3D Programmierung Prof.
Grundbegriffe der 3D-Spiele-Programmierung
Nils Jagdfeld, Patrick Gunia
KLIPS 2.0: Navigation über den Modulbaum
SoundManager oe awp.sound.* Klassen-Konzept SoundMaker SoundListener SoundSceneManager SoundSceneManagerRoom SoundSceneManagerTextarea SoundSceneManagerPopup.
SoundManager oe, ab, rpn awp.sound.* Klassen-Konzept SoundXXXRoom SoundFxProcessor SoundCommonRoom Seite 1 SoundDistributor SoundA3D a3dtools.
Java3d „Licht und Material“
Vorlesung 3: Verschiedenes Universität Bielefeld – Technische Fakultät AG Rechnernetze und verteilte Systeme Peter B. Ladkin
Multimediatechnik / Audio Dipl. -Ing. Oliver Lietz
Special Effects Realistischeres Rendern einer Scene.
Einführung in die EDV Holger Irrgang
Referat zum Thema „DLL“
Medienverarbeitung I, WS 99/00 Simon Barkow, Gunnar Kiesel
Ein kleiner Überblick Über die traditionellen Audiodatenformate
Von Tom Wehnert & Konstantin Preißer
Hi Zusammen! Ich möchte eine Graphik in PP erstellen, die wie ein Tacho funktioniert. Das heisst, das Tacho ist gegeben, aber der Pfeil soll sich durch.
Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung Prof. Dr. Manfred Thaller AM 3 Übung: Softwaretechnologie.
Vortrag D. Braun, Praktikum. Übersicht Pleopatra API Pleopatra Tools Twitter Demonstration Ausblick.
Entwicklung verteilter Anwendungen I, WS 13/14 Prof. Dr. Herrad Schmidt WS 13/14 Kapitel 12 Folie 2 Web Services (1)
Akustisches Herzschlag-
Effekte 1 Universität zu Köln Historisch Kulturwissenschaftliche Informationsverarbeitung Softwaretechnologie II (Teil 1): Simulation und 3D Programmierung.
Was ist Spiel? Erfahrung Bedeutung Vergnügung Narration Simulation Sozial Jonas Zimmer Softwaretechnologie II (Teil 2) Prof. Dr. Thaller.
Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Softwaretechnologie II (Teil I): Simulation und 3D Programmierung Prof.
Universität zu Köln Softwaretechnologie II (Teil 1): Simulation und 3D Programmierung Wintersemester 2011/2012 Dozent: Prof. Dr. phil. Manfred Thaller.
Game Development mit LUA Integration und Kommunikation von LUA mit C++ Referat von Paul van Hemmen Seminar: Reusable Content in 3D und Simulationssystemen.
Softwaretechnologie II (Teil 1): Simulation und 3D Programmierung Medienwiss./Medieninformatik AM3 Visuelle Programmierung I Referent: Janek Rudolf.
Wasser in 3D Die Modellierung und realitätsnahe Echtzeitberechnung von Wasser unter Zuhilfenahme der Grafik Engine OGRE 3D Präsentation von Paul van Hemmen.
Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung Prof. Dr. M. Thaller AM1: Re-usable Content in 3D und Simulationssystemen.
Von der Planung bis zum Hauptmenü Seminar: Softwaretechnologie II Dozent: Prof. Manfred Thaller Referent: Jan Bigalke.
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Einführung in die Bearbeitung und Auswertung von 2D-NMR-Spektren
Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fachbereich.
FH München FB 07 Informatik/Mathematik Projektstudium Chipkarten SS 2001 Authenticate & PIN Martin Leidel, Andreas Dreyer, Peter Knöferl, Christoph Mayer,
Ein Vortrag von Simon Bayer
PART V CONTACT PHYSICS Chapter Aufbaumodul 3: Visuelle Programmierung II Softwaretechnologie II (Teil 2): Simulation und 3D Programmierung Prof.
Videoformate ... gibt es nicht?! Gute Quellen:
ANIMATION II Universität zu Köln Historisch Kulturwissenschaftliche Informationsverarbeitung SS 2013 Softwaretechnologie II (Teil II): Simulation und 3D.
Prototyping Augmented Reality Universität zu Köln Historisch-kulturwissenschaftliche Informationsverarbeitung Aktuelle Probleme digitaler Medien / Medien.
Multimedia in Java Thomas Witschel, Kerstin Steinert & Erik Reinhard.
Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Softwaretechnologie II (Teil 1): Simulation und 3D Programmierung WS 2013/14.
AUDIO im WEB HTML & AUDIO WEB_0302 WEBDESIGN MODUL 03 h.huetter 1 Sound-Dateien können, ebenso wie Video-Dateien, auf mehrere Arten in HTML-Dateien integriert.
Die Welt der Shader Universität zu Köln WS 14/15 Softwaretechnologie II (Teil 1) Prof. Dr. Manfred Thaller Referent: Lukas Kley Fortgeschrittene Techniken.
Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Softwaretechnologie II (Teil I): Simulation und 3D Programmierung Prof.
1. Charakteranimation 2. PlugIns schreiben und laden Universität zu Köln Institut für Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 2010/2011.
Random & Probability Universität zu Köln Institut für Medienkultur und Theater AM3: Visuelle Programmierung II WS 2013/2014 Dozent: Prof. Manfred Thaller.
Historisch-Kulturwissenschaftliche Informationsverarbeitung Übung: Softwaretechnologie II / Visuelle Programmierung Dozent: Prof. Dr. Manfred Thaller WS.
Virtuelle Forschungsumgebung in Musikwissenschaft
PhysX auf der GPU in Batman: Arkham Asylum & bei Fluid Simulations Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Softwaretechnologie.
Benutzerprofil "Laie" Editionsphilologie -Historisch kulturwissenschaftliche Informationsverarbeitung- Universität zu Köln WS 2006/07 unter Leitung von:
Institut für Kartographie und Geoinformation Prof. Dr. L. Plümer, Dipl.-Ing. D. Dörschlag, Dr. G. Gröger Einführung in die Programmierung mit Java 13.
Virtuelle Forschungsumgebung in Musikwissenschaft Universität zu Köln Historisch Kulturwissenschaftliche Informationsverarbeitung Dozent: Prof. Dr. Manfred.
JAVA Sound. Stellt low-level Routinen zur Soundverarbeitung bereit media/sound/index.jsp Java Sound:
Synthetisierung von Audio und MIDI Referent Sebastian Frielitz.
Minecraft Universität zu Köln Historisch-kulturwissenschaftliche Informationsverarbeitung Re-usable Content in 3D und Simulationssystemen SS 2015 Prof.
Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Softwaretechnologie II (Teil I): Simulation und 3D Programmierung Prof.
Mikrocomputertechnik BLIN_INT-P-Quickie Prof. J. Walter Stand Januar Mikrocomputertechnik Jürgen Walter „BLIN_INT-P-Quickie“
ROBERT NYSTROM GAME PROGRAMMING PATTERNS III.8 Thema: Sequencing Patterns Seminar: Softwaretechnologie II (Teil 2) Dozent: Prof. Dr. Manfred Thaller Referent:
Spatial Partition Game Programming Patterns / Optimization Patterns AM3: Softwaretechnologie II (Teil 2): Simulation und 3D Programmierung Dozent: Prof.
Wien Fotos, Audio und Video Multimedia in Android.
Mp3 und co. – Audiobearbeitung am PC. Vorteile Audio am PC Audiofiles lassen sich einfacher verwalten und weiter verarbeiten als Kassettenaufnahmen.
Pointer. * und &  Bei der Definition int var1; ○ // „normale“ Variable int *var2; ○ // Zeiger auf einen Integer int *var2 = NULL; ○ // … incl. Initialisierung.
 Präsentation transkript:

Universität zu Köln Historisch Kulturwissenschaftliche Informationsverarbeitung WS 12/13 Softwaretechnologie II (Teil 1): Simulation und 3D Programmierung Dozent: Prof. Dr. Manfred Thaller Referent: Tobias Kemper

Direct Sound Soundpuffer Kontrolle eines Sounds WAV-Dateien laden 3D-Sound Echtzeiteffekte Musik Direct Sound in TriBase

Komponente von DirectX Mischen einer unbegrenzten Anzahl an Sounds Nutzung von Echtzeiteffekten 3D-Sound (!) Alle Sounds werden in Soundpuffern organisiert Mixer mischt alle spielenden Soundpuffer zu einem zusammen und schreibt das Ergebnis zum Abspielen in den primären Soundpuffer

Schnittstellen: IDirectSound8 und IDirectSoundBuffer8 Abzählen der Geräte mit DirectSoundEnumerate Die DirectSound-Schnittstelle IDirectSound8 wird durch DirectSoundCreate8 erzeugt Mit IDirectSound8::SetCooperativeLevel setzt man die Kooperationsebene von Direct-Sound

Soundpuffer mit IDirectSound8::CreateSoundBuffer erzeugen Ein Primärer und mehrere Sekundäre für die einzelnen Sounds Drei Parameter : -Zeiger auf eine DSBUFFERDESC-Struktur -Adresse eines Zeigers auf die Schnittstelle -nicht verwendeter Parameter (NULL) Struktur DSBUFFERDESC beinhaltet verschiedene Informationen über den Soundbuffer, die Größe (Länge) des Soundpuffers und sein Format Flags zu Sonderwünschen auf Seite 424 Das Format (Audioformat) bestimmt die Soundqualität: Sampling- Frequenz, Anzahl der Bits pro Sample und die Anzahl der Kanäle Um IDirectSoundBuffer8 zu erhalten wird die COM-Methode QueryInterface aufgerufen -> Mehr Fähigkeiten als die Normale

Soundpuffer sperren Ringförmiger Soundpuffer (Looping) Stückweises Füllen mit Streaming Abspiel- und Schreibcursor g_pSound->Lock(0,//Sperren abPosition 0,//Anz zu sperr Bytes (void**)(&pSamples),//Zeiger 1 &dwNumBytes,//Zeiger 2 NULL, DSBLOCK_ENTIREBUFFER)//Flag Gesamt/Teil g_pSound->Lock(0,//Sperren abPosition 0,//Anz zu sperr Bytes (void**)(&pSamples),//Zeiger 1 &dwNumBytes,//Zeiger 2 NULL, DSBLOCK_ENTIREBUFFER)//Flag Gesamt/Teil

Beispiel Soundpuffer

IDirectSoundBuffer8::Play spielt einen Soundpuffer ab Mit Stop wird er angehalten SetVolume setzt die Abspiellautstärke eines Soundpuffers –10000 (totale Stille) bis 0 (Originallautstärke) Soundpuffer Flag DSBCAPS_CTRLVOLUME setzen! Balance mit der SetPan-Methode –10000 bedeutet 100% links und 0% rechts, bedeutet 0% links und 100% rechts Die Frequenz eines Sounds lässt sich mit SetFrequency anpassen

unkomprimierte PCM-Rohdaten bestehen aus einem Header und mehreren Chunks LoadWAVFile WAV-Dateien können direkt geladen und in den Soundpuffer geschrieben werden

Sound und Hörer besitzen eine Position und eine Geschwindigkeit Effekte und Geräuschspositionen können simuliert werden IDirectSound3DBuffer8 steht für einen 3D-Soundpuffer QueryInterface auf einem Soundpuffer aufrufen, der mit dem Flag DSBCAPS_CTRL3D erstellt wurde und nur einen Kanal hat 3D-Algorithmus: DS3DALG_NO_VIRTUALIZATION(einfach und schnell) DS3DALG_HRTF_FULL(realistischstes Ergebnis, viel Rechenzeit) DS3DALG_HRTF_LIGHT (fast so gut wie FULL, weniger Rechenzeit) Hörerschnittstelle IDirectSound3DListener8 repräsentiert den virtuellen Hörer

SetPosition und SetVelocity weisen dem 3D- Soundpuffer bzw. dem Hörer eine Position und einen Geschwindigkeitsvektor im Raum zu SetOrientation -> Orientierung für den Hörer BEISPIELPROGRAMM 3D Sound Bsp

Sounds in Echtzeit verändern: Echo, Verzerrung, Widerhall muss mit dem Flag DSBCAPS_CTRLFX erstellt worden sein Effekte dem Soundpuffer zuweisen, bevor er abgespielt wird und während er nicht gesperrt ist -> SetFX

Jeder Effekttyp besitzt eine eigene Schnittstelle, über die man die Effektparameter einstellen kann Über die Methode GetObjectInPath des Soundpuffers Mit IDirectSound3DListener8::SetDopplerFactor und SetRolloffFactor die Intensität des Dopplereffekts beziehungsweise der Schallabschwächung über- oder untertreiben

DirectShow für alle Multimediaformate alle Audio und Videodaten durchlaufen ein Filtersystem Schnittstelle IMediaControl erlaubt Kontrolle über Play, Pause und Stop Über IMediaSeeking lässt sich der Abspielcursor verschieben und die Geschwindigkeit verändern

tbDirectSound tbSound tbMusic automatische Berechnung der Geschwindigkeit des Hörers Laden von Sounds und Musik weitere Methoden zum Generieren der Schnittstellen BEISPIELPROGRAMM 05-06

Verwendete Literatur: David Scherfgen: 3D-Spiele-Programmierung. München, 2006, S