2023-10-16 20:34:47 +02:00
|
|
|
#!/usr/bin/env lua5.1
|
2023-10-15 17:02:19 +02:00
|
|
|
dofile("../init.lua")
|
|
|
|
|
2023-10-15 20:49:11 +02:00
|
|
|
local _ = { 0 }
|
|
|
|
local R = { 1 }
|
|
|
|
local G = { 2 }
|
|
|
|
local B = { 3 }
|
|
|
|
|
2023-10-16 20:57:00 +02:00
|
|
|
local pixels_colormapped_bt = {
|
2023-10-15 20:49:11 +02:00
|
|
|
{ _, _, _, _, _, B, _, B, },
|
|
|
|
{ _, _, _, _, _, B, B, B, },
|
|
|
|
{ _, _, G, G, G, B, _, B, },
|
|
|
|
{ _, _, G, _, G, B, B, B, },
|
|
|
|
{ _, R, G, _, _, _, _, _, },
|
|
|
|
{ _, R, G, G, G, _, _, _, },
|
|
|
|
{ _, R, _, _, _, _, _, _, },
|
|
|
|
{ R, R, R, _, _, _, _, _, },
|
|
|
|
}
|
|
|
|
|
2023-10-16 20:57:00 +02:00
|
|
|
image_colormapped_bt = tga_encoder.image(pixels_colormapped_bt)
|
2023-10-15 20:49:11 +02:00
|
|
|
|
|
|
|
colormap_32bpp = {
|
|
|
|
{ 0, 0, 0, 128 },
|
|
|
|
{ 255, 0, 0, 255 },
|
|
|
|
{ 0, 255, 0, 255 },
|
|
|
|
{ 0, 0, 255, 255 },
|
|
|
|
}
|
2023-10-16 20:57:00 +02:00
|
|
|
image_colormapped_bt:save(
|
2023-10-15 20:49:11 +02:00
|
|
|
"type1_32bpp_bt.tga",
|
2023-10-16 20:57:00 +02:00
|
|
|
{ colormap = colormap_32bpp, color_format = "B8G8R8A8", scanline_order = "bottom-top" }
|
2023-10-15 20:49:11 +02:00
|
|
|
)
|
2023-10-16 20:57:00 +02:00
|
|
|
image_colormapped_bt:save(
|
2023-10-15 20:49:11 +02:00
|
|
|
"type1_16bpp_bt.tga",
|
2023-10-16 20:57:00 +02:00
|
|
|
{ colormap = colormap_32bpp, color_format = "A1R5G5B5", scanline_order = "bottom-top" }
|
2023-10-15 20:49:11 +02:00
|
|
|
)
|
|
|
|
|
|
|
|
colormap_24bpp = {
|
|
|
|
{ 0, 0, 0 },
|
|
|
|
{ 255, 0, 0 },
|
|
|
|
{ 0, 255, 0 },
|
|
|
|
{ 0, 0, 255 },
|
|
|
|
}
|
2023-10-16 20:57:00 +02:00
|
|
|
image_colormapped_bt:save(
|
2023-10-15 20:49:11 +02:00
|
|
|
"type1_24bpp_bt.tga",
|
2023-10-16 20:57:00 +02:00
|
|
|
{ colormap = colormap_32bpp, color_format = "B8G8R8", scanline_order = "bottom-top" }
|
2023-10-15 20:49:11 +02:00
|
|
|
)
|
|
|
|
|
2023-10-15 17:02:19 +02:00
|
|
|
local _ = { 0, 0, 0, 128 }
|
|
|
|
local R = { 255, 0, 0, 255 }
|
|
|
|
local G = { 0, 255, 0, 255 }
|
|
|
|
local B = { 0, 0, 255, 255 }
|
|
|
|
|
2023-10-16 20:57:00 +02:00
|
|
|
local pixels_rgba_bt = {
|
2023-10-15 17:02:19 +02:00
|
|
|
{ _, _, _, _, _, B, _, B, },
|
|
|
|
{ _, _, _, _, _, B, B, B, },
|
|
|
|
{ _, _, G, G, G, B, _, B, },
|
|
|
|
{ _, _, G, _, G, B, B, B, },
|
|
|
|
{ _, R, G, _, _, _, _, _, },
|
|
|
|
{ _, R, G, G, G, _, _, _, },
|
|
|
|
{ _, R, _, _, _, _, _, _, },
|
|
|
|
{ R, R, R, _, _, _, _, _, },
|
|
|
|
}
|
|
|
|
|
2023-10-16 20:57:00 +02:00
|
|
|
image_rgba_bt = tga_encoder.image(pixels_rgba_bt)
|
2023-10-15 17:02:19 +02:00
|
|
|
|
2023-10-16 20:57:00 +02:00
|
|
|
image_rgba_bt:save(
|
2023-10-15 20:11:28 +02:00
|
|
|
"type2_32bpp_bt.tga",
|
2023-10-16 20:57:00 +02:00
|
|
|
{ color_format="B8G8R8A8", compression="RAW", scanline_order = "bottom-top" }
|
2023-10-15 17:02:19 +02:00
|
|
|
)
|
2023-10-16 20:57:00 +02:00
|
|
|
image_rgba_bt:save(
|
2023-10-15 20:11:28 +02:00
|
|
|
"type10_32bpp_bt.tga",
|
2023-10-16 20:57:00 +02:00
|
|
|
{ color_format="B8G8R8A8", compression="RLE", scanline_order = "bottom-top" }
|
2023-10-15 17:02:19 +02:00
|
|
|
)
|
|
|
|
|
|
|
|
local _ = { 0, 0, 0 }
|
|
|
|
local R = { 255, 0, 0 }
|
|
|
|
local G = { 0, 255, 0 }
|
|
|
|
local B = { 0, 0, 255 }
|
|
|
|
|
2023-10-16 20:57:00 +02:00
|
|
|
local pixels_rgb_bt = {
|
2023-10-15 17:02:19 +02:00
|
|
|
{ _, _, _, _, _, B, _, B, },
|
|
|
|
{ _, _, _, _, _, B, B, B, },
|
|
|
|
{ _, _, G, G, G, B, _, B, },
|
|
|
|
{ _, _, G, _, G, B, B, B, },
|
|
|
|
{ _, R, G, _, _, _, _, _, },
|
|
|
|
{ _, R, G, G, G, _, _, _, },
|
|
|
|
{ _, R, _, _, _, _, _, _, },
|
|
|
|
{ R, R, R, _, _, _, _, _, },
|
|
|
|
}
|
|
|
|
|
2023-10-16 20:57:00 +02:00
|
|
|
image_rgb_bt = tga_encoder.image(pixels_rgb_bt)
|
2023-10-15 17:02:19 +02:00
|
|
|
|
2023-10-16 20:57:00 +02:00
|
|
|
image_rgb_bt:save(
|
2023-10-15 20:11:28 +02:00
|
|
|
"type2_24bpp_bt.tga",
|
2023-10-16 20:57:00 +02:00
|
|
|
{ color_format="B8G8R8", compression="RAW", scanline_order = "bottom-top" }
|
2023-10-15 17:02:19 +02:00
|
|
|
)
|
2023-10-16 20:57:00 +02:00
|
|
|
image_rgb_bt:save(
|
2023-10-15 20:11:28 +02:00
|
|
|
"type10_24bpp_bt.tga",
|
2023-10-16 20:57:00 +02:00
|
|
|
{ color_format="B8G8R8", compression="RLE", scanline_order = "bottom-top" }
|
2023-10-15 17:02:19 +02:00
|
|
|
)
|
|
|
|
|
2023-10-16 20:57:00 +02:00
|
|
|
image_rgb_bt:save(
|
2023-10-15 20:11:28 +02:00
|
|
|
"type2_16bpp_bt.tga",
|
2023-10-16 20:57:00 +02:00
|
|
|
{ color_format="A1R5G5B5", compression="RAW", scanline_order = "bottom-top" }
|
2023-10-15 17:02:19 +02:00
|
|
|
)
|
2023-10-16 20:57:00 +02:00
|
|
|
image_rgb_bt:save(
|
2023-10-15 20:11:28 +02:00
|
|
|
"type10_16bpp_bt.tga",
|
2023-10-16 20:57:00 +02:00
|
|
|
{ color_format="A1R5G5B5", compression="RLE", scanline_order = "bottom-top" }
|
2023-10-15 17:02:19 +02:00
|
|
|
)
|