Fix image conversion and CLUT placement
This commit is contained in:
@@ -64,18 +64,18 @@ fn encode<T: PSXImageConverter>(image: T, color_depth: ColorType, clut_align: Cl
|
||||
if let Some(palette) = palette {
|
||||
let mut color_count = pal_width*pal_height;
|
||||
for color in palette {
|
||||
tool_helper::raw::write_generic(output, color)?;
|
||||
tool_helper::raw::write_generic(output, color.get_raw())?;
|
||||
color_count -= 1;
|
||||
}
|
||||
|
||||
while color_count > 0 {
|
||||
tool_helper::raw::write_generic(output, PSXColor::black())?;
|
||||
tool_helper::raw::write_generic(output, PSXColor::black().get_raw())?;
|
||||
color_count -= 1;
|
||||
}
|
||||
}
|
||||
|
||||
for color in image {
|
||||
tool_helper::raw::write_generic(output, color)?;
|
||||
tool_helper::raw::write_generic(output, color.get_raw())?;
|
||||
}
|
||||
|
||||
Ok(())
|
||||
|
@@ -102,6 +102,10 @@ impl Color {
|
||||
Color{value}
|
||||
}
|
||||
|
||||
pub const fn get_raw(&self) -> u16 {
|
||||
self.value.to_le()
|
||||
}
|
||||
|
||||
const fn new(stp: u8, red: u8, green: u8, blue: u8) -> Color {
|
||||
let value = set_member_value!(set_member_value!(set_member_value!(set_member_value!(0,
|
||||
stp, 0, u16),
|
||||
|
Reference in New Issue
Block a user