I won't give up. But I'm really tired of having to implement more or less useless features just because Randy feels like doing things in a way that doesn't allow me to concentrate on the important things (not to mention fixing the new feature itself. If this version had been committed to the SVN the bug reports would be flowing because quite a lot of render style related stuff wouldn't work correctly anymore.)
The current status: GZDoom is working again (albeit with the enhanced render style stuff barely working), I still can't commit ZDoom's changes to the SVN, it's still raining outside and today I really have nothing to do...
Graf, why don't you take this opportunity to just put Doom stuff aside? I find that when I stay away from Doom for like a few days or even weeks, whenever I get back to it, the same excitement and rush I got back then when I first played Doom just comes back. It's really refreshing.
I take it that with Randy's new render style code, the hard work that Torr put into the model code to get models to draw with a render style doesn't even work anymore?
Don't worry, that isn't affected at all. For sprites the different blending modes work unless non-black fog is being used. That, by definition is always a huge problem because it can't be blended properly (Consider that even for simple additive blending I already need to tweak it for fog so that it looks correctly.) The other larger issue is the invulnerability etc. colormaps. If those don't work right maybe I just bail and switch to normal translucent rendering when something exotic is being set.
I see. Man, this whole stuff sounds really messy. That render style that Eriance requested... what's so special about it anyway? It's pointless to me because even regular translucency looks like ass in the software renderer, now we have another translucency type that will probaby look even worse with such a limited palette...
(I guess the negative transparency thingy would look cool but that's about it)
You are absolutely correct. Subtractive will look like crap with the Doom palette.
What it's for? Anti-light! Objects with subtractive translucency appear to drain light from what lies behind them. The problem with it is that the hardware implementation is done so that it practically can't be used with fog because the fog is applied before the subtraction, not after it. So essentially the fog being applied to the subtractive object is subtracted from the background as well and therefore the object doesn't fade properly into the distance without some serious tinkering. Randy added some flags to compensate for that - but these flags make the whole matter much more complicated and more difficult to handle because I can't concentrate on the cases that have some actual use - and worse - I can't even tweak the code as I did for some of the old render styles because they'd just be special cases.
No offense, but why doesn't randy see things from that perspective? I'd like to think he is a remarkably intelligent human being, but this sounds about as useful as 'linked actors.' There is still time to undo this you know. Its not like this feature has made it into an official release. Hell its not even in the repository yet, only in an unofficial patch form.
I hope you're letting Randy know how you feel and how he's holding GZDoom and it's users/modders back. Just curious, how often do you and him make contact? I would have thought you would have brought this up the day he decided to add his renderstyle stuff.
I noticed the RenderStyle stuff after he did it. Don't forget - we are 9 hours apart and he works while I'm sleeping. And yes, I ranted enough in the ZDoom thread that he probably got my point.
I'm still fixing bugs related to this so I haven't changed my mind about this pointless change.
Maybe someone should suggest to randy to reverse the changes if it is going to cause a LOT More problems than it is worth. (Which, by reading this, seems to be so.) If the changes were reversed, it should save you (and even him, not needing to keep trying to perfect the crappy code) A lot of work.