Authour: Alex 'Morgoth Bauglir' Voicu
Editor: Charles 'Lupine' Oliver
Date: April 16th, 2008
Altair has certainly come bearing gifts-based on what we've seen above, it seems rather clear that Assassin's Creed is the first title to implement DX10.1. We cannot help but wonder why this isn't actively advertised, as it would be a major bullet point in proving the game's technical prowess.
We contacted Thomas Bruckschlegel, the maker of 3DAnalyze, to obtain a tool that allows the grabbing of shaders so that we could actually take a peek at what's happening. Sadly, in spite of Thomas being both helpful and quick to reply, this wasn't possible; here is what he had to say:
"Hi Alex, sorry for the delay, but I have bad news. Assassin's Creed is using the following api for creating shaders:"
*HRESULT **CreatePixelShader(* *const void* */pShaderBytecode/*,* *SIZE_T* /BytecodeLength/*,* *ID3D10PixelShader* **/ppPixelShader/ *)*;
"so basically, they have no hlsl shaders in it (compiling hlsl on fly while loading takes a lot of time, so that's the simple reason), at least Assassin's Creed - the byte code is useless, without a decompiler which translates it into asm code. there is no such tool atm, because Microsoft has no publicly available bytecode specs for shaders 4.x. So I am sorry, I can't help you."
Armed with this knowledge, we went and asked ATi about it, since they're probably in the best position to know whether or not the new API is actually implemented. Here's what they had to say:
"Ubisoft are at the forefront of technology adoption, as showcased with the fantastic Assassinís Creed title. In this instance our developer relations team worked directly with the developer and found an area of code that could be executed more optimally under DX10.1 operation, thus benefiting the ATI Radeon HD 3000 Series."
It seems we were right after all!
The impact that DX10.1 has is quite frankly greater than expected. A 20% improvement in AA performance is very impressive. GPU refreshes have been built around lesser gains. Based on the game's behavior it's possible that Ubi are doing their own Custom Resolve in order to get HDR correct AA, and are also taking advantage of the full access to MSAA buffers DX10.1 brings in order to get both better quality and better performance, but without an official statement we'd rather refrain from speculating further.
content not found