Zugänge. 6. 3D Programming. ! DirectX. ! Fixed-function Pipeline. ! Shader. ! OpenGL. ! Microsoft XNA. Spieleprogrammierung Winter 2011

Größe: px
Ab Seite anzeigen:

Download "Zugänge. 6. 3D Programming. ! DirectX. ! Fixed-function Pipeline. ! Shader. ! OpenGL. ! Microsoft XNA. Spieleprogrammierung Winter 2011"

Transkript

1 6. 3D Programming! DirectX! Unmanaged (C++)! Managed (C#)! Fixed-function Pipeline! Shader! OpenGL! Microsoft XNA Zugänge (c) Peter Sturm, Universität Trier 1

2 DIRECTX DirectX! Laufzeitunterstützung für multimediale Anwendungen! Direkter Zugang zu HW-Funktionalität! Trotzdem hohe Kompatibilität! Eigenentwicklung von Microsoft! In Zusammenarbeit mit diversen HW-Herstellern! Aushandeln der Funktionalität! Seit DirectX 7.0! TnL HAL (Transform and Lightning) Hardware Abstraction Layer HAL Hardware DirectX Hardware Emulation Layer HEL (c) Peter Sturm, Universität Trier 2

3 ! DirectX Graphics! DirectDraw: 2D-Graphiken! Direct3D (D3D): 3D-Darstellung! DirectInput: Eingabegeräte! DirectPlay: Networking (Multiplayer) Funktionsumfang! DirectSetup: Installation von DirectX-Anwendungen! DirectMusic: Alles was mit Ton zu tun hat! DirectSound: (Low-Latency Sound)! DirectShow: Streaming Media Historie! Erste offizielle Version DirectX 5.0! TnL mit Version 7.0! GPU übernimmt zunehmend höhere Aufgaben! Aktuell Version 9.0c! Managed-Zugang! Neue Möglichkeiten bei den Shadern! Version 10 (Vista)! Unified Shader! Version 11 (7) (c) Peter Sturm, Universität Trier 3

4 DirectX SDK! Wo, Wie groß, Installation! 550MB aktuelles SDK (August 2009)! 18 MB Help für Visual Studio.NET! Dokumentation! C/C++ ist Teil des SDK! C# (allg. managed) war mal!! Viele Beispiele! Sample Browser Tools: dxdiag! DirectX-Installation: dxdiag (c) Peter Sturm, Universität Trier 4

5 Tools: capsviewer! Darstellung der Capabilities Tools: Effect Viewer (c) Peter Sturm, Universität Trier 5

6 Tools: MeshView! D3DSpy! Beobachten der Direct3D-Funktionsaufruf (lokal und remote)! DirectPlay Network Simulator! DirectX Error Lookup! Hexcode! Textuelle Beschreibung! Texture Tool! DMO Tester (DirectX Media Objects)! Streaming etc.! Force Feedback Editor Weitere Tools (c) Peter Sturm, Universität Trier 6

7 Die Render-Pipeline in D3D! Klassische Grundstruktur! Fixed Function Pipeline! Programmable Pipeline Grundsätzliches! Initialisierung! Wahl der gewünschten Hardware! Wahl des Treibers! Konfiguration (Vollbild, )! Beschreibung der 3D-Szene! Nutzung vorhandener Primitive (Box, Sphere, )! Nutzung der Basisabstraktionen (Dreieck, )! Wiederholtes Zeichnen der Frames! Eingebundenen in die Spielsimulation! Game-Loop (c) Peter Sturm, Universität Trier 7

8 Namespaces Microsoft.DirectX (c) Peter Sturm, Universität Trier 8

9 Devices! Hardware! Unterstützung durch Hardware! Software! Referenz! Reine Software-Implementierung! Betonung der Funktionalität! Effizienz nebensächlich! Meist nur auf einem Entwicklungssystem zugänglich Zugang zu einem Device! Manager-Objekt (manager)! Suche nach geeignetem Adaptor! Adapator = eigene HW! Z.B. Dual-Head-Karte hat zwei Adaptoren! Property: AdapterListEnumerator (Adaptors)! Durchlaufen und nach Adapter mit gewünschten Eigenschaften suchen! Capabilities! Stimmen Fähigkeiten des Geräts mit meinen Anforderungen überein? (c) Peter Sturm, Universität Trier 9

10 Knotenverarbeitung! Primitive setzen sich aus Einzelpunkten zusammen! Dreiecke (3 Punkte)! Polygonzug! Box (8 Punkte)! Punkte werden häufig mehrfach verwendet! z.b. jeder Punkt einer Box taucht in 6 Dreiecken auf! Wo werden Knoten gespeichert und bearbeitet?! SoftwareVertexProcessing: Standardisiert! HardwareVertexProcessing: Kartenabhängig! MixedVertexProcessing Primitive! Knotenpuffer (Vertex Buffer)! p1, p2, p3, p4, p5, p6,... p2 p3! Interpretation:! Point List: p1, p2, p3,! Line List: (p1,p2), (p3,p4), p1! Line Stripe: (p1,p2), (p2,p3), (p3,p4),! Triangle List: (p1,p2,p3), (p4,p5,p6),! Triangle Stripe: (p1,p2,p3), (p2,p3,p4), (p3,p4,p5),! Triangle Fan: (p1,p2,p3),(p1,p3,p4), (p1,p4,p5), p5 p4 p6 (c) Peter Sturm, Universität Trier 10

11 Allgemeine Vorgehensweise! Anlegen und Füllen eines VertexBuffer! Variable Informationen pro Knoten! VertexBuffer mit Device verbinden! device.setstreamsource()! Zeichnen! device.beginscene() device.drawprimitives(type,firstvertex,#vertex) device.endscene() device.present() // Darstellen Welche Informationen pro Knoten! Spezielle Klasse CustomVertex (c) Peter Sturm, Universität Trier 11

12 SHADER Historie! DirectX = Konzept zur allgemeinen Nutzung hardwarebeschleunigter Dienste! Standardisierung! Effizienz! Lastbalancierung! Kontrolliert HW-Bereiche hoher Innovation! Bis Version 7 Erweiterung der Fixed-Function-Pipeline! Aber mit Funktionsverlagerung in die GPU (Transform and Lighting)! Erste programmierbare Shader ab Version 8! Starke Restriktionen! Mit Version 10 werden GPUs zu echten SIMD-Rechnern (c) Peter Sturm, Universität Trier 12

13 Umfeld CPU GPU Core Core Shader Shader Hauptspeicher Videospeicher Einbettung Pipeline Vertex Shader Geometry Shader Clipping Screen Mapping Triangle Setup Triangle Traversal Pixel Shader Merger! Vertex Shader! Modifikationen auf Knotenbasis! Geometry Shader! Modifikationen auf Primitivbasis! Pixel Shader! Modifikationen auf Pixelbasis (c) Peter Sturm, Universität Trier 13

14 Capabilities SM 2.0/2.X SM 3.0 SM 4.0 Einführung DX 9.0, 2002 DX 9.0c, 2004 DX 10, 2007 VS Instruktionsslots 256 >= VS Max. Schritte beliebig PS Instruktionsslots >= 96 >= 512 >= PS Max. Schritte >= beliebig Temporäre Register >= VS Konstantenregister >= 256 >= * 4096 PS Konstantenregister * 4096 Flow Control Optional Ja Ja VS Texturen Nein * 512 PS Texturen * 512 Integer Support Nein Nein Ja VS Input Register PS Output Register Vertex Shader! Kleine Assemberprogramme! Anbindbar an einen Vertex Stream! Ausführung für jeden Vertex eines Streams! Vordefinierte Input- und Hilfsregister! Ergebnis steht in vordefinierten Ausgaberegistern! Repertoir an Shader-Instruktionen (c) Peter Sturm, Universität Trier 14

15 Input- und Output-Register! Input! Output Instruktionen (c) Peter Sturm, Universität Trier 15

16 Beispiel Pixel Shader! Kleine Assemblerprogramme! Können bei der Bestimmung der Pixelfarbe intervenieren! Grobarchitektur ähnlich Vertex Shader! 2 Instruktionstypen! Arithmetische Instruktionen! Texturinstruktionen (c) Peter Sturm, Universität Trier 16

17 Register Instruktionslimits (c) Peter Sturm, Universität Trier 17

18 Arithmetische Instruktionen Texture Instructions (c) Peter Sturm, Universität Trier 18

19 C for graphics:! Open Source! High-Level Shading Language! Ersetzt Assembler für Vertex- und Pixel-Shader! entstand in Zusammenarbeit mit Microsoft! unterstützt DirectX 9 HLSL! Vorteile! Cross-API (DirectX und OpenGL)! Cross-Plattform (Windows, Linux, Mac OS) Funktionsweise!!! Entwicklung der gewünschten Shader Digital Content Creation (DCC)! z.b. mittels Maya, 3ds max etc.! Spezielle Editoren! Spieleprogrammierung Übersetzung durch Cg-Compiler! Zum Übersetzungszeitpunkt der Anwendung! Zur Laufzeit der Anwendung (c) Peter Sturm, Universität Trier 19

20 Programmiermodell 3D-Anwendung Spiel 3D-API DX oder OGL CPU-GPU Boundary GPU Frontend Primitive Assembly Rasterization & Interpolation Raster Operations Programmable Vertex Processor Programmable Fragment Processor Cg Language Profiles! Gezielte Einschränkung von Cg auf spezifische Hardware- und Plattformeigenschaften! Unterstützte Profile! DirectX 9 Vertex- und Pixel-Shader (Versionen 2.x)! OpenGL ARB Vertex- und Fragment-Programs! OpenGL NV30 Vertex- und Fragment-Programs! DirextX 8! OpenGL NV2X! (c) Peter Sturm, Universität Trier 20

21 Cg Programme! Ersetzen die Assemblerroutinen in DirectX! Operieren auf in den Shadern definierten Ein- und Ausgaben! Bindung an Programmvariablen geschieht über spezielle Syntax! Innerhalb des Codes mehr oder weniger C Programmeingaben! Variierende Eingaben! Unterschiedliche Daten für jeden Aufruf des Vertex- oder Fragment-Programms! Uniforme Eingaben! Konstanten, Zusatzinformationen! Gleichbleibend für jeden Vertex- oder Fragment-Aufrufs innerhalb eines Streams (c) Peter Sturm, Universität Trier 21

22 Variierende Eingaben für Vertex-Programm! Vordefiniert (in Anlehnung an Fixed-Pipeline)! Position im 3D-Raum (Vertex)! Normalenvektor an diesem Punkt! Texturkoordinaten! Zusätzliche Werte pro Vertex definierbar Variierende Ausgaben für Vertex-Programm! werden variierende Eingaben für Fragment- Programm! Aus- und Eingabebeziehung wird ebenfalls über die Bindings hergestellt! In allen Profilen definierte Bindings! POSITION! PSIZE! FOG! COLOR0, COLOR1! TEXCOORD0 TEXCOOR7! POSITION muß immer ausgegeben werden (c) Peter Sturm, Universität Trier 22

23 Variierende Ausgaben für Fragmente! Zwingend! COLOR: Bestimmt die endgültige Farbe! DEPTH: Modifikation des Tiefenwerts Cg: Datentypen! Grundtypen! float (32 Bit), half (16 Bit), int, fixed (12 Bit), bool! Handles auf ein Texturobjekt! Vektoren (1 bis 4 Elemente): z.b. float1 bis float4! Matrixen (maximal 4x4): float2x2, float3x2, float4x4! Structures! Arrays! Assignments kopieren ganzes Feld (c) Peter Sturm, Universität Trier 23

24 Statements und Operatoren! Kontrollfluß! Unterprogramme, if/else, while, for! Keine Rekursion! Schleifen müssen in manchen Profilen aufrollbar sein (Anzahl der Durchläufe zum Übersetzungszeitpunkt bekannt)! Unmenge an arithmetischen Operationen! Trigonometrische Funktionen! Runden, Abschneiden, etc.! Multiplikationen auch auf Matrizen, Vektoren,! Kreuzprodukt, Determinante,! Abbildung auf Texturen Beispiel: lit() (c) Peter Sturm, Universität Trier 24

25 Beispiel: Geometrische Funktionen DirectX 10! Zu hohe CPU-Last in 3D-Echtzeitanwendungen! Zunehmend feinere Modellierung, Physik, KI! CPU übermäßig mit Ansteuerung der GPU beschäftigt! Ziele! Mehr Ressourcen in der GPU verwalten! Bessere Lastverteilung CPU-GPU! Multi-Passes komplett in GPU! Shader-Funktionalität verallgemeinern (CPUs)! Weg von den Capabilities, hin zu mehr Gleichheit! Komplette Neuimplementierung (c) Peter Sturm, Universität Trier 25

26 Fixed-Function Pipeline (Version 9) Programmierbare Pipeline (Version 9) Fixed-Function Pipeline wird auf den meisten aktuellen Graphikkarten durch interne Shader-Programme ausgeführt. (c) Peter Sturm, Universität Trier 26

27 Programmierbare Pipeline (Version 10) Command Input Virtualized Memory (GPU/System Memory) Input Assembler Vertex Buffer Index Buffer Vertex Shader Texture! Keine Fixed-Function-Pipeline mehr Geometry Shader Texture! Einsatz der Shader essentiell Stream Output! SDK enthält Shadersatz für einfaches Portieren älterer Anwendungen Rasterizer/ Interpolator Pixel Shader Texture Output Merger Depth/Stencil Render Target Die Shader! Vertex Shader! Transformation, Licht! Per-Vertex Operationen! Pixel Shader! Textur-Komposistion! Per-Pixel Operation! Geoemtry Shader! Per-Primitive Operationen! Eingabe: beschreibenden Knoten! Ausgabe: Stripes (Dreiecke, Linien, Punkte)! Ausgabeanzahl wird im Setup festgelegt (c) Peter Sturm, Universität Trier 27

28 Shader-Modell, Version 4! Gemeinsame Basis für alle Shader! Befehlssatz mit CPU vergleichbar! Integer und Bitoperation, Floating Point! Erweiterung zu allgemein nutzbaren SIMD-Rechnern! Freier Zugriff auf den Speicher!! Switch-Statements und Unterprogramme Keine Beschränkungen! Mehr allgemein zugreifbare Ressourcen! Beliebige Instruktionsanzahl Genauigkeit! IEEE Floating-Point Compliance (fast)! Präzises FP32-Rechnen! Sampling! Blending! Mathematische Operationen! Konvertierungen! Exaktes Zeichnen! Optimiertes Anti-Aliasing (c) Peter Sturm, Universität Trier 28

29 ! Vereinfachtes API! Setup! Verlagerung von Zustand auf GPU Weitere Verbesserungen! Speicherung zusätzlicher Zustandsinformation! Constant Buffers auf unterschiedlichen Ebenen! C-ähnliche Programmiersprache! Präprozessor! Elementare Datentypen (float, int, bool, )! Operatoren, Variablen, Funktionen, HLSL 4.0! Spezialisierung auf 3D-Graphik! Vektortypen sind elementar (float2, float3, float4, )! Geeignete Operationen (Matrizenmultiplikation)! Dedizierter Compiler (fxc.exe)! Abbildung höherer Funktionen auf Shader-Potential! Loop unrolling! Umfangreiche Mathematikfunktionalität! Reflection möglich (c) Peter Sturm, Universität Trier 29

30 Effects (fx) Effect Pool Effect Technique Variable Pass State Object Constant Shader DirectX 10 Vista-Architektur PIX Media Foundation WPF MIL DWM Microsoftwritten code IHV-written code GDI Legacy D3D APIs DX VA D3D9 D3D9 Ex Direct3D 10 DXGI OpenGL OpenGL ICD Common pipeline (DDI) User-Mode Driver User Mode Kernel Mode Win32 Kernel DXG Kernel Kernel-Mode Driver Sam Z. Glassenberg, WinHEC 2006 (c) Peter Sturm, Universität Trier 30

31 OPENGL OpenGL! DirectX = Microsoft! Single Source! Alternative: OpenGL! Sprach- und plattform-unabhängig! Ursprung 1992 (SGI)! jetzt Khronos Group Consortium (non-profit)! Open*! Adobe, AMD/ATI, Apple, ARM, Creative Labs, id Software, Epic Games, Ericsson, Google, IBM, Intel, Motorola, Mozilla, Nokia, Nvidia, Samsung, Sony, Oracle, Texas Instruments! Kein Microsoft " (c) Peter Sturm, Universität Trier 31

32 XNA! Aktuelle managed runtime für DirectX- Anwendungen! Eingeführt 2004! Seit September 2010 XNA Game Studio 4.0! Ziel-Plattformen! Windows PC! Xbox 360! Windows Phone 7! Umfangreiches Framework (Engine?) XNA (c) Peter Sturm, Universität Trier 32

Grundlagen der Spieleprogrammierung

Grundlagen der Spieleprogrammierung Grundlagen der Spieleprogrammierung Teil I: 3D-Graphik Kapitel 9: Engines, Cg und anderes Peter Sturm Universität Trier Outline 1. Übersicht und Motivation 2. Mathematische Grundlagen 3. Das Ideal: Photorealistisch

Mehr

Computer Graphics Shader

Computer Graphics Shader Computer Graphics Shader Sven Janusch Inhalt Fixed Function Pipeline Programmable Pipeline Implementierung Applikation Beispiel Sven Janusch 2 Fixed Function Pipeline T&L Pipeline (Transformation and Lighting)

Mehr

Shader. Computer Graphics: Shader

Shader. Computer Graphics: Shader Computer Graphics Computer Graphics Shader Computer Graphics: Shader Inhalt Pipeline Memory Resources Input-Assembler Vertex-Shader Geometry-Shader & Stream-Output Rasterizer Pixel-Shader Output-Merger

Mehr

Grundlagen der Spieleprogrammierung

Grundlagen der Spieleprogrammierung Grundlagen der Spieleprogrammierung Teil I: 3D-Graphik Kapitel 4: Die Realität DirectX und OpenGL (Übersicht) Peter Sturm Universität Trier Outline 1. Übersicht und Motivation 2. Mathematische Grundlagen

Mehr

Grundlagen der Spieleprogrammierung

Grundlagen der Spieleprogrammierung Grundlagen der Spieleprogrammierung Teil I: 3D-Graphik Kapitel 8: Hardware Peter Sturm Universität Trier Outline 1. Übersicht und Motivation 2. Mathematische Grundlagen 3. Das Ideal: Photorealistisch (Raytracing,

Mehr

GPGPU Basiskonzepte. von Marc Kirchhoff GPGPU Basiskonzepte 1

GPGPU Basiskonzepte. von Marc Kirchhoff GPGPU Basiskonzepte 1 GPGPU Basiskonzepte von Marc Kirchhoff 29.05.2006 GPGPU Basiskonzepte 1 Inhalt Warum GPGPU Streams, Kernels und Prozessoren Datenstrukturen Algorithmen 29.05.2006 GPGPU Basiskonzepte 2 Warum GPGPU? Performance

Mehr

RST-Labor WS06/07 GPGPU. General Purpose Computation On Graphics Processing Units. (Grafikkarten-Programmierung) Von: Marc Blunck

RST-Labor WS06/07 GPGPU. General Purpose Computation On Graphics Processing Units. (Grafikkarten-Programmierung) Von: Marc Blunck RST-Labor WS06/07 GPGPU General Purpose Computation On Graphics Processing Units (Grafikkarten-Programmierung) Von: Marc Blunck Ablauf Einführung GPGPU Die GPU GPU Architektur Die Programmierung Programme

Mehr

Jörn Loviscach Hochschule Bremen

Jörn Loviscach Hochschule Bremen Programmierbare Hardware-Shader Jörn Loviscach Hochschule Bremen Überblick Vertex- und Pixel-Shader Anwendungsbeispiele fx-dateien Anwendungsbeispiele Zusammenfassung Puffer Vertex- und Pixel-Shader Hardware-Renderpipeline

Mehr

Seminar Game Development Game Computer Graphics. Einleitung

Seminar Game Development Game Computer Graphics. Einleitung Einleitung Gliederung OpenGL Realismus Material Beleuchtung Schatten Echtzeit Daten verringern Grafik Hardware Beispiel CryEngine 2 Kristian Keßler OpenGL Was ist OpenGL? Grafik API plattform- und programmiersprachenunabhängig

Mehr

General Purpose Computation on GPUs

General Purpose Computation on GPUs General Purpose Computation on GPUs Matthias Schneider, Robert Grimm Universität Erlangen-Nürnberg {matthias.schneider, robert.grimm}@informatik.stud.uni-erlangen.de M. Schneider, R. Grimm 1 Übersicht

Mehr

Diplomarbeit. Neue Möglichkeiten durch programmierbare Shader. Unter der Leitung von: Prof. Dr.-Ing. Detlef Krömker

Diplomarbeit. Neue Möglichkeiten durch programmierbare Shader. Unter der Leitung von: Prof. Dr.-Ing. Detlef Krömker Diplomarbeit 5HDO7LPH6SHFLDO (IIHFWV Neue Möglichkeiten durch programmierbare Shader Unter der Leitung von: Prof. Dr.-Ing. Detlef Krömker Betreut von: Paul Grimm, Ralf Dörner Beginn: 01.04.02 Abgabe: 30.09.02

Mehr

Spezialprozessoren zur Übernahme Grafik-spezifischer Aufgaben, vorrangig der Bildschirmausgabe

Spezialprozessoren zur Übernahme Grafik-spezifischer Aufgaben, vorrangig der Bildschirmausgabe Grafikprozessoren Spezialprozessoren zur Übernahme Grafik-spezifischer Aufgaben, vorrangig der Bildschirmausgabe 2D: Berechnung der Bildes aus einfachen Grafikprimitiven 3D: Bildaufbau aus räumlicher Beschreibung

Mehr

Computergrafik Universität Osnabrück, Henning Wenke,

Computergrafik Universität Osnabrück, Henning Wenke, Computergrafik Universität Osnabrück, Henning Wenke, 2012-05-14 Kapitel V: Modeling Transformation & Vertex Shader 5.1 Vertex Definitionen: Vertex Vertex Computergrafik Mathematischer Punkt auf einer Oberfläche

Mehr

OpenCL. Programmiersprachen im Multicore-Zeitalter. Tim Wiersdörfer

OpenCL. Programmiersprachen im Multicore-Zeitalter. Tim Wiersdörfer OpenCL Programmiersprachen im Multicore-Zeitalter Tim Wiersdörfer Inhaltsverzeichnis 1. Was ist OpenCL 2. Entwicklung von OpenCL 3. OpenCL Modelle 1. Plattform-Modell 2. Ausführungs-Modell 3. Speicher-Modell

Mehr

Spieleprogrammierung mit DirectX und C++

Spieleprogrammierung mit DirectX und C++ Ulrich Kaiser, Philipp Lensing Spieleprogrammierung mit DirectX und C++ 2D-, 3D- und Netzwerkspiele, viele Spezialeffekte Galileo Press Einleitung 11 Danksagung 13 Vorwort zur zweiten Auflage 14 1 Vorbereitung

Mehr

DirectX und OpenGL. Proseminar Multimedia-Hardwareerweiterungen Michel Weimerskirch, 15. Februar 2006

DirectX und OpenGL. Proseminar Multimedia-Hardwareerweiterungen Michel Weimerskirch, 15. Februar 2006 DirectX und OpenGL Proseminar Multimedia-Hardwareerweiterungen Michel Weimerskirch, 15. Februar 2006 2 Inhalt Einleitung Übersicht DirectX und Komponenten Übersicht OpenGL Sprachlicher Aufbau OpenGL Sprachlicher

Mehr

SS08, LS12, Friedrich-Alexander-Universität Erlangen Florian Hänel, Frederic Pollmann HS Multicore Architectures and Programming GPU EVOLUTION

SS08, LS12, Friedrich-Alexander-Universität Erlangen Florian Hänel, Frederic Pollmann HS Multicore Architectures and Programming GPU EVOLUTION SS08, LS12, Friedrich-Alexander-Universität Erlangen Florian Hänel, Frederic Pollmann HS Multicore Architectures and Programming GPU EVOLUTION (until Geforce 7 Series) 1 ÜBERSICHT Grafikpipeline Verlagerung

Mehr

Wiederholung. Vorlesung GPU Programmierung Thorsten Grosch

Wiederholung. Vorlesung GPU Programmierung Thorsten Grosch Wiederholung Vorlesung Thorsten Grosch Klausur 2 Zeitstunden (26.7., 8:30 10:30 Uhr, G29/307) Keine Hilfsmittel Kein Bleistift / Rotstift verwenden 3 Aufgabentypen Wissensfragen zur Vorlesung (ca. 1/3)

Mehr

Interaktive Globale Beleuchtung nach dem Antiradiance-Verfahren mittels der Open Computing Language (OpenCL)

Interaktive Globale Beleuchtung nach dem Antiradiance-Verfahren mittels der Open Computing Language (OpenCL) Interaktive Globale Beleuchtung nach dem Antiradiance-Verfahren mittels der Open Computing Language (OpenCL) Verteidigung der Belegarbeit Andreas Stahl Zielstellung Globales Beleuchtungsverfahren für die

Mehr

GPU-Programmierung: OpenCL

GPU-Programmierung: OpenCL Seminar: Multicore Programmierung Sommerstemester 2009 04.06.2009 Inhaltsverzeichnis 1 GPU-Programmierung von Grafikkarten von GPU-Computing 2 Architektur Spracheigenschaften Vergleich mit CUDA Beispiel

Mehr

DirectX: Übersicht. DirectX: Agenda. DirectX: DirectDraw. DirectX: Literatur. PC-Technologie DirectX 165. Multimedia-Schnittstellen für Windows

DirectX: Übersicht. DirectX: Agenda. DirectX: DirectDraw. DirectX: Literatur. PC-Technologie DirectX 165. Multimedia-Schnittstellen für Windows DirectX: Agenda Einführung und Konzepte Vorführung DirectX7 SDK DirectX: Literatur www.microsoft.com/directx (DirectX portal page) www.microsoft.com/msdn (MS developer network) DirectX SDK (Docs und Beispiele)

Mehr

CUDA. Moritz Wild, Jan-Hugo Lupp. Seminar Multi-Core Architectures and Programming. Friedrich-Alexander-Universität Erlangen-Nürnberg

CUDA. Moritz Wild, Jan-Hugo Lupp. Seminar Multi-Core Architectures and Programming. Friedrich-Alexander-Universität Erlangen-Nürnberg CUDA Seminar Multi-Core Architectures and Programming 1 Übersicht Einleitung Architektur Programmierung 2 Einleitung Computations on GPU 2003 Probleme Hohe Kenntnisse der Grafikprogrammierung nötig Unterschiedliche

Mehr

Die Welt der Shader. Fortgeschrittene Techniken III

Die Welt der Shader. Fortgeschrittene Techniken III Die Welt der Shader Fortgeschrittene Techniken III Universität zu Köln WS 14/15 Softwaretechnologie II (Teil 1) Prof. Dr. Manfred Thaller Referent: Lukas Kley Gliederung 1. Was ist ein Shader? 2. Verschiedene

Mehr

Ansätze 4. GPU. Echtzeit- Raytracing. Polygon- Rendering. Computerspiele Sommer (c) 2013, Peter Sturm, Universität Trier 1

Ansätze 4. GPU. Echtzeit- Raytracing. Polygon- Rendering. Computerspiele Sommer (c) 2013, Peter Sturm, Universität Trier 1 4. GPU Ansätze Echtzeit- Raytracing Modell und Materialeigenschaften auf Raytracer Kontinuierliche Darstellung Polygon- Rendering CPU wählt darzustellende Polygone aus Render Pipeline (c) 2013, Peter Sturm,

Mehr

Masterpraktikum Scientific Computing

Masterpraktikum Scientific Computing Masterpraktikum Scientific Computing High-Performance Computing Thomas Auckenthaler Wolfgang Eckhardt Prof. Dr. Michael Bader Technische Universität München, Germany Outline Organisatorisches Entwicklung

Mehr

Aktuelle Grafikleistungen

Aktuelle Grafikleistungen Aktuelle Grafikleistungen Alexander Hötzendorfer Universität Ulm 03. Juli 2007 Inhalt Übersicht Aktuelle Techniken HDR-Lighting Tessellation Aufbau der Rendering-Pipeline Shader Vertex-Shader Geometry-Shader

Mehr

Thema: Hardware-Shader

Thema: Hardware-Shader Seminar Grafikprogrammierung Thema: Hardware-Shader Christian Bauer 03.07.08 Überblick Entwicklung Die Shader im Detail Programmierung GPGPU Zusammenfassung & Ausblick 1/19 Entwicklung (1) Früher: Berechnung

Mehr

Untersuchung und Vorstellung moderner Grafikchiparchitekturen

Untersuchung und Vorstellung moderner Grafikchiparchitekturen Fakultät Informatik, Institut für Technische Informatik, Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur Untersuchung und Vorstellung moderner Grafikchiparchitekturen Hauptseminar Technische

Mehr

Organisatorisches. Folien (u.a.) gibt's auf der Lva-Homepage zum Download

Organisatorisches. Folien (u.a.) gibt's auf der Lva-Homepage zum Download Organisatorisches Folien (u.a.) gibt's auf der Lva-Homepage zum Download Diesen Mi erstes Tutorium (15-17) Ab nächster Woche montags 10-12 (jeweils im Computerraum) 17.10.2017 IT I - VO 3 1 Organisatorisches

Mehr

Grafikkarten-Architektur

Grafikkarten-Architektur > Grafikkarten-Architektur Parallele Strukturen in der GPU Name: Sebastian Albers E-Mail: s.albers@wwu.de 2 > Inhalt > CPU und GPU im Vergleich > Rendering-Pipeline > Shader > GPGPU > Nvidia Tesla-Architektur

Mehr

HLSL PostProcess Shaders

HLSL PostProcess Shaders HLSL Advanced 1 HLSL PostProcess Shaders Einführung PostProcess Effekte werden erst nach dem Rendern aller Objekte angewandt, nämlich auf das Render-Target (daher der Name). Das Spektrum der Möglichkeiten

Mehr

Organisatorisches. Folien (u.a.) auf der Lva-Homepage Skriptum über MU Online

Organisatorisches. Folien (u.a.) auf der Lva-Homepage Skriptum über MU Online Organisatorisches Folien (u.a.) auf der Lva-Homepage Skriptum über MU Online Nächste Woche VO und UE am Dienstag, den 30.10.! UE im CR IL/IT Wissensüberprüfung am Zettel 25.10.2018 IT I - VO 3 1 Organisatorisches

Mehr

3D Programmierpraktikum: OpenGL Shading Language (GLSL)

3D Programmierpraktikum: OpenGL Shading Language (GLSL) 3D Programmierpraktikum: OpenGL Shading Language (GLSL) Praktikum 3D Programmierung Sebastian Boring, Otmar Hilliges Donnerstag, 13. Juli 2006 LMU München Medieninformatik Boring/Hilliges 3D Programmierpraktikum

Mehr

Jens Konerow. Managed DirectX und C#

Jens Konerow. Managed DirectX und C# Jens Konerow Managed DirectX und C# Jens Konerow Managed DirectX und C# Einstieg und professioneller Einsatz Jens Konerow: Managed DirectX und C# Einstieg und professioneller Einsatz ISBN-10: 3-935082-17-4

Mehr

OpenGL und die Fixed-Function-Pipeline

OpenGL und die Fixed-Function-Pipeline OpenGL und die Fixed-Function-Pipeline Proseminar Game Design WS 07/08 Jan-Hendrik Behrmann Einführung In modernen Computerspielen hat sich inzwischen die Darstellung der Spielwelt in dreidimensionaler

Mehr

Softwareprojekt Spieleentwicklung

Softwareprojekt Spieleentwicklung Softwareprojekt Spieleentwicklung Prototyp I (2D) Prototyp II (3D) Softwareprojekt 12.04. 19.04. 26.04. 03.05. 31.05. Meilenstein I 28.06. Meilenstein II Prof. Holger Theisel, Tobias Günther, OvGU Magdeburg

Mehr

Architektur moderner GPUs. W. Sczygiol - M. Lötsch

Architektur moderner GPUs. W. Sczygiol - M. Lötsch Architektur moderner GPUs W. Sczygiol - M. Lötsch Überblick Chipentwicklung Aktuelle Designs Nvidia: NV40 (ATI: R420) Vertex-Shader Pixel-Shader Shader-Programmierung ROP - Antialiasing Ausblick Referenzen

Mehr

Zwischenvortrag zum Entwicklungsstand der Bachelor-Arbeit. Direct 3D-Output für ein Rendering Framework

Zwischenvortrag zum Entwicklungsstand der Bachelor-Arbeit. Direct 3D-Output für ein Rendering Framework Zwischenvortrag zum Entwicklungsstand der Bachelor-Arbeit Direct 3D-Output für ein Rendering Framework von Benjamin Betting unter der Betreuung von Daniel Schiffner 1 Gliederung Kapitel I und II: Motivation,Einführung,Grundlagen

Mehr

Praxiseinheit: Realisierung einer hardwarebeschleunigten Disparitätenberechnung zur automatischen Auswertung von Stereobildern

Praxiseinheit: Realisierung einer hardwarebeschleunigten Disparitätenberechnung zur automatischen Auswertung von Stereobildern Praxiseinheit: Realisierung einer hardwarebeschleunigten Disparitätenberechnung zur automatischen Auswertung von Stereobildern Institut für Betriebssysteme und Rechnerverbund TU Braunschweig 25.10., 26.10.

Mehr

OpenGL. (Open Graphic Library)

OpenGL. (Open Graphic Library) OpenGL (Open Graphic Library) Agenda Was ist OpenGL eigentlich? Geschichte Vor- und Nachteile Arbeitsweise glscene OpenGL per Hand Debugging Trend Was ist OpenGL eigentlich? OpenGL ist eine Spezifikation

Mehr

Computergrafik Universität Osnabrück, Henning Wenke,

Computergrafik Universität Osnabrück, Henning Wenke, Computergrafik Universität Osnabrück, Henning Wenke, 2012-06-04 Kapitel VIII: Per Primitive Operations Primitive I 3 Primitive II Elementare grafische Grundform Besteht in OpenGL aus Folge von 1-3 Vertices

Mehr

Grundlagen der Spieleprogrammierung

Grundlagen der Spieleprogrammierung Grundlagen der Spieleprogrammierung Teil I: 3D-Graphik Kapitel 3: Das Ideal - Photorealistisch Peter Sturm Universität Trier Outline 1. Übersicht und Motivation 2. Mathematische Grundlagen 3. Das Ideal:

Mehr

Game Development 1 XNA Framework für PC und Xbox

Game Development 1 XNA Framework für PC und Xbox Game Development 1 XNA Framework für PC und Proseminar Objektorientiertes Programmieren mit.net und C# Dominik Schinner Institut für Informatik Software & Systems Engineering Agenda Game Programming XNA

Mehr

Programmierpraktikum 3D Computer Grafik

Programmierpraktikum 3D Computer Grafik Dipl.Inf. Otmar Hilliges Programmierpraktikum 3D Computer Grafik GLSL Agenda Rendering Pipeline Prozessoren: Vertex Prozessor Fragment Prozessor OpenGL Setup für GLSL Shader-Grundlagen Beispiele Die Rendering-Pipeline

Mehr

Numerik und Rechnen. Martin Heide & Dominik Holler. 12. Juni 2006

Numerik und Rechnen. Martin Heide & Dominik Holler. 12. Juni 2006 12. Juni 2006 Bibliothek für Lineare Algebra GPGPU-Programming: Low-Level High-Level Bibliothek Bibliothek für Lineare Algebra Gliederung 1 Bibliothek für Lineare Algebra 2 Skalare Bibliothek für Lineare

Mehr

Praktikum Augmented Reality Fernrohr -Felix Löhr-

Praktikum Augmented Reality Fernrohr -Felix Löhr- Praktikum Augmented Reality Fernrohr -Felix Löhr- Allgemein Features Der Aufbau von Ogre Der Bezug zum Projektpraktikum Szenegraph Licht & Schatten Quaternionen Material Performance OGRE Object-Oriented

Mehr

Masterpraktikum Scientific Computing

Masterpraktikum Scientific Computing Masterpraktikum Scientific Computing High-Performance Computing Thomas Auckenthaler Wolfgang Eckhardt Technische Universität München, Germany Outline Entwicklung General Purpose GPU Programming (GPGPU)

Mehr

Direct3D. (Scherfgen S )

Direct3D. (Scherfgen S ) Direct3D (Scherfgen S. 98-131) Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung WS 14/15 AM3 Hauptseminar Softwaretechnologie II (Teil 1): Simulation und 3D Programmierung

Mehr

Computergrafik SS 2010 Henning Wenke. Kapitel 21: OpenGL 3.1 (Fortsetzung)

Computergrafik SS 2010 Henning Wenke. Kapitel 21: OpenGL 3.1 (Fortsetzung) Computergrafik SS 2010 Henning Wenke Kapitel 21: OpenGL 3.1 (Fortsetzung) 1 OpenGL Aufgaben der GL-Befehle Konfigurieren der Graphics Pipeline Datenübergabe an Server Steuern des Datenflusses Java OpenGL

Mehr

Yilmaz, Tolga MatNr: Mesaud, Elias MatNr:

Yilmaz, Tolga MatNr: Mesaud, Elias MatNr: Yilmaz, Tolga MatNr: 157317 Mesaud, Elias MatNr: 151386 1. Aufbau und Funktionsweise einer Grafikkarte 2. CPU vs. GPU 3. Software 4. Beispielprogramme Kompilierung und Vorführung 5. Wo wird Cuda heutzutage

Mehr

C for Graphics Benjamin Rommel Seminar 'Paralleles Rechnen auf Grafikkarten' Sommersemester 2009 Betreuer: Julian M.

C for Graphics Benjamin Rommel Seminar 'Paralleles Rechnen auf Grafikkarten' Sommersemester 2009 Betreuer: Julian M. C for Graphics Benjamin Rommel 12.05.2009 Seminar 'Paralleles Rechnen auf Grafikkarten' Sommersemester 2009 Betreuer: Julian M. Kunkel 'C for Graphics', Benjamin Rommel, SS 2009 Inhaltsübersicht Gliederung

Mehr

Wine der freiewindows Emulator. Marcus Meißner Wine und opensuse Entwickler marcus@jet.franken.de

Wine der freiewindows Emulator. Marcus Meißner Wine und opensuse Entwickler marcus@jet.franken.de Wine der freiewindows Emulator Marcus Meißner Wine und opensuse Entwickler marcus@jet.franken.de Warum überhaupt? Nicht portierte Software: kleine Firma keine Leute strategische Gründe Technische Herausforderung

Mehr

Projektpraktikum AR Fernrohr - Jens Epe

Projektpraktikum AR Fernrohr - Jens Epe Projektpraktikum AR Fernrohr - Jens Epe Anforderungen an das Rendersystem Alternativen zu Irrlicht und Ogre3D OpenSceneGraph Crystal Space Vergleich der 4 Systeme Auswahl des Favoriten durch Gegenüberstellung

Mehr

Eine Einführung Computergrafik SS14 Timo Bourdon

Eine Einführung Computergrafik SS14 Timo Bourdon Eine Einführung Computergrafik SS14 Timo Bourdon Organisatorisches Übung am Freitag den 11. Juli entfällt! Zum OpenGL-Übungsblatt OpenGL 3.0 oder höher notwendig (Shading Language 1.50 oder höher) CIP

Mehr

Thomas Sillmann. Swift im Detail HANSER

Thomas Sillmann. Swift im Detail HANSER Thomas Sillmann Swift im Detail HANSER Inhalt 1 Apples neue Programmiersprache: Swift 1 1.1 Willkommen bei Swift! 1 1.2 Warum Swift? 1 1.3 Swift und Objective-C 2 1.4 Voraussetzungen für die Swift-Entwicklung

Mehr

Anwendungsentwicklung mit dem Windows Phone 7

Anwendungsentwicklung mit dem Windows Phone 7 Anwendungsentwicklung mit dem Windows Phone 7 Anwendungen auf Basis von XNA IPD Tichy Lehrstuhl für Programmiersysteme KIT die Kooperation von Forschungszentrum Karlsruhe GmbH und Universität Karlsruhe

Mehr

2. Der ParaNut-Prozessor "Parallel and more than just another CPU core"

2. Der ParaNut-Prozessor Parallel and more than just another CPU core 2. Der ParaNut-Prozessor "Parallel and more than just another CPU core" Neuer, konfigurierbarer Prozessor Parallelität auf Daten- (SIMD) und Thread-Ebene Hohe Skalierbarkeit mit einer Architektur neues

Mehr

Computerspiele Sommer Was sind Computerspiele? (c) 2013, Peter Sturm, Universität Trier 1

Computerspiele Sommer Was sind Computerspiele? (c) 2013, Peter Sturm, Universität Trier 1 Was sind Computerspiele? (c) 2013, Peter Sturm, Universität Trier 1 Interdisziplinär Graphik Design Mathematik Physik VWL Psychologie Informatik Audio Musik Sprache Text BWL Regie Kamera Schauspiel (c)

Mehr

Version Referenzhandbuch. DiscretePhoton H.264 encoder. DiscretePhoton.

Version Referenzhandbuch. DiscretePhoton H.264 encoder. DiscretePhoton. Version 1.1.5 Referenzhandbuch DiscretePhoton H.264 encoder DiscretePhoton www.discretephoton.com Referenzhandbuch Über DiscretePhoton H.264-Encoder DiscretePhoton H.264 encoder Window version ist geliefert

Mehr

Vorbemerkungen. Art of Game Programming Winter (c) Peter Sturm, Universität Trier 1. ! Vorlesung. ! Übung. ! Was nicht vorkommt!

Vorbemerkungen. Art of Game Programming Winter (c) Peter Sturm, Universität Trier 1. ! Vorlesung. ! Übung. ! Was nicht vorkommt! Art of Game Programming Winter 2011 Vorbemerkungen! Vorlesung! Donnerstags, 10-12 Uhr! Wahrscheinlich anderer Raum! Übung! Projektorientiert, Kleingruppen, 3-4 Aufgaben! Was nicht vorkommt!! Keine Walkthroughs,

Mehr

Computergrafik Universität Osnabrück, Henning Wenke,

Computergrafik Universität Osnabrück, Henning Wenke, Computergrafik Universität Osnabrück, Henning Wenke, 2012-06-25 Kapitel XV: Parallele Algorithmen mit OpenCL 15.1 Parallele Programmierung Quellen: V.a. Wikipedia. Leistungsdaten unter Vorbehalt. Bitte

Mehr

Eine Einführung in die Architektur moderner Graphikprozessoren

Eine Einführung in die Architektur moderner Graphikprozessoren Eine Einführung in die Architektur moderner Graphikprozessoren Seminarvortrag von Sven Schenk WS 2005/2006 Universität Mannheim, Lehrstuhl für Rechnerarchitektur Inhalt Historische Eckpunkte Einführung

Mehr

Physikalische Berechnungen mit General Purpose Graphics Processing Units (GPGPUs)

Physikalische Berechnungen mit General Purpose Graphics Processing Units (GPGPUs) Fakultätsname XYZ Fachrichtung XYZ Institutsname XYZ, Professur XYZ Physikalische Berechnungen mit General Purpose Graphics Processing Units (GPGPUs) im Rahmen des Proseminars Technische Informatik Juni

Mehr

Rheinisch-Westfälische Technische Hochschule Aachen. Seminararbeit

Rheinisch-Westfälische Technische Hochschule Aachen. Seminararbeit Rheinisch-Westfälische Technische Hochschule Aachen Seminararbeit Analyse von General Purpose Computation on Graphics Processing Units Bibliotheken in Bezug auf GPU-Hersteller. Gregori Kerber Matrikelnummer

Mehr

Compute Unified Device Architecture CUDA

Compute Unified Device Architecture CUDA Compute Unified Device Architecture 06. Februar 2012 1 / 13 Gliederung 2 / 13 : Compute Unified Device Architecture entwickelt von Nvidia Corporation spezifiziert Software- und Hardwareeigenschaften Ziel:

Mehr

OpenCL. OpenCL. Boris Totev, Cornelius Knap

OpenCL. OpenCL. Boris Totev, Cornelius Knap OpenCL OpenCL 1 OpenCL Gliederung Entstehungsgeschichte von OpenCL Was, warum und überhaupt wieso OpenCL CUDA, OpenGL und OpenCL GPUs OpenCL Objekte Work-Units OpenCL Adressbereiche OpenCL API Codebeispiel

Mehr

Rechnerstrukturen Wintersemester 2002/03. Maschinensprache Opcode, Operanden, Adressierung Für Menschen schwer verdauliche Folgen von 0 und 1

Rechnerstrukturen Wintersemester 2002/03. Maschinensprache Opcode, Operanden, Adressierung Für Menschen schwer verdauliche Folgen von 0 und 1 (c) Peter Sturm, Universität Trier 1 Rechnerstrukturen 8. Assembler Für Hartgesottene Maschinensprache Opcode, Operanden, Adressierung Für Menschen schwer verdauliche Folgen von 0 und 1 Assembler Symbolische

Mehr

Grundlagen der OO- Programmierung in C#

Grundlagen der OO- Programmierung in C# Grundlagen der OO- Programmierung in C# Technische Grundlagen 1 Dr. Beatrice Amrhein Überblick Visual Studio: Editor und Debugging Die Datentypen Methoden in C# Die Speicherverwaltung 2 Visual Studio 3

Mehr

Computergrafik SS 2010 Henning Wenke. Kapitel 21: OpenGL 3.1

Computergrafik SS 2010 Henning Wenke. Kapitel 21: OpenGL 3.1 Computergrafik SS 2010 Henning Wenke Kapitel 21: OpenGL 3.1 1 Einordnung 2 Über OpenGL API für Rastergrafik Prozedural Hardwarenah Plattform-, Betriebssystem- und Sprachunabhängig Spezifikationen variieren

Mehr

Einführung in Truevision3D

Einführung in Truevision3D Einführung in Truevision3D Einleitung: In diesem Artikel werden wir uns mit der Truevision Engine beschäftigen, ihr werdet lernen wie man in C# auf die Engine zugreift und wie man einfache 2D Ausgaben

Mehr

GPU Programmierung 6. Juli 2004 M. Christen, T. Egartner, P. Zanoni

GPU Programmierung 6. Juli 2004 M. Christen, T. Egartner, P. Zanoni GPU Programmierung 6. Juli 2004 M. Christen, T. Egartner, P. Zanoni 1 Ablauf GPU Programm Vertex und Fragment Shader 2 3 4 5 Image Processing 6 Ablauf GPU Programm Ablauf GPU Programm Vertex und Fragment

Mehr

Stream Processing und High- Level GPGPU Sprachen

Stream Processing und High- Level GPGPU Sprachen Stream Processing und High- Level GPGPU Sprachen Seminar Programmierung von Grafikkarten Jens Breitbart Problem 5000% 4000% 3000% 2000% Rechenleistung: +71% pro Jahr Bandbreite: +25% pro Jahr Zugriffszeit:

Mehr

CUDA. Axel Jena, Jürgen Pröll. Multi-Core Architectures and Programming. Friedrich-Alexander-Universität Erlangen-Nürnberg Axel Jena, Jürgen Pröll 1

CUDA. Axel Jena, Jürgen Pröll. Multi-Core Architectures and Programming. Friedrich-Alexander-Universität Erlangen-Nürnberg Axel Jena, Jürgen Pröll 1 CUDA Axel Jena, Jürgen Pröll Multi-Core Architectures and Programming Axel Jena, Jürgen Pröll 1 Warum Tesla? Traditionelle Graphikkarten Getrennte Prozessoren für Vertex- / Pixelberechnungen - Nachteil:

Mehr

PhysX Evaluation. Softwarepraktikum Computergraphik. Daniel Brock, Robert Kreuzer, Simon Kufner. 5. Juli 2010

PhysX Evaluation. Softwarepraktikum Computergraphik. Daniel Brock, Robert Kreuzer, Simon Kufner. 5. Juli 2010 PhysX Evaluation Softwarepraktikum Computergraphik Daniel Brock, Robert Kreuzer, Simon Kufner 5. Juli 2010 Daniel Brock, Robert Kreuzer, Simon Kufner () PhysX Evaluation 5. Juli 2010 1 / 17 1 Aufgabenstellung

Mehr

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

Szenengraphen. Codruţa Cosma. Universität Ulm Sommersemester 2005 Szenengraphen Codruţa Cosma Universität Ulm Sommersemester 2005 Übersicht Einführung VRML OpenSceneGraph Java3D vs. VRML OpenGL vs. Java3D und VRML Zusammenfassung 2/26 Was sind Szenengraphen? Datenstruktur

Mehr

GPGPU-Programmierung

GPGPU-Programmierung 12 GPGPU-Programmierung 2013/04/25 Diese Folien enthalten Graphiken mit Nutzungseinschränkungen. Das Kopieren der Graphiken ist im Allgemeinen nicht erlaubt. Motivation (1) General Purpose Computing on

Mehr

Frameworks: Agenda. Aufgabe von Medien-Frameworks. Microsoft DirectX SDL. Microsoft Windows Media Java Media Framework

Frameworks: Agenda. Aufgabe von Medien-Frameworks. Microsoft DirectX SDL. Microsoft Windows Media Java Media Framework Frameworks: Agenda Aufgabe von Medien-Frameworks Microsoft DirectX SDL Microsoft Windows Media Java Media Framework Vorführung: DirectX SDK Samples Vorführung: WindowsMedia9 HD DirectX: Literatur www.microsoft.com/directx

Mehr

GPU Programmierung. Thorsten Grosch

GPU Programmierung. Thorsten Grosch Thorsten Grosch Willkommen zur ersten Vorlesung! g Heute Organisatorisches Vorstellung von Team und Vorlesung Historischer Rückblick zu GPUs 2 Das Team Vorlesung Jun.-Prof. Thorsten Grosch AG Computervisualistik

Mehr

Mobile Anwendungsentwicklung - Überblick über ios & Swift I -

Mobile Anwendungsentwicklung - Überblick über ios & Swift I - Mobile Anwendungsentwicklung - Überblick über & I - Prof. Dr. Michael Cebulla 4. November 2016 Hochschule Schmalkalden Wintersemester 2016/17 1 / 38 M. Cebulla Mobile Anwendungsentwicklung Gliederung 1

Mehr

Universität Trier FB IV Mathematik PS Mathematics for 3D Game Programming & Computer Graphics - WS 07/08 Seminarleiter: Prof. Dr.

Universität Trier FB IV Mathematik PS Mathematics for 3D Game Programming & Computer Graphics - WS 07/08 Seminarleiter: Prof. Dr. The Rendering Pipeline Universität Trier FB IV Mathematik PS Mathematics for 3D Game Programming & Computer Graphics - WS 07/08 Seminarleiter: Prof. Dr. Volker Schulz Referent: Carsten Kurz Datum 25.10.07

Mehr

Das etwas andere Smartphone

Das etwas andere Smartphone Das etwas andere Smartphone Frank Prengel Technical Evangelist Microsoft Deutschland GmbH http://blogs.msdn.com/windowsphone 01./02. Dezember 2010 Köln www.iphonedevcon.de Microsoft? Auf der iphone DevCon??

Mehr

Praktikum: Spieleengine im Eigenbau

Praktikum: Spieleengine im Eigenbau Seite 1/17 Praktikum Spieleengine im Eigenbau Alexander Weggerle, Tobias Bäuerle 19.10.09 http://www.saschawillems.de Praktikum: Spieleengine im Eigenbau Seite 2/17 Praktikum Spieleengine im Eigenbau Alexander

Mehr

Seminar. Echtzeit-Rendering SS DirectX. Matthias Scharek

Seminar. Echtzeit-Rendering SS DirectX. Matthias Scharek Fachbereich 4: Informatik Seminar Echtzeit-Rendering SS 2008 DirectX vorgelegt von Matthias Scharek Betreuer: Prof. Dr. Stefan Müller (Institut für Computervisualistik, AG Computergrafik) Koblenz, 11.

Mehr

PRIP-Preis. Effizientes Object Tracking durch Programmierung von Mehrkernprozessoren und Grafikkarten

PRIP-Preis. Effizientes Object Tracking durch Programmierung von Mehrkernprozessoren und Grafikkarten Masterarbeit @ PRIP-Preis Effizientes Object Tracking durch Programmierung von Mehrkernprozessoren und Grafikkarten Michael Rauter Pattern Recognition and Image Processing Group Institute of Computer Aided

Mehr

Seminar. Echtzeit-Rendering SS Geometry Shader. Franz Peschel

Seminar. Echtzeit-Rendering SS Geometry Shader. Franz Peschel Fachbereich 4: Informatik Seminar Echtzeit-Rendering SS 2008 Geometry Shader vorgelegt von Franz Peschel Betreuer: Prof. Dr. Stefan Müller (Institut für Computervisualistik, AG Computergrafik) Koblenz,

Mehr

Geometry Shader. Ausarbeitung im Rahmen des Seminars Echtzeit Rendering" Von Sebastian Jackel Franz Peschel. Geometry Shader 1

Geometry Shader. Ausarbeitung im Rahmen des Seminars Echtzeit Rendering Von Sebastian Jackel Franz Peschel. Geometry Shader 1 Geometry Shader Ausarbeitung im Rahmen des Seminars Echtzeit Rendering" Von Sebastian Jackel Franz Peschel Geometry Shader 1 Inhalt I Einführung II Facts Renderpipeline III Funktionsweise Geometry Shader

Mehr

Proseminar: Virtuelle Präsenz. Vortrag: Steve Rechtenbach

Proseminar: Virtuelle Präsenz. Vortrag: Steve Rechtenbach Proseminar: Virtuelle Präsenz Vortrag: Steve Rechtenbach Themen: 2/22 Einführung Was ist OpenGL? / Entwicklung Fakten Kleines(!) Beispiel Hello OpenGL Shader Zusammenfassung OpenGL vs Direct3D Einführung:

Mehr

Zum Aufwärmen nocheinmal grundlegende Tatsachen zum Rechnen mit reelen Zahlen auf dem Computer. Das Rechnen mit Gleitkommazahlen wird durch den IEEE

Zum Aufwärmen nocheinmal grundlegende Tatsachen zum Rechnen mit reelen Zahlen auf dem Computer. Das Rechnen mit Gleitkommazahlen wird durch den IEEE Zum Aufwärmen nocheinmal grundlegende Tatsachen zum Rechnen mit reelen Zahlen auf dem Computer. Das Rechnen mit Gleitkommazahlen wird durch den IEEE 754 Standard festgelegt. Es stehen sogenannte einfach

Mehr

Line-of-Business-Apps mit der Universal Windows Platform entwickeln. Thomas Claudius

Line-of-Business-Apps mit der Universal Windows Platform entwickeln. Thomas Claudius Line-of-Business-Apps mit der Universal Windows Platform entwickeln Thomas Claudius Huber @thomasclaudiush Thomas Claudius Huber Principal Consultant bei Trivadis Pluralsight-Autor, Buchautor C#, XAML,

Mehr

GPGPU-Programmierung

GPGPU-Programmierung 12 GPGPU-Programmierung 2014/04/29 Diese Folien enthalten Graphiken mit Nutzungseinschränkungen. Das Kopieren der Graphiken ist im Allgemeinen nicht erlaubt. Motivation (1) General Purpose Computing on

Mehr

XNA XNA s Not Acronymed. Vorlesung Virtual Reality Wintersemester 2007/2008 Jonas Schmidt, Martin Schiewe

XNA XNA s Not Acronymed. Vorlesung Virtual Reality Wintersemester 2007/2008 Jonas Schmidt, Martin Schiewe XNA XNA s Not Acronymed Vorlesung Virtual Reality Wintersemester 2007/2008 Jonas Schmidt, Martin Schiewe Überblick I. XNA XNA s Not Acronymed II. III. IV. I. Entwicklung von XNA II. Einordnung in die Microsoft-Welt

Mehr

Inhalt. Installieren Projekt erstellen UI Bedienen Objekte importieren Blueprints C++

Inhalt. Installieren Projekt erstellen UI Bedienen Objekte importieren Blueprints C++ Eine Einführung Inhalt Installieren Projekt erstellen UI Bedienen Objekte importieren Blueprints C++ Installieren Launcher Engine Visual Studio Registrieren Epic Launcher herunterladen (www.unrealengine.com)

Mehr

> High-Level Programmierung heterogener paralleler Systeme

> High-Level Programmierung heterogener paralleler Systeme > High-Level Programmierung heterogener paralleler Systeme Projektseminar im SoSe 2012 Prof. Sergei Gorlatch, Michel Steuwer, Tim Humernbrum AG Parallele und Verteilte Systeme, Westfälische Wilhelms-Universität

Mehr

Neues vom STRIP Forth-Prozessor

Neues vom STRIP Forth-Prozessor Neues vom STRIP Forth-Prozessor Tagung der Forth-Gesellschaft März 2014 Bad Vöslau/Österreich Willi Stricker -Prozessor Inhalt 1. STRIP-Befehlssatz Bisher: minimaler Befehlssatz neu: erweiterter Befehlssatz

Mehr

7. Organisation von Informationen

7. Organisation von Informationen Computeranwendung in der Chemie Informatik für Chemiker(innen) 7. Organisation von Informationen Jens Döbler 2003 "Computer in der Chemie", WS 2003-04, Humboldt-Universität VL7 Folie 1 Grundlagen Programme

Mehr

Motivation (GP)GPU CUDA Zusammenfassung. CUDA und Python. Christian Wilms. Integriertes Seminar Projekt Bildverarbeitung

Motivation (GP)GPU CUDA Zusammenfassung. CUDA und Python. Christian Wilms. Integriertes Seminar Projekt Bildverarbeitung CUDA und Python Christian Wilms Integriertes Seminar Projekt Bildverarbeitung Universität Hamburg WiSe 2013/14 12. Dezember 2013 Christian CUDA und Python 1 Gliederung 1 Motivation 2 (GP)GPU 3 CUDA 4 Zusammenfassung

Mehr

Computergrafik Universität Osnabrück, Henning Wenke,

Computergrafik Universität Osnabrück, Henning Wenke, Computergrafik Universität Osnabrück, Henning Wenke, 212-5-7 Noch Kapitel III: Transformationen 2D Rotation um freies Rotationszentrum y α P(p x, p y ) Ziel: Rotiere Punkte r i um Winkel α um P und erhalte

Mehr

Modellierung. Oliver Hartmann

Modellierung. Oliver Hartmann Modellierung Oliver Hartmann oliver.hartmann@uni-ulm.de Inhalt Boolesche Operationen Splines B-Splines Bezier-Kurven NURBS Anwendung Sculpting Volumengrafik Marching Cubes Ray Casting Texture Mapping Boolesche

Mehr

GPU Programmierung. Thorsten Grosch

GPU Programmierung. Thorsten Grosch Thorsten Grosch Willkommen zur ersten Vorlesung! g Heute Organisatorisches Vorstellung von Team und Vorlesung Historischer Rückblick zu GPUs 2 Das Team Vorlesung Jun.-Prof. Thorsten Grosch AG Computervisualistik

Mehr

Konzepte von Betriebssystem- Komponenten:

Konzepte von Betriebssystem- Komponenten: Konzepte von Betriebssystem- Komponenten: OS für kleine Endgeräte: Symbian OS Sven Walter Folie 1/25 S.Walter Überblick 1. Einleitung 2. Hardware Anforderungen und Architektur 3. Betriebssystem Architektur

Mehr