Monday, April 19, 2010

Working on a new DirectFitz

I'm not certain what happened, I just got the inclination to do so.

Anyway, the new version is currently in a state where it will at least run, but there are a few things that need cleaning up here and there with it. The two big changes are that it should run on Windows 98, and that it is extremely fast. Faster than FitzQuake itself on my machine, thanks to some of the primitive batching optimizations being ported over from DirectQ. It still uses D3D8, of course.

It still can't handle big scenes too good, but that's mostly on account of needing to go through a translation layer, but overall performance is quite impressive and it really shows the benefit of switching from glBegin/glEnd pairs to proper indexed triangle lists.

There are a few of what I would call "FitzQuake annoyances" that I've taken the opportunity to "fix". Normally when I do a D3D8 port I try to keep the end result as close to the original as possible, but with FitzQuake a small handful of items have been too much for me, and I find the engine quite irritating to use as a result.

Gun angle will be revertible to the same as in ID Quake via a v_gunangle cvar (a value of about 1.5 works well), mouselooking will be on by default and controllable by a freelook cvar, gl_flashblend is changing to 0 by default, and scr_conspeed is changing to 3000 by default. Nothing too dramatic, but I suppose that arch-traditionalists would foam at the mouth over even those.

I've also fixed the timer for multicore and 64-bit CPUs.

As soon as I release it I'll post a notification here.

0 comments: