Friday, March 19, 2010

Bugfixes and changes for 19th March 2010

In between foaming at the mouth over horrid old software, here are the DirectQ 1.8.2 updates for today.

First one is 2 TMU support. Whoo-hoo! It only took me a year to get there! I've relaxed the hardware capabilities checks at startup a little bit as a result of this; the minimum requirement is now a DirectX 7 class device.

You should note that there is one 3 TMU scenario left in the engine where I didn't bother coding it properly. This one is where a brushmodel has both alpha and fullbright texels, and I just don't bother with the fullbrights. This code is up for rewriting sometime soon (but probably not too soon), so you'll just have to live with it for now I'm afraid. Hopefully these are rare enough.

I'm not even going to bother with 1 TMU devices, as these are pretty much uniformly first-generation cards (Voodoo 1, Banshee, RIVA 128, etc) and so don't stand a hope in hell of running DirectQ anyway.

Second one is more robust support for external textures on alias models. I recently discovered that my previous support just didn't even work, so I went back and reworked it. I also added support for the second common naming convention, so now you can use either modelname.mdl_0 or modelname_0.

The important thing to be aware of here is that the modelname.mdl_0 convention is actually the correct one, but unfortunately previously released skin packs used the other. The reason why it's correct is because ID1 has both an s_light.mdl and s_light.spr in it, so modelname_0 is not even compatible with ID1! (Can you guess why not?)

Here's another case where a bad standard became something of a de-facto standard early on, and now something that won't even work with the original game needs to be supported.

Third one is the screenshot/external texture conflict noted a few days ago. In the end I just decided to skip over checking anything in the current screenshots directory. I don't suppose too many people will be changing this anyway, so no big deal if it doesn't work all the time.

In other news, I found out why MASM never worked with Visual Studio 2003 (you need to remove the quotes from the macro paths in the custom build steps) so that made me happy.

Till next time.

2 comments:

xaGe said...

..Good update. Thank you & good night. :-)

xaGe said...

..Good update. Thank you & good night. :-)