summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2020-06-04 11:09:59 +0200
committerGitHub <noreply@github.com>2020-06-04 11:09:59 +0200
commitd642cc1d702a29b245d1ea1b9917a3a660f005ac (patch)
tree04c920118e9f8f6ecefefb0a1d5626188fa42e04
parent910ddd28171e43649d74e2979c3ed0d68a24dc51 (diff)
parentfb7ae73045a0b456c971c26c3c0aa1203aa9a9d7 (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.cpp3
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;