Acceleration and SP2

Overview

Acceleration has RTM’ed. Acceleration Pack contains the SP2 fixes; including both DX9 and DX10 work. Acceleration Pack looks really good, and for the $30 US list price there is a lot of value with 3 aircraft (F-18 jet, P-51 racer, EH101 helo), along with 30+ missions and several new “sim” features like a functional carrier, slingloads and hoists for the helo, as well as the multiplayer racing experience. And I am probably forgetting features. There is quite a bit of value there.

Acceleration will be available in late October. FSX-SP2 will be available sometime after Acceleration Pack and before Christmas. Edit:Acceleration includes SP2 bits, and SP1 and thus does not require SP1 to be pre-installed as there is room on the DVD for it, but the downloadable SP2 does require FSX-SP1 to be installed. As I have previously stated, SP2 will include DX9 fixes as well as DX10 support. So with the release of SP2, Aces will have fulfilled its commitment to 2 updates for FSX RTM customers in 2007.

I want to make clear two important details about the DX10 part of Acceleration and SP2:

1) From a feature perspective, we do not match the magic screenies item-for-item because those screenies ignored an important visual element—the aircraft. We added virtual cockpit shadows to the work list because this feature further enhances the immersion. Of course, we also faced schedule and other constraints.

2) We are not promising runtime backwards compatibility in the current DX10 code path now or in the future. This is for two reasons:

a)The first is to send a message that we are going to change the backwards compatibility story moving forwards.

b)The second is practical, in that continuing to provide the backwards compatibility we do is a huge drag on forward progress. Spending time on 4 or more code paths (FSX DX10, FSX DX9, FS2004, pre-FS2004) costs us time that could be spent polishing the existing features, working on resource management to fully eliminate out of memory errors, and working on performance. We have to change that balance and in the DX10 preview you can see the first notice of that. Yes, we know we have to address some features that are not possible using the FSX SDK in future SDKs so that 3rd party developers are enabled and do not depend on these old techniques and we accept that.

Because of these two issues, we are labeling the DX10 support a “preview” in the UI. We expect it will add value; but we are not expecting the DX10 path to replace the DX9 path as the primary experience in FSX and expect third parties to author to the DX9 path in the large. And yes most add-ons should continue to work in the DX9 code path in Acceleration/SP2, as long as they don’t depend on the old BGL compatibility path. An example that no longer works is the B-307 Stratoliner, it uses a decal alpha technique that we didn’t get re-enabled in either DX9 or DX10 after the re-plumbing work involved with SP2.

I know some are going to be disappointed, and some disappointment is reasonable. I will be the first to state that Aces releasing the magic screenies was flat out a mistake; but us not matching that level of “vision” ( and that is what the magic screenies were ) is not a cause for a flame war against Aces or DX10. I should note, for instance, that the DX10 code path performs better under load than the DX9 code path, and this means the DX10 features are more useable. And DX10 does look better, both in the cockpit and in the world.

Let’s move on to detail on the specific features in SP2, from both a DX9 and a DX10 perspective.

FSX SP2-DX9

Here is a list of what is in SP2 from a “global install perspective” and not just on Vista when DX10 is active:

Fixes and Features Core and Graphics

1) 8-core bug fix

2) 3G enabling FSX and Autogen memory use optimization

3) Exterior shadow quality improvements

4) Optimization of terrain IO for photo-scenery and “scenery load out of the zone” fixes to help reduce blurries

5) More batching of Autogen. This will help in areas where a lot of custom objects of the same material are authored and complements the SP1 batching work.

6) 737 and A321 night/taxi light fix with new models

7) Raindrops in the 2D cockpit

Audio, International, UI

8) Audio fix for soundcard/usb to speakers/headphones on Vista

9) Various internationalization fixes

10) Saving undocked panels

11) UI fix for flight list to be alpha-sorted when "Title" is clicked

Multiplayer

12) Multiplayer compatibility with XPack for free-flight. With all the changes in Acceleration, SP1 is not free-flight compatible. SP2 addresses that.

13) Multiplayer fixes for

a) when using DIRECT CONNECT, FSX now remembers the last IP used

b) COM1 shared cockpit sync

We didn’t get either the “w” key issue or the alpha-fade for Autogen into SP2. We just couldn’t get to those fixes. We still have a good set of fixes, even without those two, and we hope the DirectX9 user is happy with the two service packs we have delivered this year.

FSX-SP2 DX10

The features we do have are:

1) VC shadows

2) HDR Bloom

3) Water enhancements

4) Efficiency improvements via more Autogen batching, more efficient shaders, and a more efficient method of generating bloom.

In looking at the magic screenies, we realized those screenshots show nothing “in the plane” and instead concentrate on atmospherics and water effects that will only be visible when:

1) the right weather or angle of view happens

2) flying low and slow

So we went back to the drawing board and decided to invest differently. We decided atmospherics and water should still get some attention, just not the entire effort. And we decided we needed to do something for the pilot in the plane.

So we decided to enhance the VC experience with shadows. VC shadows greatly enhance the realism in the virtual cockpit, and are the logical extension of the airplane exterior self-shadowing.

Atmospherics are an important part of the flying experience, so we wanted to improve bloom. HDR Bloom takes a feature that is almost unusable in DX9 because of performance and makes it both visually better and usable from a performance standpoint.

Given the globe is 70 percent water or more - water enhancements still make sense. What wasn’t possible was to match the water in the magic screenies due to the confluence of hardware issues, constraints on new content, and schedule. What we have does make the water visually different with whitecaps and make water react to weather—wind causes whitecaps on water.

In terms of efficiency improvements – first the water shaders are more efficient, as is the way we generate bloom using HDR techniques. We now batch what are called “Autogen 2” objects in addition to the Autogen 1 objects that were batched in SP1. In areas where there are a lot of Autogen 2 objects ( library objects ), as opposed to the entirely procedural Autogen 1 objects, users will get a nice performance bump. If you don’t have a lot of Autogen 2 objects, then of course you won’t get much improvement.

Ok, that’s not what some people where expecting, even after I have tried to reset expectations, but it’s a nice bump for DX10 users.

Two things we had hoped to get in on the DX10 code path; but we just didn’t get to are crepuscular rays and improved world lighting. We had hoped to improve the world lighting, so that back sides of buildings and trees showed better rendering; as well as render crepuscular rays ( popularly called godrays ) through the clouds but those two features didn’t make the schedule when we added the VC shadows.

And the lack of FSX-SP1 level backwards compatibility is the key reason why what we decided to label the FSX-DX10 work “preview”.

With that said, you now know what is in FSX-SP2 from a DX10 perspective. At this point, from a studio perspective it is time to move on from FSX so we have no future updates planned for the engine.

Here are two screenshots to show the efficiency of the water and bloom improvements, taken on a 2.4 Ghz Intel Core Duo, with 1GB of RAM, and a GeForce 8800 GTX.

DX9 ( 24.1 FPS, 30 set as goal )

DX10 (30 FPS, 30 set as goal )

That is 20% better FPS under load.

I’ll get to feature by feature shots in a future blog, right now I have other tasks that are a bit higher priority.

 

Thanks for listening.