Different color for transparent pixels

This commit is contained in:
2026-09-06 21:48:19 -04:00
parent e2c25cbae5
commit acb8856dd0
+4 -1
View File
@@ -1,6 +1,7 @@
use egui::{Color32, Image, ImageSource, Response, Sense, TextureOptions, Ui, Widget}; use egui::{Color32, Image, ImageSource, Response, Sense, TextureOptions, Ui, Widget};
pub const GENERIC_PALETTE: [u8; 4] = [0, 32, 64, 128]; pub const GENERIC_PALETTE: [u8; 4] = [0, 32, 64, 128];
const COLOR_TRANSPARENT: Color32 = Color32::from_rgb(0x25, 0x25, 0x25);
pub fn shade(brt: u8, color: Color32) -> Color32 { pub fn shade(brt: u8, color: Color32) -> Color32 {
let corrected = if brt > 132 { let corrected = if brt > 132 {
@@ -44,7 +45,9 @@ pub fn parse_brts(brts: &[u16; 3], color: Color32) -> [Color32; 4] {
pub fn palette_colors(palette: u8, brts: &[u8; 8], color: Color32) -> [Color32; 4] { pub fn palette_colors(palette: u8, brts: &[u8; 8], color: Color32) -> [Color32; 4] {
let colors = parse_shades(brts).map(|s| shade(s, color)); let colors = parse_shades(brts).map(|s| shade(s, color));
parse_palette(palette).map(|p| colors[p as usize]) let mut palette_colors = parse_palette(palette).map(|p| colors[p as usize]);
palette_colors[0] = COLOR_TRANSPARENT;
palette_colors
} }
pub struct Object { pub struct Object {