New Window Operating System release 2007 "Window Vista"

Vandoura

The Original PLD
Adventurer
Joined
Jun 30, 2005
Messages
2,736
Age
40
Location
Windurst Water
Website
www.breakofdawn.freeforums.org
Nation Banner
Windy
Main Job
Scholar-Female
Secondary Job
Dragoon-Female
Third Job
Paladin-Female
Server
Quetzalcoatl
Linkshell
LunarSky
FFXIV
Vandoura
http://www.gamespot.com/features/6143883/p-4.html

Set to ship at the beginning of next year, Windows Vista will be Microsoft's first major operating system release since introducing Windows XP in 2001. The new Windows Vista operating system offers a shiny new user interface, better security, improved data organization, and near-instantaneous search. The new operating system will be a major gaming platform release because it includes DirectX 10, an upgraded and rebuilt collection of APIs that, according to Microsoft, will offer six to eight times the graphics performance of DirectX 9.0. In our final look at Windows Vista, we find out what DirectX 10 means for gaming.

Windows Vista and DirectX 10

It's been called DirectX 10, Windows Graphics Foundation 2.0, and most recently, Direct3D10. The naming situation will clear up as we get closer to the official Windows Vista release, but all you have to know is that DirectX 10 and Direct3D10 in particular will introduce a new era in PC gaming.
Microsoft's DirectX APIs are a collection of interfaces that standardize how game developers talk to PC system hardware. It's a lot easier for programmers to write for a single DirectSound or Direct3D API, instead of writing for every single video card and sound card in existence. Microsoft rebuilt its Direct3D API from scratch for Windows Vista, and Direct3D10 will serve as the base for all future Direct3D innovations throughout the life span of the Windows Vista operating system.
Because the Direct3D10 foundation has to serve game developers through the next decade, Windows Vista will streamline and open up Direct3D with several forward-looking features that will help programmers create better games and get more performance out of PC hardware.

All Hail the Graphics Processing Unit

Direct3D10 finally completes the break from the legacy fixed-function pipeline. Developers will use the programmable pipeline to emulate the older, fixed-function steps. Additionally, Microsoft had to rethink its display driver model now that the entire desktop is going 3D. The video card isn't just for games anymore. When you have a 3D desktop and give each application its own 3D window, the display driver has to be flexible and stable enough to handle the video card's increased role in the system. Microsoft split up the display driver to increase stability, to ensure that the 3D desktop stays up in the event that a game or another application crashes due to a graphics error. This change also means that Microsoft will not release DirectX 10 for Windows XP, because many of the Direct3D10 improvements will need the new Windows Vista Display Driver Model.

Opening up the video card to more applications will require Vista to give the GPU more system resources and allow applications to share the hardware. The biggest change for game developers will be virtualized memory for the GPU. The video card will now have its own space in system RAM to store information that can't fit on local video card memory. High-end video cards ship with 256MB or 512MB of memory, but games can still use the extra space in system memory to store large chunks of information, like textures.

Epic Games founder Tim Sweeney explains, "Virtual texturing eliminates the video memory bottleneck on texture size; whereas in DirectX 9 the size of textures we can use with full performance is limited by the amount of video memory, in DirectX 10 it is only limited by total system memory." Furthermore, Tim predicts that virtual memory will enable a "2X-4X increase in texture usage in games, which will be great for Unreal Engine 3 games, where textures are often authored at very high resolutions like 2048x2048, and then scaled down on lower-end systems to improve performance."

Setting Standards and Improving Performance

Video cards will now have strict feature-set requirements for Direct3D10. A video card must have the full feature set to be DirectX 10 approved. This isn't a whole lot different from the existing model, in which a card has to have certain features to be DirectX 9.0c or Shader Model 2.0 compliant, but Microsoft has made the specification much more detailed to remove any chance of hardware variation. Differences in how Nvidia and ATI cards handled floating-point precision created extra work for developers in the past, but tighter Direct3D10 specifications will help remove ambiguous areas in hardware design. Having consistent hardware means programmers can avoid spending development time on customizing games for cards that don't have all the necessary features or have odd implementations.
Microsoft plans to accelerate its Direct3D release schedule to keep up as the graphics manufacturers release new GPUs with advanced features. If everything goes as planned, the game developer will have to learn only Direct3D11, instead of figuring out the quirks for two different GPUs when Nvidia and ATI release a new technology round. However, this change might not mean the end of writing code for specific GPUs. While developers can count on DX10 to define card features sets, the Microsoft DirectX team admits that "we may see [hardware vendors] putting in additional differentiating features, which developers may want to natively support."
DirectX 10 will increase game performance by as much as six to eight times. Much of that will be accomplished with smarter resource management, improving API and driver efficiencies, and moving more work from the CPU to the GPU. "The entire API and pipeline have been redesigned from the ground-up to maximize performance, and minimize CPU and bandwidth overhead," according to Microsoft. Furthermore, "The idea behind D3D10 is to maximize what the GPU can do without CPU interaction, and when the CPU is needed it’s a fast, streamlined, pipeline-able operation." Giving the GPU more efficient ways to write and access data will reduce CPU overhead costs by keeping more of the work on the video card.
Here's a list of several new Direct3D 10 performance improvements GameSpot was able to wrestle out of the DirectX 10 team:
New constant buffers maximize efficiency of sending shader constant data (light positions, material information, etc.) to the GPU by eliminating redundancy and massively reducing the number of calls to the runtime and driver. New state objects significantly reduce the amount of API calls and bandwidth, tracking, mapping, and validation overhead needed in the runtime and driver to change GPU device state.
Texture arrays enable the GPU to swap materials on-the-fly without having to swap those textures from the CPU.
Resource views enable super-fast binding of resources to the pipeline by informing the system early-on about its intended use. This also vastly reduces the cost of hazard-tracking and validation.
Predicated rendering allows draw calls to be automatically deactivated based on the results of previous rendering - without any CPU interaction. This enables rapid occlusion culling to avoid rendering objects that aren’t visible.
Shader Model 4.0 provides a more robust instruction set with capabilities like integer and bitwise instructions, enabling more work to be transferred to the GPU.
The D3D runtime itself has been completely refactored to maximize performance and configurability by the application.



It remains to be seen just how well actual DX10 graphics hardware will be able to handle the additional work, but we've seen in the past that ATI and Nvidia have been able to deliver whenever games have shifted work from the CPU to the GPU.

The Geometry Shader

Direct3D10 adds a new geometry shader stage into the graphics pipeline in between the vertex-shader and pixel-shader stages. The traditional vertex shader takes in a single vertex, a single point, and it has to output a single vertex. It's impossible for the vertex shader to create or destroy triangles because it always has to output a vertex for each one it takes in. The geometry shader lets the game operate on entire geometry primitives, lines, triangles, and points as well as neighboring adjacent primitives. The geometry shader can also create new primitives, add new triangles, before sending them further down the pipe to the rasterizer and pixel shader.
Even better, the geometry shader can also output results directly into memory, allowing data to go right back into the graphics pipeline without going out to the CPU for setup. The changes will let the GPU accelerate particle effects like smoke and explosions, which are usually done on the CPU. Games can also use the geometry shader in combination with texture arrays to accelerate effects like cube mapping. Games use cube maps to make an object reflect the world around it. To make an object like a stainless steel teapot reflect its surroundings, you have to determine the teapot's surroundings and map it onto the teapot. Normally, this can take six passes, but a game can use the geometry shader and a render target array to create a cube map in one pass.

Windows Vista will arrive with the usual fanfare associated with past Windows operating system launches, but don't be surprised to see Windows Vista-only games available for sale alongside the operating system on release day. Windows Vista will be backward compatible with DX9 and OpenGL games shipping for Windows XP, but true DirectX 10 games will require Windows Vista and a DX10 video card to run at full speed with all the graphics set to "pretty." Bungie has already announced that the PC version of Halo 2 will be a Vista-only game, and you can expect to hear more exclusive Windows Vista game announcements as we get closer to launch.

Exclusive Windows Vista Game?

We're still waiting to hear about what kind of hardware these Vista-only games will need to run. The only nonsleazy reason to build a Vista-exclusive game will be to take advantage of DirectX 10 or some undisclosed Windows Vista voodoo magic features. Bungie can easily create a Windows Vista version of Halo 2 that can run on DirectX 9 video cards, and it would make sense from a business point of view because most video cards made in the last three years fall into the DX9 category. However, if Bungie makes Halo 2 into a full-blown DirectX 10 game with all the bells and whistles, you will need a new DirectX 10 video card to play it.

The problem is that DirectX 10 video cards don't exist yet. Nvidia has the G80 in the works and ATI is polishing up the R600, a GPU based on the Xbox 360 "Xenos" core, but cards won't appear until the second half of this year. Even the game companies are having a tough time getting early-development GPU hardware right now. Several game developers we've spoken to have told GameSpot that they're still waiting to see DX10 reference cards.
Aside from a handful of Windows Vista DX10 launch games, most PC games shipping in the next year will be DirectX 9 titles. Since the number of Windows XP DX9 video card system owners will dwarf the Windows Vista DX10 video card installation base for quite some time, we'd have to guess that the DX10 game developers will create DX9-compatible fallback versions of their games to make them playable on current hardware.

We're going to see games developed for DX9 but written with the understanding that DX10 is coming. The transition isn't going to be too difficult, according to Epic's Tim Sweeney: "DirectX 10 is a nice incremental step up from DirectX 9, so games currently in development on Windows XP/DirectX 9 will be able to move to DirectX 10 with minimal hassle." Smartly architected DX9 games can be rewritten to incorporate DX10 fairly easily, but we can expect many of those initial ports to use the faster DX10 API to only improve performance because artists and programmers will need extra time to design and implement completely new DX10-powered effects.
When we asked Tim when he thought we would see the first true DX10 games, ones that will take full advantage of DX10 hardware, he could only reply with a smile and a cryptic, "When will Windows Vista ship?"
 
The biggest change for game developers will be virtualized memory for the GPU. The video card will now have its own space in system RAM to store information that can't fit on local video card memory. High-end video cards ship with 256MB or 512MB of memory, but games can still use the extra space in system memory to store large chunks of information, like textures.
Durr... don't they already do this? AGP aperture? I haven't delved very deep into a PCI-E system yet, so I don't know if they canned that option for the newer chipsets.

Differences in how Nvidia and ATI cards handled floating-point precision created extra work for developers in the past, but tighter Direct3D10 specifications will help remove ambiguous areas in hardware design.
I wonder if this will eliminate the discrepancies in benchmarks like 3DMark. Likely not, as the cards themselves were written to take advantage of certain scenes differently, but hey one can hope.

Even better, the geometry shader can also output results directly into memory, allowing data to go right back into the graphics pipeline without going out to the CPU for setup. The changes will let the GPU accelerate particle effects like smoke and explosions, which are usually done on the CPU.
This too... hasnt volumetric lighting (first introduced in the age-old Unreal 1, I believe) always been handled by the GPU? I aint much of a 3D techie, so if vol.lighting was used only for fog and not for smoke / explosions then ignore this comment.

To make an object like a stainless steel teapot reflect its surroundings, you have to determine the teapot's surroundings and map it onto the teapot. Normally, this can take six passes, but a game can use the geometry shader and a render target array to create a cube map in one pass.
I assume this is what HDR lighting does? I had no idea that would take six freakin' passes... I dont know how Valve does it, but HDR has not affected my HL2 performance at all, at 1900x1200 4xAA 16xAF on a Sapphire X800 GTO (AGP).

true DirectX 10 games will require Windows Vista and a DX10 video card to run at full speed
*cream*

ATI X150048190204400 XTX (Can I have it?)
 
Last edited:
CmdrFly said:
Durr... don't they already do this? AGP aperture? I haven't delved very deep into a PCI-E system yet, so I don't know if they canned that option for the newer chipsets.

AGP Aperture is a little different. I won't dig too deep into this for your sake as well as mine, but basically AGP memory is a lot more restricted, mainly because AGP is fucking slow.

I wonder if this will eliminate the discrepancies in benchmarks like 3DMark. Likely not, as the cards themselves were written to take advantage of certain scenes differently, but hey one can hope.

Actually, what that blurb is referring to is the GeForce FX series.

When DX9 was first designed, floating point colour precision originally had a minimum spec if FP16 (16 bits dedicated). The GeForceFX was the original "poster child" of DX9 and was optimised mainly for FP16, but included the ability to max out precision at FP32 for really advanced shaders.

Because of various issues, and ATi's R300 / Radeon 9700 coming along much faster in development than the GF-FX, Microsoft adjusted the baseline specs of DX9 more toward the R300 specification - and more along the lines of professional rendering - requiring FP24, which ATi's products all run internally all the time now.

GF-FX got screwed pretty hard by that, as supporting DX9 "properly" requires FP32 full precision on the FX line - and that mode royally screws the FX's performance. When you look at all the 'GF-FX recommended' games from ~two years ago, usually that's referring to the game's DX9 rendering path having special-case optimisation for the FX line that specifically tell the graphic card where to use FP32, FP16, and fixed-point colours as necessary for the best possible performance without reducing quality too much.

That DX10 blurb has nothing to do with performance.. MS is trying to avoid a spec snafu like what happened to the FX.

This too... hasnt volumetric lighting (first introduced in the age-old Unreal 1, I believe) always been handled by the GPU? I aint much of a 3D techie, so if vol.lighting was used only for fog and not for smoke / explosions then ignore this comment.

Unreal 1 was run on a software renderer that was hacked to rasterise on hardware.

I'm not making that up. It's the reason 3dfx Glide is so unreasonably fast compared to OGL and D3D cards in Unreal and UT99. Look at performance charts from the 3dfx Voodoo5 5500 and 'teaser' benchmarks of the 6000. Glide has less overhead than OGL and D3D, so the code got to the card in the fastest and simplest possible way - hence, a Voodoo5 5500 was able to outperform even up to GeForce3 in UT99.

So yeah, volumetric lighting actually being handled by the GPU? Pretty recent ability.

I assume this is what HDR lighting does? I had no idea that would take six freakin' passes... I dont know how Valve does it, but HDR has not affected my HL2 performance at all, at 1900x1200 4xAA 16xAF on a Sapphire X800 GTO (AGP).

Actually, all the passes are done for applying textures and shader programs. DOOM3, for example, mainly gets performance gains on DX9 cards because even though all the functions are DX8 and many are even DX7 - geometry, determining visible surfaces, applying the base texture, applying a bump map, applying a shadow map, specular highlights, and more - DX9 enabled more of those to be done in a single "pass" over a pixel.

HDR works like this: In the past, light sourcing was clamped to a dynamic range of [0,1]. HDR uses floating-point precision in the DX9 pixel shader pipeline to enable a dynamic range of something more along the lines of [0,16], allowing much more precision in lighting calculation, as well as a dramatically wider dynamic range (allowing things like over-bright sunlight reflections off surfaces). I'd find some comparison screenshots for you but I'm feeling rather lazy at the moment.
 
Score... precisely the response I was hoping for - one from a nerd who knows a buttload more 3D tech than me. Gracias Tag.
 
CmdrFly said:
Score... precisely the response I was hoping for - one from a nerd who knows a buttload more 3D tech than me. Gracias Tag.

After spending a year posting on damn near every thread on Beyond3D's forum, I almost wish I wasn't able to answer your questions. ; ; So much knowledge that will never apply to me outside internet forums...
 
I went there once. Looked interesting, started reading.

Went there a second time. Realized I fit in like a porn shop on top of Mount Everest.

Havent been back since...
 
i have had the beta versions of vista installed on my PC, and i gotta say i cannot await the final release.
My pc would boot up the instant i hit power...like turning on a tv...too bad the beta is limited to 15 days of use or id still use it XD
 
Back
Top