improve script hot reload
This commit is contained in:
parent
01d6e09a91
commit
15041984f1
25 changed files with 1516 additions and 293 deletions
|
|
@ -17,21 +17,12 @@ void pxl8_blit_hicolor(u16* fb, u32 fb_width, const u16* sprite, u32 atlas_width
|
|||
col += 2;
|
||||
continue;
|
||||
}
|
||||
u16 s0 = (u16)(pixels);
|
||||
u16 s1 = (u16)(pixels >> 16);
|
||||
u16 d0 = dest_row[col];
|
||||
u16 d1 = dest_row[col + 1];
|
||||
u16 m0 = (u16)(-(s0 != 0));
|
||||
u16 m1 = (u16)(-(s1 != 0));
|
||||
dest_row[col] = (s0 & m0) | (d0 & ~m0);
|
||||
dest_row[col + 1] = (s1 & m1) | (d1 & ~m1);
|
||||
dest_row[col] = pxl8_blend_hicolor((u16)(pixels), dest_row[col]);
|
||||
dest_row[col + 1] = pxl8_blend_hicolor((u16)(pixels >> 16), dest_row[col + 1]);
|
||||
col += 2;
|
||||
}
|
||||
if (w & 1) {
|
||||
u16 s = src_row[col];
|
||||
u16 d = dest_row[col];
|
||||
u16 m = (u16)(-(s != 0));
|
||||
dest_row[col] = (s & m) | (d & ~m);
|
||||
dest_row[col] = pxl8_blend_hicolor(src_row[col], dest_row[col]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -53,29 +44,14 @@ void pxl8_blit_indexed(u8* fb, u32 fb_width, const u8* sprite, u32 atlas_width,
|
|||
col += 4;
|
||||
continue;
|
||||
}
|
||||
u8 s0 = (u8)(pixels);
|
||||
u8 s1 = (u8)(pixels >> 8);
|
||||
u8 s2 = (u8)(pixels >> 16);
|
||||
u8 s3 = (u8)(pixels >> 24);
|
||||
u8 d0 = dest_row[col];
|
||||
u8 d1 = dest_row[col + 1];
|
||||
u8 d2 = dest_row[col + 2];
|
||||
u8 d3 = dest_row[col + 3];
|
||||
u8 m0 = (u8)(-(s0 != 0));
|
||||
u8 m1 = (u8)(-(s1 != 0));
|
||||
u8 m2 = (u8)(-(s2 != 0));
|
||||
u8 m3 = (u8)(-(s3 != 0));
|
||||
dest_row[col] = (s0 & m0) | (d0 & ~m0);
|
||||
dest_row[col + 1] = (s1 & m1) | (d1 & ~m1);
|
||||
dest_row[col + 2] = (s2 & m2) | (d2 & ~m2);
|
||||
dest_row[col + 3] = (s3 & m3) | (d3 & ~m3);
|
||||
dest_row[col] = pxl8_blend_indexed((u8)(pixels), dest_row[col]);
|
||||
dest_row[col + 1] = pxl8_blend_indexed((u8)(pixels >> 8), dest_row[col + 1]);
|
||||
dest_row[col + 2] = pxl8_blend_indexed((u8)(pixels >> 16), dest_row[col + 2]);
|
||||
dest_row[col + 3] = pxl8_blend_indexed((u8)(pixels >> 24), dest_row[col + 3]);
|
||||
col += 4;
|
||||
}
|
||||
for (; col < w; col++) {
|
||||
u8 s = src_row[col];
|
||||
u8 d = dest_row[col];
|
||||
u8 m = (u8)(-(s != 0));
|
||||
dest_row[col] = (s & m) | (d & ~m);
|
||||
dest_row[col] = pxl8_blend_indexed(src_row[col], dest_row[col]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue