mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2025-10-30 08:01:28 +00:00
Add tools/export-drpc-faces.c
This commit is contained in:
parent
1b99f88fb3
commit
4ff3225e7a
1 changed files with 41 additions and 0 deletions
41
tools/export-drpc-faces.c
Normal file
41
tools/export-drpc-faces.c
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
// DR. ROBOTNIK'S RING RACERS
|
||||
//-----------------------------------------------------------------------------
|
||||
// Copyright (C) 2024 by James Robert Roman
|
||||
//
|
||||
// This program is free software distributed under the
|
||||
// terms of the GNU General Public License, version 2.
|
||||
// See the 'LICENSE' file for more details.
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
// #!/bin/sh
|
||||
// for f in /tmp/rpcphotos/*.dat; do
|
||||
// convert -size 16x16 -depth 8 "rgb:$f" \
|
||||
// -crop 14x14+1+1 -scale 518x518 \
|
||||
// "/tmp/rpcphotos/$(basename $f .dat).png"
|
||||
// done
|
||||
|
||||
static void expo(size_t skin)
|
||||
{
|
||||
lumpnum_t lumpnum = skins[skin].sprites[SPR2_XTRA].spriteframes[0].lumppat[0];
|
||||
patch_t *pat = W_CacheSoftwarePatchNum(lumpnum, PU_STATIC);
|
||||
FILE *fp = fopen(va("/tmp/rpcphotos/%s.dat", skins[skin].name), "w");
|
||||
int w = pat->width;
|
||||
int h = pat->height;
|
||||
int size = w * h * 3;
|
||||
UINT8 *bitmap = calloc(1, size);
|
||||
const UINT8 *colormap = R_GetTranslationColormap(TC_DEFAULT, skins[skin].prefcolor, GTC_CACHE);
|
||||
for (int i = 0; i < w * h; ++i)
|
||||
{
|
||||
UINT8 *p = Picture_GetPatchPixel(pat, PICFMT_PATCH, i % w, i / h, 0);
|
||||
if (p)
|
||||
{
|
||||
byteColor_t col = pMasterPalette[colormap[*p]].s;
|
||||
bitmap[i * 3] = col.red;
|
||||
bitmap[i * 3 + 1] = col.green;
|
||||
bitmap[i * 3 + 2] = col.blue;
|
||||
}
|
||||
}
|
||||
fwrite(bitmap, 1, size, fp);
|
||||
fclose(fp);
|
||||
free(bitmap);
|
||||
}
|
||||
Loading…
Add table
Reference in a new issue