hacked palette compatibility
Moderator: GZDoom Developers
hacked palette compatibility
I have a custom palette and colormap wad I made years ago, that fixes some of the problems with the original (see the before/after image below). But it created problems in Doom that persist in Zdoom: graphics and the fuzz effect are messed up, and flat transparencies also (other image). The problem is that in order for it to be compatible with existing doom.wad resources, I had to preserve the same (assumed) colors in the colormap; meanwhile changing or removing some of the actual colors in the palette. So there are parts of the colormap where the actual palette color is nothing like what it gets faded to.
The problem with graphics would be solved by mapping their colors to the brightest level, which is supposed to be the same as the palette colors, instead of just putting them on the screen as is. The fuzz effect could be fixed if a seperate map based on the actual palette colors were calculated for it at runtime, or if it were possible to specify which map to use for it (i.e. use map 33, which goes unused in the original). I don't know what the deal is with the flat transparancies.
Of course, it's only worth fixing if people actually want to use an improved doom palette/colormap. Anyone interested?
The problem with graphics would be solved by mapping their colors to the brightest level, which is supposed to be the same as the palette colors, instead of just putting them on the screen as is. The fuzz effect could be fixed if a seperate map based on the actual palette colors were calculated for it at runtime, or if it were possible to specify which map to use for it (i.e. use map 33, which goes unused in the original). I don't know what the deal is with the flat transparancies.
Of course, it's only worth fixing if people actually want to use an improved doom palette/colormap. Anyone interested?
- Bio Hazard
- Posts: 4019
- Joined: Fri Aug 15, 2003 8:15 pm
- Location: ferret ~/C/ZDL $
- Contact:
As a matter of interest, have you tried your hacked palette in GZdoom? I know that a hacked palette that looked awful (in the way your one has problems) in all the software ports looked great in Legacy running in openGL mode.
I said the words great and legay in the same sentence. I'm going to go lie down now.
I said the words great and legay in the same sentence. I'm going to go lie down now.

- Killo Zapit
- Posts: 292
- Joined: Wed Jul 16, 2003 9:26 pm
- Location: Most likely sleeping.
The idea is that it doesn't fade to grey at all. It fades to darker colors with the same hue and saturation, or as close as I could make it. The new colors sometimes look a little brighter (or darker) than what they replace, but I think it's a better fit perceptually.
It's clear they weren't thinking of light levels when they designed the Doom palette. The colors don't map down to darker colors in the same range, the darker ones are usually more saturated. And some ranges don't go all the way to black. Take a look at the brick red section of the old and new colormaps below.
As for OpenGL, doesn't that mean 32 bit color? It's obvious from the GZdoom screenshots that it has no problem with the colormap, and that's the only reason for my palette. Anyway, GZdoom looks like a great port, but I don't care for OpenGL effects and don't have a 3d card.
Skadoomer: I wrote a Qbasic program to take a palette from a bitmap and write a colormap to another bitmap, and another to copy the palette and colormap to a wad file. I edited the palette and colormap bitmaps in an old demo of Photostyler. I've lost most of what I used. It required meticulous editing by hand. It would be a lot easier to start over with a whole new palette, but even then the colormap might require tweaking. In the comparison shot I used both a rebuilt colormap, and a revised doom palette with some colors replaced, to allow filling in the holes in the colormap.
It's clear they weren't thinking of light levels when they designed the Doom palette. The colors don't map down to darker colors in the same range, the darker ones are usually more saturated. And some ranges don't go all the way to black. Take a look at the brick red section of the old and new colormaps below.
As for OpenGL, doesn't that mean 32 bit color? It's obvious from the GZdoom screenshots that it has no problem with the colormap, and that's the only reason for my palette. Anyway, GZdoom looks like a great port, but I don't care for OpenGL effects and don't have a 3d card.
Skadoomer: I wrote a Qbasic program to take a palette from a bitmap and write a colormap to another bitmap, and another to copy the palette and colormap to a wad file. I edited the palette and colormap bitmaps in an old demo of Photostyler. I've lost most of what I used. It required meticulous editing by hand. It would be a lot easier to start over with a whole new palette, but even then the colormap might require tweaking. In the comparison shot I used both a rebuilt colormap, and a revised doom palette with some colors replaced, to allow filling in the holes in the colormap.
- SyntherAugustus
- Posts: 973
- Joined: Tue Jul 15, 2003 5:43 pm
The colormap isn't perfect. Now that I have a good monitor, I notice that the reds look desaturated and ugly. So I've made another version that has the deeper reds, but at the cost of removing most of the purples. There's a few other minor things that might be fixable some time. I'll post both versions on the General discussion board.
I noticed another issue with Zdoom: pink blood.
Here's a gif of one of the colormaps. Of course the first line is only a best approximation of the unaltered Doom palette, but I think most of the colors were the same.
I noticed another issue with Zdoom: pink blood.
Here's a gif of one of the colormaps. Of course the first line is only a best approximation of the unaltered Doom palette, but I think most of the colors were the same.
- Graf Zahl
- Lead GZDoom+Raze Developer
- Posts: 49234
- Joined: Sat Jul 19, 2003 10:19 am
- Location: Germany
What you are trying to attempt doesn't work. A large part of the drawing operations (to be precise: everything that is not related to the world view) are done without using the colormap at all and you scatter completely unrelated colors in the middle of some color gradients. With some trickery you might be able to get the world to render correctly but anything else won't look good at all.
That's why it's a feature suggestion. I don't know how much trouble it would be to have non-world stuff use the colormap, and to have Zdoom generate or look for a seperate map for transparencies and fuzz, or whether enough people would care to even bother with it. So it's just a suggestion.Graf Zahl wrote:What you are trying to attempt doesn't work. A large part of the drawing operations (to be precise: everything that is not related to the world view) are done without using the colormap at all and you scatter completely unrelated colors in the middle of some color gradients. With some trickery you might be able to get the world to render correctly but anything else won't look good at all.
With regular Doom, it's not too hard to make it work. The non-colormapped graphics don't need much fixing, just change a few colors in a few images, and the fuzz can be fixed by changing one byte in doom.exe.