Windows Phone 7 Series will support WVGA & HVGA resolutions, no programmable shaders (at launch)


Microsoft’s Shawn Hargreaves just announced that 2 screen resolutions will be supported on Windows Phone 7 Series: 800×480 (WVGA) at launch and 480×320 later (possibly in Q1 2011?):

The phone features an image scaler which allows games to render to any size backbuffer they like, and have it automatically stretched to fill the display, with black bars along the edges if the backbuffer and display have different aspect ratios (an idea that will be familiar to Xbox developers). This scaling is handled by dedicated hardware, so does not consume any GPU resources, and it uses a high quality image filter that gives much better results than bilinear filtering like you would get if you did this yourself on the GPU. The scaler is important for two reasons:

At launch, all phones will have a 480×800 (WVGA) display resolution, but we will add 320×480 (HVGA) in a future update. Of course you can detect the native resolution and program your game to adapt to this if you want, but the scaler allows games to pick just one resolution, always render at that fixed size, and still run correctly on phones with different native screen sizes. For bonus points, we automatically scale touch input to match your chosen resolution.

480×800 is a lot of pixels! This is a great resolution for displaying text, browsing the web, etc, but it can be a challenge for intensive 3D games to render so much data at a good framerate. To boost performance, some games may prefer to render at a lower resolution, then scale up to fill the display.

The other piece of info reveiled yesterday is that XNA Gmae Studio 4.0 won’t expose programmable shaders because of the tight developement scheduled for WP7. but this fuctionality should be included in a future update:

The phone supports full hardware accelerated 3D, but we are not exposing programmable shaders in this release. Charlie Kindel summed up the reason for that in a great article about focus and priorities:

“We will do a few things and do them very, very well; we are better off not having a capability than doing it poorly. There are always future versions.”

Instead of programmable shaders, we augmented the existing BasicEffect with four new configurable effects: SkinnedEffect, EnvironmentMapEffect, DualTextureEffect, and AlphaTestEffect. These are designed to run efficiently on the mobile GPU hardware, and I think do a good job of providing enough flexibility for developers to create awesome looking games, while also meeting our goals of being able to ship a robust and well tested product on schedule.

This may disapointing to some devs given that the GPU inside of the SnapDragon chipset (AMD Z430) features a unified pixel & vertex shader pipeline (based on the Xbox 360 Xenos GPU). I guess that Microsoft still needs some time to update Direct3D Mobile. Hopefully updates will be released soon after the initial launch this fall.