Things I don’t like about D3D9

I’ve been working with this API for quite some time and if at the beginning it seemed ugly and unfamiliar later I got used to it. Nevertheless, there are several moments that still causes pain.

  • Half-pixel (half-texel) offset. This is is well known topic but every time I write a posteffect shader I have to spend some time later to fix another bug related to this D3D9 feature (I’m just stupid, probably);
  • You have to use FOURCC to read the depth buffer. This is a problem because even in year 2016 you will find a user with a such “GPU-driver” combination that doesn’t support this extension.
  • The same bit depth for all render targets
  • We don’t have texture arrays. And it’s impossible to use such constructions in a shader:
sampler2D textures[8];
tex2D(textures[uniformIndex], texcoord);

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s