Contmotore Posted January 21, 2020 Ugh, this Doom palette... Any pro tips/tricks or a workaround for this? Is there a way to force certain colors from the palette when converting? I'm currently using Photoshop CC Idea: Spoiler Result: Spoiler 0 Quote Share this post Link to post
2 Gez Posted January 22, 2020 I'm gonna suggest using SLADE's color remapping tool. It's quite powerful and you can make very complex translations and save them to text files so as to be able to reuse them later. You have several types of translations: Palette range: from one range to another. Work best when the range progressions are similar. Color gradient. Linear progression across a gradient. Protip: right-click on the "from" and "to" color boxes lets you choose a color from the system's standard color chooser, but a left-click lets you choose one from the PLAYPAL. Desaturated color gradient: the colors in the range are first desaturated to greyscale, and then their position on the greyscale is used to give them a new place linearly on the gradient. It works better when the source range doesn't have a linear progression. Colorise range: the source color is desaturated, and then multiplied by the given color. Tint range: each color of the range is brought closer to the given color, by the given amount. 0% gives no change while 100% gives a flat color. You can combine several different translation effects for different ranges. Note also the "truecolor" checkbox which shows you what your translation would give in truecolor mode, you can tick and untick it to get an idea of how close your effect is to the colors available in the palette. The "translation string" is what can be saved and loaded for reuse later, but it can also be used as-is in ZDoom DECORATE or ZSCript code. (It's where the truecolor preview can be useful; instead of actually modifying the sprites you can use it to preview how your translation will look if it's applied by code in GZDoom in truecolor mode.) The palette translation only allows the advanced translation types (gradiants, colorise, tint) to be "converted" into the palette range, this is needed for some ports that do support custom translations, but not the full gamut of what GZDoom supports. 4 Quote Share this post Link to post
1 Ribbiks Posted January 21, 2020 [I'm assuming you're targeting software graphics] There are many color ranges that are not represented well in the stock palette, desaturated purples chief among them. You can include a custom palette in your project which has more purples, but nothing comes for free (i.e. there are a fixed # of colors, so you'll have to trade-out some existing ones). One approach I've taken is to swap the blue and purple ranges: stock palette: purply palette: You're free to try out this palette (which I've attached to this post). Alternatively, I know there are some tools out there which can process images and give you a list of color values that are best suited to representing it in a reduced form, and you can plug those into the palette before mapping the assets (I haven't done that myself but I bet @esselfortium or @Grain of Salt would know). x7_pal.wad.zip 6 Quote Share this post Link to post
0 Grain of Salt Posted January 21, 2020 GIMP has a super easy built-in thing that converts an rgb image to a new ideal palette with a given number of colors! :D If you use this on your demon pic, specify 24 colors (or 23 if you want to preserve the redundant 0,0,0 cell) and paste the result into a new palette replacing the blue range (I assume?), you should be able to have your purple demon in doom without much degradation. It's a nice purple. Reminds me of wolf3d. 4 Quote Share this post Link to post
0 Contmotore Posted January 21, 2020 Hi, thanks for your reply! That's really cool you can use a different palette for Doom, but as expected: Spoiler Anyways, I think I have to find a way to save a range of hues from the Doom palette and convert the image to those saved hues. 0 Quote Share this post Link to post
0 Contmotore Posted January 21, 2020 4 minutes ago, Grain of Salt said: GIMP has a super easy built-in thing that converts an rgb image to a new ideal palette with a given number of colors! :D If you use this on your demon pic, specify 24 colors (or 23 if you want to preserve the redundant 0,0,0 cell) and paste the result into a new palette replacing the blue range (I assume?), you should be able to have your purple demon in doom without much degradation. It's a nice purple. Reminds me of wolf3d. Ah yes, I also installed Gimp. Gonna give this a try, thnx! 1 Quote Share this post Link to post
0 Contmotore Posted January 21, 2020 (edited) Decided to make him blue instead, this works better with the vanilla Doom palette. Result (with vanilla Doom palette): Spoiler Edited January 21, 2020 by Contmotore 0 Quote Share this post Link to post
0 Rainne Posted January 22, 2020 That Purple Doom looks kinda nice. But yeah: the palette is used by everything in the game, so making changes to it will affect everything else using it. So if you want to make graphics for Doom, you'll need to start from the palette rather than ending with it. (I've been drawing new sprites for a project, using truecolor, but drawing colors from the game's palette to minimize conversion problems.) Or use some port that allows for truecolor PNG sprites, but then your audience is limited to that just for the sake of a recolored Demon. 3 Quote Share this post Link to post
0 Contmotore Posted January 22, 2020 2 hours ago, Gez said: I'm gonna suggest using SLADE's color remapping tool. It's quite powerful and you can make very complex translations and save them to text files so as to be able to reuse them later. You have several types of translations: Palette range: from one range to another. Work best when the range progressions are similar. Color gradient. Linear progression across a gradient. Protip: right-click on the "from" and "to" color boxes lets you choose a color from the system's standard color chooser, but a left-click lets you choose one from the PLAYPAL. Desaturated color gradient: the colors in the range are first desaturated to greyscale, and then their position on the greyscale is used to give them a new place linearly on the gradient. It works better when the source range doesn't have a linear progression. Colorise range: the source color is desaturated, and then multiplied by the given color. Tint range: each color of the range is brought closer to the given color, by the given amount. 0% gives no change while 100% gives a flat color. You can combine several different translation effects for different ranges. Note also the "truecolor" checkbox which shows you what your translation would give in truecolor mode, you can tick and untick it to get an idea of how close your effect is to the colors available in the palette. The "translation string" is what can be saved and loaded for reuse later, but it can also be used as-is in ZDoom DECORATE or ZSCript code. (It's where the truecolor preview can be useful; instead of actually modifying the sprites you can use it to preview how your translation will look if it's applied by code in GZDoom in truecolor mode.) The palette translation only allows the advanced translation types (gradiants, colorise, tint) to be "converted" into the palette range, this is needed for some ports that do support custom translations, but not the full gamut of what GZDoom supports. I had no idea this was inside Slade3, awesome! Gonna play around with this. Thanks! 0 Quote Share this post Link to post
Question
Contmotore
Ugh, this Doom palette...
Any pro tips/tricks or a workaround for this?
Is there a way to force certain colors from the palette when converting?
I'm currently using Photoshop CC
Idea:
Result:
Share this post
Link to post
8 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.