42
Future Directions Future Directions In Graphics In Graphics David Blythe David Blythe Software Architect Software Architect Windows Graphics Windows Graphics Microsoft Corporation Microsoft Corporation

Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Embed Size (px)

Citation preview

Page 1: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Future Directions Future Directions In GraphicsIn Graphics

David BlytheDavid BlytheSoftware ArchitectSoftware ArchitectWindows GraphicsWindows GraphicsMicrosoft CorporationMicrosoft Corporation

Page 2: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

The VisionThe Vision

Windows delivers unparalleled graphics Windows delivers unparalleled graphics and multimedia experience in all and multimedia experience in all application areasapplication areas

GamesGamesWorkstation (CAD, Content Creation,…)Workstation (CAD, Content Creation,…)PresentationPresentationImagingImagingVideoVideo

Eagerly driving new technologies togetherEagerly driving new technologies togetherwith our hardware and software partnerswith our hardware and software partners

Page 3: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

This SessionThis Session

Overview major technology partsOverview major technology partsProvide context for more detailed sessionsProvide context for more detailed sessions

Point out interactions between componentsPoint out interactions between components

Describe where we are going longer termDescribe where we are going longer term

Page 4: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Session OutlineSession Outline

Windows Graphics Big PictureWindows Graphics Big Picture

Windows Display Driver ModelWindows Display Driver Model

Rendering APIs (Direct3D, OpenGL, GDI)Rendering APIs (Direct3D, OpenGL, GDI)

Device APIs (DXGI)Device APIs (DXGI)

Desktop Window ManagerDesktop Window Manager

Media APIs (DirectX Video Acceleration)Media APIs (DirectX Video Acceleration)

Presentation APIs (WPF)Presentation APIs (WPF)

FutureFuture

Page 5: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Big PictureBig PictureSimplifiedSimplified

WDDM

DXVA

XPDM

GDI+

Direct3D GDI

MIL

Games(Oblivion)

DXGI

Workstation(Inventor)

Imaging(PhotoViewer)

Video(MediaPlayer)

Presentation(Office) ……

User

WindowsPresentationFoundation

OpenGL

MediaFoundationPIX

DesktopWindow Mgr

WindowsColor System

PrintPrintTerminal ServerTerminal Server

Remote AssistanceRemote Assistance……

DShow

Shell

Page 6: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft 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

Page 7: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Windows Display Driver ModelWindows Display Driver Model

Bedrock upon which all graphics are builtBedrock upon which all graphics are builtFundamental principleFundamental principle

Graphics Just WorksGraphics Just Works

Re-architect entire driver stackRe-architect entire driver stackConsolidate 10 years of evolutionConsolidate 10 years of evolution

New driver model deliversNew driver model deliversStabilityStabilitySecuritySecurityAvailability (application virtualization)Availability (application virtualization)PerformancePerformance

Page 8: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Windows Display Driver ModelWindows Display Driver Model

Staged evolution of driver modelStaged evolution of driver modelWDDM 1.0 model supports current hardwareWDDM 1.0 model supports current hardware

E.g., pre-Windows Vista hardwareE.g., pre-Windows Vista hardware

Advanced model (WDDM 2.x) utilizes new Advanced model (WDDM 2.x) utilizes new hardware featureshardware features

Post Windows VistaPost Windows Vista

More efficient virtualizationMore efficient virtualization

Old Windows XP driver model still Old Windows XP driver model still supported for compatibilitysupported for compatibility

No new featuresNo new features

Page 9: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Windows Display Driver ModelWindows Display Driver Model

For more information: For more information: WDDM v2 and WDDM v2 and BeyondBeyond, Steve Pronovost, et al., Steve Pronovost, et al.

Page 10: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Rendering APIsRendering APIs

Lots to choose fromLots to choose fromGDI/GDI+GDI/GDI+

DirectDrawDirectDraw

Direct3D [3..10]Direct3D [3..10]

OpenGLOpenGL

(Windows Presentation Foundation)(Windows Presentation Foundation)

Break into categoriesBreak into categoriesLegacyLegacy

Mainstream (GDI, Direct3D 9/9Ex)Mainstream (GDI, Direct3D 9/9Ex)

New (Direct3D 10)New (Direct3D 10)

Page 11: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Legacy APIsLegacy APIs

DXG KernelKernel-Mode

Driver

User ModeUser Mode

Kernel ModeKernel Mode

IHV-writtenIHV-writtencodecode

Microsoft-Microsoft-written codewritten code

OpenGLICD

User-ModeDriver

LegacyD3D APIs

Direct3D10

D3D9 OpenGL

MIL

Common pipeline (DDI)

D3D9Ex

DXVA

MediaFoundation

Win32 Kernel

GDI DXGI

PIX

WPFDWM

Page 12: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Legacy APIsLegacy APIs

Older Direct3D immediate mode Older Direct3D immediate mode APIs supportedAPIs supported

D3DRM (retained mode) API retiredD3DRM (retained mode) API retired

Map older runtimes onto Direct3D 9 DDIsMap older runtimes onto Direct3D 9 DDIsE.g., runtimes ≤ Direct3D 8, DirectDrawE.g., runtimes ≤ Direct3D 8, DirectDraw

Fixed-function onto shaders, etc.Fixed-function onto shaders, etc.

Direct3D9 interface matches DirectX 9.0cDirect3D9 interface matches DirectX 9.0cSame behavior as Direct3D 9 on Windows XPSame behavior as Direct3D 9 on Windows XP

Maintain application compatibilityMaintain application compatibility

Page 13: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Direct3D9ExDirect3D9Ex

DXG Kernel Kernel-ModeDriver

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

User ModeUser Mode

Kernel ModeKernel Mode

Page 14: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Direct3D9ExDirect3D9Ex

Enhanced version of Direct3D 9Enhanced version of Direct3D 9Also known as “DX9.L”Also known as “DX9.L”

Cross-process shared surfacesCross-process shared surfaces

““Unlimited memory”Unlimited memory”All memory resources are “managed”All memory resources are “managed”

Resource management controlsResource management controlsPrioritization of resourcesPrioritization of resources

Antialiased text rendering supportAntialiased text rendering supportMonochrome texture filter with large kernel sizeMonochrome texture filter with large kernel size

No more “device lost”No more “device lost”Less frequent “device removed”Less frequent “device removed”

Page 15: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

OpenGLOpenGL

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

Page 16: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

OpenGLOpenGL

Three options for Three options for Windows Vista DevelopersWindows Vista Developers

OpenGL 1.1 software implementation OpenGL 1.1 software implementation

XP driver model OpenGL ICDsXP driver model OpenGL ICDsNot DWM-compatible, DWM shuts offNot DWM-compatible, DWM shuts off

3rd party WDDM OpenGL ICDs3rd party WDDM OpenGL ICDsDWM compliantDWM compliant

Limited inbox support for Limited inbox support for application compatibilityapplication compatibility

Using Direct3D 9Using Direct3D 9

Page 17: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

GDI/GDI+GDI/GDI+

Workhorse for WindowsWorkhorse for WindowsPresentation/UI, device control, etc.Presentation/UI, device control, etc.

Reduced hardware acceleration Reduced hardware acceleration in Windows Vistain Windows Vista

Necessary to accomplish Necessary to accomplish WDDM implementationWDDM implementation

Continue to tune before releaseContinue to tune before release

Continue to invest in GDI in futureContinue to invest in GDI in futureProtect API investmentProtect API investment

Enhance where feasibleEnhance where feasible

Page 18: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Direct3D 10 And DXGIDirect3D 10 And DXGI

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

Page 19: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Direct3D 10Direct3D 10

Next Version of Direct3DNext Version of Direct3D

Supported in Windows VistaSupported in Windows VistaProposed Premium Logo requirementProposed Premium Logo requirement

Major improvements inMajor improvements inHardware consistencyHardware consistency

Rigorous specification, elimination of capability bitsRigorous specification, elimination of capability bits

Programmer expressivenessProgrammer expressivenessUnified, more capable, shader programming modelUnified, more capable, shader programming model

Flexible memory modelFlexible memory model

New pipeline stagesNew pipeline stages

WDDM + Direct3D 10 are fundamental improvementWDDM + Direct3D 10 are fundamental improvementto the Windows gaming platformto the Windows gaming platform

Page 20: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Direct3D 10Direct3D 10

Additional information: Additional information: DirectX Graphics: DirectX Graphics: Direct3D 10 and BeyondDirect3D 10 and Beyond, , Sam GlassenbergSam Glassenberg

Page 21: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

DXGIDXGI

Separate rendering from device managementSeparate rendering from device management

DXGI (eventually) doesDXGI (eventually) doesAdapter managementAdapter management

Display mode managementDisplay mode management

Present to monitorPresent to monitor

Output managementOutput management

Gamma/ColorGamma/Color

Improvements of GDI 256 entry tableImprovements of GDI 256 entry table

Monitor controlsMonitor controls

Long term, subsumes functionality from GDILong term, subsumes functionality from GDI

Currently only works with Direct3D 10Currently only works with Direct3D 10

Page 22: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Desktop Window ManagerDesktop Window Manager

New desktop experience using WPF and DirectXNew desktop experience using WPF and DirectXUses new D3D9Ex interfacesUses new D3D9Ex interfaces

Desktop Window Manager (DWM)Desktop Window Manager (DWM)Composited desktop Composited desktop

Window movement without repainting underlying windowsWindow movement without repainting underlying windows

No more dragging garbageNo more dragging garbage

Client areas from applicationsClient areas from applicationsGDI, Direct3D, WPFGDI, Direct3D, WPF

VideoVideo

Non-client areas from the Window ManagerNon-client areas from the Window Manager

Allows different views of application windowsAllows different views of application windows

Page 23: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Desktop Window ManagerDesktop Window Manager

Supports high-dpi displaysSupports high-dpi displaysComposition with magnificationComposition with magnification

Supports video playbackSupports video playback

Takes advantage of Direct3D 9 shadersTakes advantage of Direct3D 9 shadersFor non-client areas, transitionsFor non-client areas, transitions

Animated transitions, etc.Animated transitions, etc.

New D3D9Ex cross-process shared surfacesNew D3D9Ex cross-process shared surfacesAllows DWM to access application back buffersAllows DWM to access application back buffers

Turns off when certain application types runningTurns off when certain application types runningOverlay planes, front buffer rendering,…Overlay planes, front buffer rendering,…

Page 24: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Desktop Window ManagerDesktop Window Manager

surface

Desktop Window Manager

WPFApplication

D3DApplication

GDIApplication

surface surface

Page 25: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Full Screen Exclusive, Full Screen Exclusive, Multimon, And DWMMultimon, And DWM

Continue to allow apps to have exclusive monitor accessContinue to allow apps to have exclusive monitor accessControl video mode, gamma, etc…Control video mode, gamma, etc…

Desktop window manager disappearsDesktop window manager disappears

Other applications can continue to runOther applications can continue to runMay bump the priorities of the output-exclusive appMay bump the priorities of the output-exclusive app

Applications should recognize case where client area is occludedApplications should recognize case where client area is occluded

Background processing on the GPUBackground processing on the GPU

Multiple monitors independentMultiple monitors independentComposited desktop image per monitorComposited desktop image per monitor

Exclusive output independent for each monitorExclusive output independent for each monitor

Page 26: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Media APIsMedia APIs

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

Page 27: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

ImagingImaging

Hardware accelerated photo experienceHardware accelerated photo experience12-16Mpix @ 60 fps12-16Mpix @ 60 fps

Builds on Direct3D 9 APIBuilds on Direct3D 9 API

Uses texture mapping + shading for Uses texture mapping + shading for image processingimage processing

Rely on Shader Model 2.0 capabilitiesRely on Shader Model 2.0 capabilitiesFloat16 processingFloat16 processing

Lots of accelerator memoryLots of accelerator memory

Large texture images (> 2Kx2K)Large texture images (> 2Kx2K)

Page 28: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Video AccelerationVideo Acceleration

Relies on more specialized hardware supportRelies on more specialized hardware supportDecode: IDCT, motion compensationDecode: IDCT, motion compensation

Processing: Deinterlace, denoise, scale, mixingProcessing: Deinterlace, denoise, scale, mixing

Content protection of high value dataContent protection of high value dataOPM, Protected Video PathOPM, Protected Video Path

Supported through DirectX Video Acceleration Supported through DirectX Video Acceleration (DXVA) APIs(DXVA) APIs

Media Center and Media Player use Media Center and Media Player use same pipelinesame pipeline

Page 29: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Video AccelerationVideo Acceleration

Additional information: Additional information: Windows Vista Windows VistaVideo Pipeline Architecture and Video Pipeline Architecture and Implementation, Implementation, Glenn Evans; Glenn Evans; How to How to Implement Windows Vista Content Output Implement Windows Vista Content Output Protection, Protection, Dave MarshDave Marsh

Page 30: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Windows Presentation Windows Presentation FoundationFoundation

Highly integrated stackHighly integrated stackLayout, text, video, audio, imagingLayout, text, video, audio, imaging

Builds on other parts of stackBuilds on other parts of stackMedia FoundationMedia Foundation

ImagingImaging

Direct3D 9Direct3D 9

WCSWCS

Page 31: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

DWM And WPFDWM And WPF

Additional information: Additional information: Desktop and Desktop and Presentation Impact on Hardware Design, Presentation Impact on Hardware Design, Kam VedbratKam Vedbrat

Page 32: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Future TechnologiesFuture Technologies

Warning: These are directions Warning: These are directions not commitmentsnot commitments

Continue the visionContinue the visionRich graphics and media experienceRich graphics and media experience

Available all the time to all applicationsAvailable all the time to all applicationsRobust, efficient, applications don’t interfereRobust, efficient, applications don’t interfere

Scales across mobile, desktop,…Scales across mobile, desktop,…

Seamless print, remote, terminal serverSeamless print, remote, terminal server

Page 33: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Windows Display Driver ModelWindows Display Driver Model

Lots of areas to addressLots of areas to addressMove to preemptive context switching and Move to preemptive context switching and page-level memory management page-level memory management ASAPASAP

WDDMWDDM 2.12.1

Flexible multi-GPU, linked adapters (LDA)Flexible multi-GPU, linked adapters (LDA)Graphics multiprocessingGraphics multiprocessing

Power managementPower management

Boot video, VGA, ACPI/BIOSBoot video, VGA, ACPI/BIOS

Virtual Machine supportVirtual Machine support

Page 34: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Display/Device TechnologiesDisplay/Device Technologies

Color managed desktopColor managed desktop

Hi-def color (float16)Hi-def color (float16)

Consumer Electronics (TV) devicesConsumer Electronics (TV) devicesGreater format coverageGreater format coverage

MultimonMultimonImprove the fullscreen/windowed experienceImprove the fullscreen/windowed experience

Multi-desktop supportMulti-desktop support

MagnificationMagnification

Monitor controlsMonitor controlsDDC/CIDDC/CI

Rationalize GDI/DXGI device controlRationalize GDI/DXGI device control

Page 35: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Rendering TechnologiesRendering Technologies

Game applicationsGame applicationsHigher-def, procedural contentHigher-def, procedural content

Surface tessellation, order-independent transparencySurface tessellation, order-independent transparency

Shader expressivenessShader expressiveness

Presentation technologiesPresentation technologiesMove to Direct3D 10 base by 2009?Move to Direct3D 10 base by 2009?

Text, antialiasing, 2D renderingText, antialiasing, 2D rendering

Rendering qualityRendering quality

Multicore CPU investmentsMulticore CPU investmentsProcess or move data fasterProcess or move data faster

Page 36: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Media TechnologiesMedia Technologies

ImagingImagingDirect3D 10 provides ideal baseDirect3D 10 provides ideal baseMove to “HDR” (actually 16-bit MDR)Move to “HDR” (actually 16-bit MDR)Minor improvements for additional image formatsMinor improvements for additional image formats

16-bit fixed in addition to 16-bit float16-bit fixed in addition to 16-bit float

VideoVideoContent Protection (Protected Video Path)Content Protection (Protected Video Path)Glitch-resilienceGlitch-resilience

Preemptive context switching in WDDM 2.1 is keyPreemptive context switching in WDDM 2.1 is key

Hardware Encode/AnalysisHardware Encode/AnalysisBackground transcodingBackground transcoding

ProcessingProcessingHD-DVD compositing scenariosHD-DVD compositing scenarios

Page 37: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

General Compute (GPGPU)General Compute (GPGPU)

GPU rapidly generalizingGPU rapidly generalizing

Good at high-bandwidth, data-parallel computeGood at high-bandwidth, data-parallel computeImage processing, video processing, physics,…Image processing, video processing, physics,…

100 GB/s, 300+ GFlops100 GB/s, 300+ GFlops

Looking at more generalized infrastructureLooking at more generalized infrastructureDon’t draw triangles to trigger computationsDon’t draw triangles to trigger computations

Enabled byEnabled byHardware implementation consistencyHardware implementation consistency

Fast CPU ↔ GPU data transferFast CPU ↔ GPU data transfer

Multi-GPU supportMulti-GPU support

Page 38: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Call To ActionCall To Action

Windows VistaWindows VistaHardware-accelerated graphics all the timeHardware-accelerated graphics all the time

WDDM 1.0WDDM 1.0

Direct3D 9/9Ex is everywhere – nowDirect3D 9/9Ex is everywhere – now

Rapid adoption of Direct3D 10 – it delivers the futureRapid adoption of Direct3D 10 – it delivers the future

DXVA, content protection, glitch reductionDXVA, content protection, glitch reduction

NextNextWDDM 2.1 – efficient GPU virtualizationWDDM 2.1 – efficient GPU virtualization

Direct3D 10.1 – incremental changes to 10Direct3D 10.1 – incremental changes to 10

Hi-def color, HD-DVDHi-def color, HD-DVD

Greater generalization of GPU capabilitiesGreater generalization of GPU capabilities

Page 39: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Additional ResourcesAdditional Resources

Email:Email:

Related SessionsRelated SessionsWDDM v2 and BeyondWDDM v2 and Beyond

DirectX Graphics: Direct3D 10 and BeyondDirectX Graphics: Direct3D 10 and Beyond

Desktop and Presentation Impact on Hardware DesignDesktop and Presentation Impact on Hardware Design

How To Support Windows Color System in Printers, Displays, How To Support Windows Color System in Printers, Displays, and Image Capture Devicesand Image Capture Devices

DXVA 2.0: A New Hardware Video Acceleration Pipeline DXVA 2.0: A New Hardware Video Acceleration Pipeline for Windowsfor Windows

Windows Vista Video Pipeline Architecture and ImplementationWindows Vista Video Pipeline Architecture and Implementation

How to Implement Windows Vista Content Output ProtectionHow to Implement Windows Vista Content Output Protection

Directx @ microsoft.comDirectx @ microsoft.com

Page 40: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

Questions?Questions?

Page 41: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation

© 2006 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions,

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.

Page 42: Future Directions In Graphics David Blythe Software Architect Windows Graphics Microsoft Corporation