DirectX Graphics: DirectX Graphics: Direct3D 10 and Direct3D 10 and Beyond Beyond Sam Z. Glassenberg Sam Z. Glassenberg Lead Program Manager Lead Program Manager Graphics Platforms Unit Graphics Platforms Unit Microsoft Corporation Microsoft Corporation
37
Embed
DirectX Graphics: Direct3D 10 and Beyond Sam Z. Glassenberg Lead Program Manager Graphics Platforms Unit Microsoft Corporation.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
DirectX Graphics: DirectX Graphics: Direct3D 10 and Beyond Direct3D 10 and Beyond
Sam Z. GlassenbergSam Z. GlassenbergLead Program ManagerLead Program ManagerGraphics Platforms UnitGraphics Platforms UnitMicrosoft CorporationMicrosoft Corporation
Graphics Core In Windows VistaGraphics Core In Windows Vista
DXG Kernel Kernel-ModeDriver
User ModeUser Mode
Kernel ModeKernel Mode
IHV-writtenIHV-writtencodecode
Microsoft-Microsoft-written codewritten code
OpenGLICD
User-ModeDriver
LegacyD3D APIs
Direct3D10D3D9 OpenGL
MIL
Common pipeline (DDI)
D3D9Ex
DXVA
MediaFoundation
Win32 Kernel
GDI DXGI
PIX
WPFDWM
Graphics Core In Windows VistaGraphics Core In Windows Vista
Direct3D10
OutlineOutlineThe next few yearsThe next few years
Direct3D 10 and Direct3D “10.1”Direct3D 10 and Direct3D “10.1”Design ImperativesDesign Imperatives
Features and CapabilitiesFeatures and Capabilities
ApplicationsApplications
The Situation TodayThe Situation TodayNo single graphics hardware target No single graphics hardware target
CPU-bound games and applicationsCPU-bound games and applicationsBandwidth and CPU cycles are the Bandwidth and CPU cycles are the bottleneck in multiple areas (physics, AI)bottleneck in multiple areas (physics, AI)
Large amount of CPU resources spent Large amount of CPU resources spent directing the GPUdirecting the GPU
GPUGPU
CPUCPU
The Situation TodayThe Situation TodayNo single graphics hardware target No single graphics hardware target
CPU-bound games and applicationsCPU-bound games and applicationsBandwidth and CPU cycles are the Bandwidth and CPU cycles are the bottleneck in multiple areas (physics, AI)bottleneck in multiple areas (physics, AI)
Large amount of CPU resources spent Large amount of CPU resources spent directing the GPUdirecting the GPU
GPU overly-specializedGPU overly-specialized
Direct3D 10Direct3D 10Unleashing the power of the GPUUnleashing the power of the GPU
ConsistencyConsistency – guarantee a common – guarantee a common feature-set with feature-set with strictstrict requirements requirements
Single Pass Render-To-CubemapSingle Pass Render-To-Cubemap
x
y z
uv
Geometry Shader
Single Pass Render-To-CubemapSingle Pass Render-To-Cubemap
Render-To-VolumeRender-To-Volume
Geometry Shader
Stream OutputStream OutputDynamic procedural content exampleDynamic procedural content example
Shader Model 4.0Shader Model 4.0A new level of programmabilityA new level of programmability
Common Shader Core Common Shader Core
Full integer/bitwise instruction setFull integer/bitwise instruction setMassively parallel image and data processingMassively parallel image and data processing
Constant BuffersConstant BuffersUpdate shader constant data (light positions, Update shader constant data (light positions, material info, camera info, etc.) in bulk, only material info, camera info, etc.) in bulk, only when neededwhen needed
Direct3D 10 Optional Format SupportDirect3D 10 Optional Format Support>1 Sample MSAA>1 Sample MSAA
32-bit FP filtering32-bit FP filtering
RGB32 Rendertarget (RGBA32 is required)RGB32 Rendertarget (RGBA32 is required)
Hardware (and applications) will scale Hardware (and applications) will scale on perf, not feature selection on perf, not feature selection
Increases breadth of applicabilityIncreases breadth of applicability
Performance is Performance is criticalcritical for a good experiencefor a good experience
The API exposes Direct3D 10-class hardware The API exposes Direct3D 10-class hardware Performance-focused APIPerformance-focused API
No downlevel hardware support No downlevel hardware support
Clean and consistent APIClean and consistent API All features guaranteed All features guaranteed
Direct3D 10 takes full Direct3D 10 takes full advantage of WDDM advantage of WDDM
Direct3D 10 is Direct3D 10 is Windows Vista/WDDM-only Windows Vista/WDDM-only
WDDM-basic guaranteed to WDDM-basic guaranteed to Direct3D 10 developersDirect3D 10 developers
Kernel ModeKernel Mode
User Mode
Direct3D10: An Inflection PointDirect3D10: An Inflection Point
User-Mode Driver
Graphics Hardware
DXGKmlGPU
Mem Mgr.GPU
Scheduler
Direct3D
Application
Kernel-Mode Driver
Direct3D 10 StatusDirect3D 10 Status
Hardware spec frozen for over a yearHardware spec frozen for over a yearFirst publicly-available Tech Preview in First publicly-available Tech Preview in December 2005December 2005
Aligned with Windows Vista CTP’sAligned with Windows Vista CTP’sUpdates bimonthlyUpdates bimonthly
Direct3D 10 Beta in Windows Vista Beta 2Direct3D 10 Beta in Windows Vista Beta 2
RTM in Windows VistaRTM in Windows VistaCurrently underwayCurrently underway
IHV driver developmentIHV driver developmentConformance test developmentConformance test developmentLaunch titlesLaunch titles
The Next Step: “Direct3D 10.1”The Next Step: “Direct3D 10.1”
Enable applications to further exploit Enable applications to further exploit multicore for renderingmulticore for rendering
Fewer API calls for reflections and refractionsFewer API calls for reflections and refractionsSupport for indexable, generalized cubemap arraysSupport for indexable, generalized cubemap arrays
x
y z
x
y z
x
y z
x
y z
Call To ActionCall To Action
Invest in performant Direct3D graphics – Invest in performant Direct3D graphics – end-user value scales with performanceend-user value scales with performance
Not just games! Not just games! (but games will look (but games will look muchmuch better) better)
Direct3D 10 and WDDM for 2007Direct3D 10 and WDDM for 2007
Direct3D 10.1 and WDDM 2.1 for “next”Direct3D 10.1 and WDDM 2.1 for “next”
Additional ResourcesAdditional Resources
DirectX Developer Center DirectX Developer Center http://http://msdn.microsoft.commsdn.microsoft.com/DirectX/DirectX
Direct3D 10 Tech PreviewDirect3D 10 Tech PreviewAvailable in the DirectX SDKAvailable in the DirectX SDK
Includes ~25 samples and tutorials – Includes ~25 samples and tutorials – with videoswith videos
it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.