Tuesday, July 6, 2010

Updates for 6th July 2010

Pretty much all that got done today is implementation of gl_fullbrights 0 mode on the HLSL path. I'm quite dubious about this mode; on the one hand it's very much incorrect for Quake to disable fullbrights and doing so will completely wreck the intended look of the original game. On the other hand many mappers and texture artists only ever tested their work in GLQuake (which didn't have fullbrights) and as a result have fullbright pixels where they shouldn't.

These works will also look crap in software Quake, so there's a strong case to be made for not fully supporting gl_fullbrights 0 mode. Software Quake is after all the Gold Standard, the intended look of Quake, and anything that diverges from that is incorrect. Dilbert being told to "put the bugs back in" springs to mind here.

It's almost a definite decision that it won't be a "fast path"; the new texture creation code I use would mean that I would have to completely recreate all textures everytime gl_fullbrights changed, and I don't want to do that. I could go with requiring you to reload the map but that goes against the ethos of DirectQ, where even changing gl_subdivide_size doesn't need a map reload.

Some other minor things; I managed to test refresh rate changing and fixed a small bug in it, as well as found and fixed two not-so-small bugs that go back a few versions. One was a stupid array overflow, which doesn't seem to negatively affect the currently released versions, but occasionally when I made code changes I found a -1 sneaking in where it shouldn't be. It had me puzzled for a while but I've got it licked now. The second was a D3D resource leak during shutdown - nothing dramatic or dangerous, but more in the interests of correctness.

UPDATE:

OK, I've done it for r_hlsl 0 with brush models, and Christ it was messy. Right now MDLs are shaping up to be a major pain. Based on this I'm really really leaning towards just removing gl_fullbrights 0 mode, or - at the very best - making it ineffective with r_hlsl 0. The more I think about it, the more I think that I'm covering the arses of content makers who didn't bother doing their homework back in the day, and that just gives me one of those baaaad feelings.

I'll sleep on it.

2 comments:

=peg= said...

"... The more I think about it, the more I think that I'm covering the arses of content makers who didn't bother doing their homework back in the day..."

-- mhquake


I totally agree! I'd stick with the fullbrights always on, and maybe, just maybe, sooner or later map-authors and texture artists see the light and redo their work ;)

Anonymous said...

..I'd rather play with the lights on, but then again I don't like crap fog, crap mirrors, nor old crap particle effects either! ;-p

-xaGe-