Home Artists Posts Import Register

Content

I'm going to create optional autosaves for when shutting down the game, and autoloading them when starting the engine. This will be created in a way that won't conflict with engine crash cases.

Also, I've done some changes to the palette system:

  • Don't use the monitor gamma value for compiling textures, use a dedicated cvar instead.

  • Don't warn about the color gamma used by the texture compiler when loading textures.

  • Don't include the transparent color index into the palette CRC.

The last change is important to reduce the "incompatible CRC" warnings in mods that contains an identical palette with different RGB values for the transparent color. This happens quite often, when artists prefers using a palette with the standard magenta RGB values in the transparent color index instead of Quake's default values. However, this change also means that all previously compiled textures must be recompiled to adjust their CRCs to this new standard.

Another important thing I'm implementing is support for TGA-based palettes. For my content creation pipeline, PCX palette support doesn't cut it, because the GIMP messes up slightly with the RGB values when generating PCX palettes from a 24-bit color image.

To generate PCX-based palettes, my pipeline consists of creating a 24-bit color image containing only 256 unique colors, and using GIMP to convert the image to an 8-bit indexed color image with an automatically generated 256 colors palette. In theory, the 256 colors in the generated palette should be identical to the 256 colors in the image, but the GIMP manages to distort the values a little, so it can't be trusted. By making Retroquad generate the palette directly from the TGA source image, this problem can be avoided (and creating custom palettes will be simpler).

Comments

Ironhell

I gotta ask: why Targas and not pngs? targas an old format.

Ironhell

also i was gonna add 4096 color support to my engine but i suspended work on it. maybe something to consider if yours is gonna support future creators.... extracting the palette from the images would help in this regard... though you should have the code extract All images in a given map, and generate the palette from that....