PNG

PNG (for ) is a graphic file format that is supported by various source ports, notably Doom64 EX, Doomsday, EDGE, Vavoom, ZDoom and ZDoom-derivatives. Most support this format for textures, some also support it for sprites, and ZDoom even uses it as the container for its savegame format.

Special chunks
PNG chunks can be likened to WAD lumps, they are a specific subpart of the file. Contrarily to lumps, they are case-sensitive: The first letter is upper-case for "critical" chunks (without which the image cannot work) and lower-case for "ancillary" chunks (which can be ignored). The second letter is upper case for public chunks (part of the standard specifications) or lower case for "private" chunks (non-standard). The third letter has no given role yet and is thus always upper case, and the last letter indicates whether image manipulation software that does not recognize the chunk should delete it (upper-case) or keep it (lower-case).

The PNG format encourages the use of custom, non-standard chunks for specialized roles. The following custom chunks have special relevance for various source ports.


 * grAb - indicates the center position of the image. This is used to indicate sprite offsets in ZDoom and Doom64 EX. This should not be confused with the standard oFFs chunk, which is meant for printing offsets. This chunk must be between the IHDR chunk and the first IDAT chunk. SLumpEd and SLADE 3 are both able to edit this chunk.
 * alPh - indicates that a grayscale image should be treated as a standalone alpha channel. This is used by ZDoom for decals. This chunk must be between the IHDR chunk and the first IDAT chunk.
 * huBs, ptIc, snAp, viSt, pcLs and raNd - various chunks used by ZDoom and derivatives to store save game information. These chunks must be between the last IDAT chunk and the IEND chunk.