celestar@9913: 32bpp and OpenTTD celestar@9913: ================= celestar@9913: celestar@9913: OpenTTD has 32bpp support. This means: OpenTTD still is 8bpp, but it has the celestar@9913: posibility to override the graphics with 32bpp. This means that it isn't a celestar@9913: replacement of grf or newgrf, but simply an addition. If you want to use 32bpp celestar@9913: graphics of a newgrf, you do need the newgrf itself too (with 8bpp graphics). celestar@9913: celestar@9913: celestar@9913: The Format celestar@9913: ---------- celestar@9913: celestar@9913: 32bpp images are stored in PNG. They should go in: celestar@9913: data/sprites//.png celestar@9913: celestar@9913: For example, a grfname would be 'openttd' (without .grf, lowercase), and the celestar@9913: SpriteID 3, to override the 3rd sprite in openttd.grf with a 32bpp version. celestar@9913: celestar@9913: The format of this PNG can be almost anything, but we advise to use RGBA celestar@9913: format. Alpha-channel is fully supported. celestar@9913: celestar@9913: As the core of OpenTTD is 8bpp, and because you of course want company colours celestar@9913: in your images, you will need to add a mask for every sprite that needs colour celestar@9913: remapping. The name is simular as above, only you have to put a 'm' behind the celestar@9913: SpriteID. This image should be a 8bpp palette image, where the palette is the celestar@9913: OpenTTD palette. Upon load of the PNG, the mask is loaded too, and overrides celestar@9913: the RGB (not the Alpha) of the original PNG image, and replacing it with a celestar@9913: 8bpp color remapped and converted to 32bpp. celestar@9913: celestar@9913: An other thing that OpenTTD needs in your png, is 2 tEXt chunks: x_offs and celestar@9913: y_offs. This to define the x- and y-offset, of course. Use the tool we supply celestar@9913: to add this information. Sadly enough most graphical editors trashes those celestar@9913: chunks upon save, so you have to readd it every time you save your image. celestar@9913: celestar@9913: Your images should be the same as the grf, in size. celestar@9913: