Fix texture atlas generation when source sprite is larger than generated atlas
This commit is contained in:
parent
b0f721283d
commit
0093bda767
1 changed files with 2 additions and 2 deletions
|
@ -131,7 +131,7 @@ static void _plot_triangle(Vector2 *vertices, const Vector2 &p_offset, bool p_tr
|
||||||
int max_y = MIN(y[2], height - p_offset.y - 1);
|
int max_y = MIN(y[2], height - p_offset.y - 1);
|
||||||
for (int yi = y[0]; yi < max_y; yi++) {
|
for (int yi = y[0]; yi < max_y; yi++) {
|
||||||
if (yi >= 0) {
|
if (yi >= 0) {
|
||||||
for (int xi = (xf > 0 ? int(xf) : 0); xi < (xt < width ? xt : width - 1); xi++) {
|
for (int xi = (xf > 0 ? int(xf) : 0); xi < (xt < src_width ? xt : src_width - 1); xi++) {
|
||||||
int px = xi, py = yi;
|
int px = xi, py = yi;
|
||||||
int sx = px, sy = py;
|
int sx = px, sy = py;
|
||||||
sx = CLAMP(sx, 0, src_width - 1);
|
sx = CLAMP(sx, 0, src_width - 1);
|
||||||
|
@ -153,7 +153,7 @@ static void _plot_triangle(Vector2 *vertices, const Vector2 &p_offset, bool p_tr
|
||||||
p_image->set_pixel(px, py, color);
|
p_image->set_pixel(px, py, color);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (int xi = (xf < width ? int(xf) : width - 1); xi >= (xt > 0 ? xt : 0); xi--) {
|
for (int xi = (xf < src_width ? int(xf) : src_width - 1); xi >= (xt > 0 ? xt : 0); xi--) {
|
||||||
int px = xi, py = yi;
|
int px = xi, py = yi;
|
||||||
int sx = px, sy = py;
|
int sx = px, sy = py;
|
||||||
sx = CLAMP(sx, 0, src_width - 1);
|
sx = CLAMP(sx, 0, src_width - 1);
|
||||||
|
|
Loading…
Reference in a new issue