Download presentation
Presentation is loading. Please wait.
Published byMaximilian Shannon Warren Modified over 9 years ago
1
Re-Architecting The Windows ® Display Process Bill Powell Technical Evangelist Microsoft Corporation billpow@microsoft.com
3
Graphics And Display On Windows Is Evolving High-DPI LCD displays High-DPI LCD displays DVI digital connectors DVI digital connectors UGA UGA Pixel Shaders in Direct3D ® Pixel Shaders in Direct3D ® sRGB and scRGB sRGB and scRGB New Windows graphics infrastructure New Windows graphics infrastructure
4
New OS Infrastructure Minimize parallel efforts Minimize parallel efforts DirectX ®, GDI, and GDI+ Trident and User New OS organization for post-Windows XP work New OS organization for post-Windows XP work Enable a new user experience Enable a new user experience Excitement for consumers Effectiveness for businesses Goal: Motivate Windows and PC sales!!
5
Agenda 9:30 - 9:35Introduction 9:35 - 10:05Re-inventing the Windows Experience 10:05 - 10:20 New Hardware for a New Windows Graphics Arch 10:20 - 10:30Break 10:30 - 11:10High-DPI Displays 11:10 - 12:10Color Management 12:10 - 12:30UGA
6
Reinventing The Windows User Experience Christopher Evans Development Lead Windows User Experience Team Microsoft Corporation
7
Elements Of The Windows XP Visual Style Richer use of color Richer use of color Textured controls and window frame elements Textured controls and window frame elements Anti-aliased icons Anti-aliased icons Significant use of alpha blending Significant use of alpha blending Rounded window frames Rounded window frames Animations in webview and logon screen Animations in webview and logon screen Subtle gradients in dialog windows Subtle gradients in dialog windows
8
Windows XP Visual Style
9
Common Controls Buttons: Slightly dimensional Buttons: Slightly dimensional Slight shadow and highlight on base Putty surface Slight shadow and highlight on base Putty surface Core Luna Blue and gold used as accents Core Luna Blue and gold used as accents
10
Common Controls “Grippies” and dividers “Grippies” and dividers
12
Icons Spec to be released soon on Icon style and creation Spec to be released soon on Icon style and creation 2D Illustrator Files 2D Illustrator Files Sizes: Sizes: 48x48 32x32 24x24 – (Right side of Start Menu and Toolbars) 16x16 Colors Colors 24 bit with 8 bit Alpha, (gif movie gear) 8 bit (256 colors) with 1 bit transparency 4 bit (16 colors) with 1 bit transparency Perspective Perspective In larger sizes icons are perspective
13
Luna Performance Barriers Initial implementation Initial Luna performance was slow Initial Luna performance was slow Control rendering up to 1700% slower than non-themed controls Window frame resizing and painting were 240% slower
14
Sacrifices For Performance Unrealized elements of the designers’ vision: Unrealized elements of the designers’ vision: Full screen alpha blended effects Shadows behind active windows Common control animations Full window animations High DPI display limitations
15
New Challenges For GDI Large amount of source content Large amount of source content Content accessible across all processes Content accessible across all processes Need to pattern using very large number of patterns Need to pattern using very large number of patterns Need to pattern alpha and transparent sources Need to pattern alpha and transparent sources
16
GDI Limitations No support for alpha/transparent brushes No support for alpha/transparent brushes No support for sharing source content across processes No support for sharing source content across processes Bad perf when attempting to manual tile content Bad perf when attempting to manual tile content Spotty support in drivers for Alpha and Transparency Spotty support in drivers for Alpha and Transparency
17
Temporary Workaround Used Themeing was forced to create composition buffer Themeing was forced to create composition buffer Strategic use of double buffering to avoid flicker Strategic use of double buffering to avoid flicker Eliminates potential for hardware acceleration Eliminates potential for hardware acceleration Some perf problems remain Some perf problems remain
18
Future Windows Plans New GDI support for themeing New GDI support for themeing Bitmap sharing across processes Support for streaming multiple primitives in single call Support for tiling from source bitmap Opens up acceleration path for IHVs Opens up acceleration path for IHVs Stream passed directly to driver Significant reduction of GDI overhead
19
Call To Action Hardware Accelerating Luna AlphaBlend, TransparentBlt, BitBlt (SRCCOPY), StretchBlt (COLORONCOLOR) AlphaBlend, TransparentBlt, BitBlt (SRCCOPY), StretchBlt (COLORONCOLOR) One-to-one and stretching of source for AlphaBlend and TransparentBlt System memory to video memory Video memory to video memory Device bitmap support
20
Future Directions Where do we want to go tomorrow?
21
Future UI Direction It’s time for a change It’s time for a change New User Interface infrastructure to enable a dramatic new user experience New User Interface infrastructure to enable a dramatic new user experience Composited desktop Ubiquitous anti-aliasing Arbitrary layering/opacity of rendering primitives (bitmap, vector, text, multimedia, etc.) Time based animation of any property Flexible layout including markup definition
22
Demo Futuristic User Interface
23
Summary New Windows XP visual styles are a dramatic departure from Windows 95 experience New Windows XP visual styles are a dramatic departure from Windows 95 experience Significant performance improvements have been made Significant performance improvements have been made More can be done in hardware to improve the experience More can be done in hardware to improve the experience
24
New Hardware For A New Windows Graphics Architecture Steve Wright Program Manager Windows Graphics and Gaming Microsoft Corporation swright@microsoft.com
25
What Do We Need? A short list of new hardware features will enable a much richer graphics desktop environment A short list of new hardware features will enable a much richer graphics desktop environment Preemptible graphics engine with high priority command queue Asynchronous readback of device occlusion-test state Bicubic and programmable filter kernels Support deeper pixel formats and more display surface memory Support deeper pixel formats and more display surface memory See also Michael Stokes’ talk on deep pixel formats
26
Preemptible Graphics Engine Our desktop manager and applications need to share access to the GPU Our desktop manager and applications need to share access to the GPU Desktop manager will need to preempt the application command and data stream Enables the desktop to support for multiple timed-delivery clients
27
Asynchronous Occlusion- State Readback “Occlusion-culling”: Popular technique for optimizing application performance “Occlusion-culling”: Popular technique for optimizing application performance Desktop manager can leverage occlusion info in cross-process compositing contexts Desktop manager can leverage occlusion info in cross-process compositing contexts Need asynchronous readback to avoid stalling applications (particularly the desktop manager) Need asynchronous readback to avoid stalling applications (particularly the desktop manager)
28
Bicubic And Programmable Kernel Filters Bicubic is a desktop application quality requirement: Bicubic is a desktop application quality requirement: Bilinear is ok for “natural” content and game-authored content But poor for text and “vector” graphics Programmable kernels could be used to accelerate anti-aliased text Programmable kernels could be used to accelerate anti-aliased text
29
Raising The Bar Deeper pixel formats: Deeper pixel formats: 32 bpp minimum with 8bpp alpha, 64 bpp desired See Michael Stokes’ color talk for what we can do with 64 bpp! More display memory: More display memory: Double buffering a 1200x1600 desktop at 32bpp requires 16Mb Expect 32Mb will be minimum given increased densities and app demands for more buffers More texel processing bandwidth More texel processing bandwidth Same desktop requires 1Gbps to composite desktop at refresh rate; Expect we can use well more than that
30
Call To Action Work with us as we refine our design and specify DDIs for the new features Work with us as we refine our design and specify DDIs for the new features Sign up for DirectX 9 Betas Participate in DirectX 9 Design Reviews Add new features to graphics HW Add new features to graphics HW
32
Agenda 9:30 - 9:35Introduction 9:35 - 10:05Re-inventing the Windows Experience 10:05 - 10:20 New Hardware for a New Windows Graphics Arch 10:20 - 10:30Break 10:30 - 11:10High-DPI Displays 11:10 - 12:10Color Management 12:10 - 12:30UGA
33
High Pixel Density Displays Joe Curley Multimedia Development Dell Nick Kramer Windows Microsoft Corporation
34
High DPI Is Real, Now LCD manufacturing enables: LCD manufacturing enables: Greater pixel densities Same cost per panel LCDs Market acceptance of high density Market acceptance of high density Customer preference in PCs Ideal for Mapping, eBooks, Content creation Enables new device catagories High DPI enables new e-paper applications and more flexible use of screen real estate High DPI enables new e-paper applications and more flexible use of screen real estate
35
Panel Deployment High density (> 100 dpi) LCDs available today High density (> 100 dpi) LCDs available today 15” UXGA (133 dpi) – shipping today Greater densities imminent Greater densities imminent 200+ dpi demonstrated for years 15” QXGA (171 dpi) – 2002 Driven by PC and non-PC markets Driven by PC and non-PC markets
36
LCD DPI Trends 2000 - 2002 DPI Source: DisplaySearch …With More On The Way
38
What’s The Problem 96 dpi CRT limit assumed “normal” 96 dpi CRT limit assumed “normal” Windows 9x includes warnings when scaled Users expect scaling to “just work” Users expect scaling to “just work” Windows XP doesn’t warn users Windows XP doesn’t warn users
39
High DPI Issues Bitmaps, icons, and bitmapped fonts Bitmaps, icons, and bitmapped fonts Fat-pixel replication Fat-pixel replication Scaling of pixel based primitives Scaling of pixel based primitives Applications may require “small” fonts Applications may require “small” fonts No single control knob to resolve No single control knob to resolve
40
High DPI in Windows Nick Kramer Program Manager Windows Microsoft Corporation nkramer@microsoft.com
41
We Can’t Fix It Alone The Win32 ® API is fundamentally pixel based The Win32 ® API is fundamentally pixel based This makes high DPI the application’s problem This makes high DPI the application’s problem Lots of compatibility concerns - we must tread carefully Lots of compatibility concerns - we must tread carefully
42
Applications Are The Gating Factor Applications need to be updated for high DPI Applications need to be updated for high DPI All the necessary APIs are also in Windows 2000 and Windows 98 All the necessary APIs are also in Windows 2000 and Windows 98 We did not add any new APIs to Windows XP for high DPI Set customer expectations – not all software will look good at high DPI Set customer expectations – not all software will look good at high DPI
43
What Can You Do? Test applications/applets in high DPI Test applications/applets in high DPI Avoid critical assumptions Avoid critical assumptions 4:3 aspect ratio 96 dpi Bitmaps, fonts, and icons Bitmaps, fonts, and icons Use multi-size images: 32x32 and 64x64 Use TrueType ® fonts Scale based on points, not pixels Use GDI+ for scaling
44
High DPI In Windows XP Not perfect at high DPI Not perfect at high DPI Usable at 133 dpi Usable at 133 dpi Not always pretty, but usable Some adventurous folks use even higher densities Some adventurous folks use even higher densities
45
Future Windows Plans More Shell improvements More Shell improvements Graphic design that takes advantage of high DPI Graphic design that takes advantage of high DPI New libraries that make it easier to write high DPI software New libraries that make it easier to write high DPI software Layout managers that reduce the need to specify control placement Composable controls let you build big controls out of small ones, which reduces the amount of drawing logic written Fewer opportunities to make mistakes
46
Call To Action LCD makers LCD makers Keep pushing up the pixel density Make stand-alone displays High DPI is not just for laptops Graphics card makers Graphics card makers Support more pixels Find the bandwidth to drive more pixels Fix your bundled apps and applets
47
Call To Action PC manufacturers PC manufacturers Ship high DPI machines Push ISVs to support high DPI Set realistic expectations with customers ISVs ISVs Fix your software (see white paper) How can you exploit high DPI?
48
Microsoft Color Management Michael Stokes Program Manager GDI+ Microsoft Corporation MiStokes@microsoft.com
49
Color Affects Your Business! Color effected business Color effected business E-commerce Desktop publishing Desktop presentations Digital photography Computer games
50
Color Science
51
Two Basic Color Spaces Physical based on photons Physical based on photons Perceptual based on Human Visual System Perceptual based on Human Visual System
52
Causes Of Imaging Problems
53
Lighting Simulation
54
Imaging Problems Affect Everyone Image on a CRT Image on an LCD
55
Color Management
56
Current Situation Too Many Color Spaces NTSC SMPTE EBU PAL SONY Konig PHILIPS WINDOWS MACINTOSH IRIX ITU-R 709.BT HTDV
57
Current Situation Conflicting standards ISO IEC ITU-R JTC1 CIE IETF VESA VRML ASTM EBU
58
Gamut Mapping Issues Apples, Pears, Oranges, and Pineapples or… Displays, Printers, Theory, and Reality Slice Projection (chromaticy chart)
59
Viewing Condition Issues D50 D65
60
Matching Experiment Monitor Light Booth X ○ X X ○ ○ SCH (Successive Haploscopic) SMH (Simultaneous Haploscopic) Monitor Light Booth ○○ △ SMB (Simultaneous Binocular) Monitor Light Booth X XX X ○ ○ MEM (Memory Matching) SCB (Successive Binocular) Ref)K. Braun, M.D.Fairchild "Viewing Enviroment for Cross-Media Image Comparisons" Monitor Ambient Light ○○○
61
How Do You Know What Color Is “Right”? Matches my Epson Stylus Compare to Pantone Guide Looks like Matchprint And Press output Matches Iris at XYZ Co. (the Iris at ABC Co. is different) Matches the Screen Office/Home/Web Users Users Graphic Artists
62
What’s The Solution?
63
ICC – Technical Overview Src Device + Src Viewing Condition PCS(LAB+Paper) PCS(LAB+Paper) EmbeddedProfile Dst Device + Dst Viewing Condition
64
sRGB – Technical Overview ITU-R 709.BT sRGB
65
Professional markets ICC for Provides flexibility, control, features… Consumer markets sRGB for Provides ease of use, simplicity, compatibility scRGB for Prosumer markets Provides extended gamut, tonal range and bit precision and maintains ease of use and simplicity The Right Solutions For The Right Markets
66
sRGB A very successful color solution Open international standard Open international standard IEC 61966-2-1 Consistent and predictable color from sRGB-based devices Consistent and predictable color from sRGB-based devices Screen to print matching Screen to print matching Simple, easy to use, and implement Simple, easy to use, and implement Broad IHV and ISV support Broad IHV and ISV support HP, Sony, Olympus, Tek, Agfa, … Pantone, Adobe, Microsoft, W3C, … Content already broadly available in sRGB Content already broadly available in sRGB
67
Windows ICC Solutions For professionals Flexible Flexible Controllable by applications or device drivers CMYK supported in PostScript Easier to use and appropriate automation Easier to use and appropriate automation Profiles associated with devices Persistent associations across applications State of the art ICC engine State of the art ICC engine With third-party plug-in CMMs Support for proofing and distributed printing Support for proofing and distributed printing Screen, press, or print matching
68
How Critical Is Color Accuracy? “Need images to look good” “Color should be right: Blue is blue – not purple Red is red – not orange” “Need good lightness/contrast” “Need good skin tones” “Accuracy is not critical – except in our logo” “We scrapped a pile of Promotional material because the logo was not close enough”
69
WHQL WinColor New for Windows XP WinColor Compliance Specification WinColor Compliance Specification Metrics for color accuracy tolerance and quality for imaging devices Printers LCDs CRTs Designed for Windows logo program Similar guidelines on the horizon Similar guidelines on the horizon Other display technologies Scanners Cameras
70
Reference Patches
71
Optional Images
72
Common History “We’ve been successfully reproducing color in our industry for X years; If you would only do it our way (and use our proprietary product) all of your problems would be solved!”
73
LCD RDT-153AorMDT-152X(NMV) RDF-191Sor (RDS- 221H) (NMV) CR T LCD Projector LVP-X80 (Mitsubishi ) Color Printer PM-900C(Epson) Display Devices *With sRGB Mode Internet Web Site Photo by DSC Source sRGB E-Commerce Demo
74
Looking Ahead…
75
scRGB A compatible superset of sRGB Submitted as open standard to IEC Submitted as open standard to IEC Linear, extended range 64 bit color space Linear, extended range 64 bit color space Color gamut and tonal range includes all viewable colors Color gamut and tonal range includes all viewable colors Print and display 16-bit precision per channel for better color quality 16-bit precision per channel for better color quality 64 bits total with alpha channel Compatible with sRGB Compatible with sRGB Same white point, primaries, viewing conditions Compatible with existing ICC workflows Compatible with existing ICC workflows
76
Call To Action Don’t use ICC workflows for Consumer, eCommerce or Enterprise markets Don’t use ICC workflows for Consumer, eCommerce or Enterprise markets ISVs ISVs Save color data as sRGB (PNG, EXIF, etc.) Use common ICM 2.0 user interface dialog for prepress applications Printer and Display IHVs Printer and Display IHVs Make devices default to sRGB out of the box Use WQHL WinColor specifications and tests Capture IHVs Capture IHVs Work with Microsoft on developing WinColor specs
77
The Universal Graphics Adapter Mike Tricker Technical Program Manager Windows Microsoft Corporation miketri@microsoft.com
78
Introducing UGA A proposal for a new graphics standard A proposal for a new graphics standard To eventually replace VGA To eventually replace VGA Both BIOS and driver changes Initially works alongside VGA Initially works alongside VGA Firmware for both on the same device Will provide firmware services accessible at runtime Will provide firmware services accessible at runtime Power management
79
Why Replace VGA? Limited display resolutions Limited display resolutions 16-bit Real-mode x86 BIOS code 16-bit Real-mode x86 BIOS code 64k limit already hit Legacy I/O and memory Legacy I/O and memory Non-relocateable, hard to program Poor multi monitor support Poor multi monitor support Issues with disabling VGA
80
UGA Goals Platform independence Platform independence Work with or without a VGA core Work with or without a VGA core Improved basic services Improved basic services Better than 640x480x16 color Continuous modes Highly reliable Highly reliable Simple, robust, and extensively tested! Firmware to be written in C Firmware to be written in C Quicker development, simpler maintenance
81
UGA Non-Goals Defining hardware standards Defining hardware standards Or hardware evolution High performance High performance Minimal acceleration Support for smooth scrolling DirectX-aware DirectX-aware IHVs still write the high performance drivers
82
User Benefits Improved pre- and post-boot experiences Improved pre- and post-boot experiences Simplified multi-monitor configuration Simplified multi-monitor configuration No need to struggle with VGA BIOSs High-availability server support High-availability server support Highly reliable hi-res driver Power-managed minimal driver for upgraded laptops Power-managed minimal driver for upgraded laptops
83
IHV Benefits BIOS development in C not assembler BIOS development in C not assembler Skill and tool availability BIOS can grow beyond 64k BIOS can grow beyond 64k Support for new features Platform independence Platform independence Can work without a VGA core Can work without a VGA core Can use UGA base services in the high-performance drivers Can use UGA base services in the high-performance drivers
84
OEM Benefits High resolution graphics from POST onwards High resolution graphics from POST onwards Compelling splash screen/videos, etc. Make a great first impression Configuration tools High-availability system support High-availability system support Hi-res/hi-color but low risk Significant issue with 24x7 servers
85
Costs Will require additional ROM Will require additional ROM To support VGA and UGA firmware side-by-side Initial limited availability forces up device costs Initial limited availability forces up device costs Will require a new system BIOS Will require a new system BIOS That knows how to POST using UGA But not with dual-mode devices However, the target firmware size is less than 32k… However, the target firmware size is less than 32k…
86
Operating System Support Microsoft will ship a UGA driver in the box Microsoft will ship a UGA driver in the box Targeting Windows XP + 1 for first release O/S will also provide O/S will also provide UGA kernel services UGA HAL wrapping UGA and VGA devices UGA will be used for Safe Mode UGA will be used for Safe Mode And wherever else VGA is used today
87
Dual Mode Devices We won’t change the world overnight… We won’t change the world overnight… Start out with a UGA BIOS wrapping VGA hardware Start out with a UGA BIOS wrapping VGA hardware A single device can appear as both UGA and VGA A single device can appear as both UGA and VGA Can POST using VGA and then run as UGA once the O/S boots Can POST using VGA and then run as UGA once the O/S boots
88
Pure UGA Devices Require a new system BIOS that uses UGA to POST Require a new system BIOS that uses UGA to POST Can then to drop VGA support Can then to drop VGA support Simplify the GPU core Simplify the GPU core Smaller, cheaper Smaller, cheaper
89
Schedule For Delivery Software-only in Windows XP + 1 Software-only in Windows XP + 1 Still requires VGA hardware to POST Still requires VGA hardware to POST Working with IHVs to produce mixed-mode devices Working with IHVs to produce mixed-mode devices And then UGA-only devices And then UGA-only devices
90
Where Are We Now? UGA Specification now at v 0.5 UGA Specification now at v 0.5 UGA firmware template done UGA firmware template done UGA to virtual machine binding in progress UGA to virtual machine binding in progress UGA kernel services in progress UGA kernel services in progress Virtual machine emulation in progress Virtual machine emulation in progress
91
Call To Action Visit the Web site Visit the Web site //www.microsoft.com/hwdev/display Review our design document Review our design document Available today Join our discussion group Join our discussion group Talk to us Talk to us Work with us Work with us Contact us via: uga@microsoft.com Contact us via: uga@microsoft.com
Similar presentations
© 2025 SlidePlayer.com Inc.
All rights reserved.