ExtremeTech: It seems like nobody has actual DX10 hardware yet. Are you doing most of your work in the DX10 reference rasterizer? Simply making more complex shaders along a DX9 code path? "Render to spec" work in a program like 3ds Max or Maya? Exactly what methods are you using to do DX10 development at this point?
Cevat Yerli: If there is no hardware, you have to use the software emulation, and because of its performance, it's no pleasure to work with. On the other hand, buggy alpha hardware can be really painful. We cannot develop techniques solely for DX9 or DX10, so we implement, create, and tweak the level with DX9 and adjust the code afterwards for DX10. We cannot comment though under which DX10 development conditions we are working, since it would infringe NDAs.
ExtremeTech: By the time DX10 hardware is available to develop on in earnest, your game will be nearly done. Obviously, the degree to which you can exploit it is limited. Do you hope to do more with DX10 in maybe a Crysisexpansion pack, or will we have to wait for the next Crytek game to see more elaborate DX10 utilization?
Cevat Yerli: Crysis will ship with features that are exclusive to DX10, however, ultimately we will develop more elegant solutions with time coming forward, since we have implementation ideas that at this stage would fight our DX9 implementation. Hence we will improve DX10 even more after Crysis ships through patches, but only if the DX10 hardware base is big enough to reduce focus on DX9. Probably a year will have to pass by.
ExtremeTech: DX10 adds quite a few significant new features and changes to the API (and hardware requirements)?stuff that may potentially change the way games are made. Which new feature matters most to you?
Cevat Yerli: The geometry shader, together with texture arrays, can greatly simplify some render-to-texture operations. This can speed up things like shadow computations, reflections and refractions.