diff options
author | Rémi Verschelde <rverschelde@gmail.com> | 2020-06-04 11:09:59 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-06-04 11:09:59 +0200 |
commit | d642cc1d702a29b245d1ea1b9917a3a660f005ac (patch) | |
tree | 04c920118e9f8f6ecefefb0a1d5626188fa42e04 | |
parent | 910ddd28171e43649d74e2979c3ed0d68a24dc51 (diff) | |
parent | fb7ae73045a0b456c971c26c3c0aa1203aa9a9d7 (diff) |
Merge pull request #39271 from RandomShaper/fix_atlas_crop
Fix excessive bottom cropping in atlas generation
-rw-r--r-- | editor/import/resource_importer_texture_atlas.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/editor/import/resource_importer_texture_atlas.cpp b/editor/import/resource_importer_texture_atlas.cpp index 2848d13160..2423553d22 100644 --- a/editor/import/resource_importer_texture_atlas.cpp +++ b/editor/import/resource_importer_texture_atlas.cpp @@ -130,7 +130,8 @@ static void _plot_triangle(Vector2 *vertices, const Vector2 &p_offset, bool p_tr double dx_low = double(x[2] - x[1]) / (y[2] - y[1] + 1); double xf = x[0]; double xt = x[0] + dx_upper; // if y[0] == y[1], special case - for (int yi = y[0]; yi <= (y[2] > height - 1 ? height - 1 : y[2]); yi++) { + int max_y = MIN(y[2], height - p_offset.y - 1); + for (int yi = y[0]; yi <= max_y; yi++) { if (yi >= 0) { for (int xi = (xf > 0 ? int(xf) : 0); xi <= (xt < width ? xt : width - 1); xi++) { int px = xi, py = yi; |