DirectX: A Brief Overview

13
DirectX: A Brief Overview Daniel D’Agostino

Transcript of DirectX: A Brief Overview

Page 1: DirectX: A Brief Overview

DirectX:A Brief Overview

Daniel D’Agostino

Page 2: DirectX: A Brief Overview

Example: Far Cry 2

Page 3: DirectX: A Brief Overview

Example: Crysis

Page 4: DirectX: A Brief Overview

Example: Assassin’s Creed

Page 5: DirectX: A Brief Overview

What is DirectX?

Direct3D and D3DX DirectInput and XInput Direct2D DirectSetup XACT, XAudio2,

X3DAudio, XAPO, XAPOFX

Deprecated APIs– DirectSound– DirectPlay– DirectMusic– DirectShow– DirectDraw

Page 6: DirectX: A Brief Overview

What can be done with DirectX?

Games Simulation software Terrain editors Media players … and so on

Page 7: DirectX: A Brief Overview

Why DirectX?

Direct3D: performance– Win32 GDI is slow– Rendering requirements– Abusing the Windows message loop

DirectInput– Background application input retrieval– Support for any device, as well as force feedback– Action mapping

Page 8: DirectX: A Brief Overview

Direct3D

Object Space World Space View Space Screen Space

World Matrix View Matrix Projection Matrix

Page 9: DirectX: A Brief Overview

DirectX Alternatives: OpenGL

OpenGL– Graphics only– Platform-independent– C-based– Not as popular as

Direct3D

Direct3D– Part of DirectX– Microsoft only– COM (C++) –based– More popular in game

industry

Page 10: DirectX: A Brief Overview

DirectX Alternatives: XNA

DirectX– Professionals– Low-level– C++ or managed .NET

language

XNA– Hobbyists, students– High-level– C# - slower

Page 11: DirectX: A Brief Overview

Summary

DirectX is a set of low-level APIs for high-performance multimedia

Mostly used in game development Needed mainly for performance reasons Direct3D allows manipulation of 3D geometry Comparable to OpenGL and XNA

Page 12: DirectX: A Brief Overview

Resources

Toymaker by Keith Ditchburn – game industry veteran and lecturer on games programming at Teesside University

– http://www.toymaker.info/ DirectX Developer Center

– http://msdn.microsoft.com/en-us/directx/default.aspx DirectX SDK Documentation:

– http://msdn.microsoft.com/en-us/library/aa139818.aspx

Page 13: DirectX: A Brief Overview

Questions

Ask away… …or contact me at your leisure using:

dandago at gmail dot com