diff options
author | Jesse Yurkovich <jesse.y@gmail.com> | 2022-05-28 08:11:52 +0300 |
---|---|---|
committer | Jesse Yurkovich <jesse.y@gmail.com> | 2022-05-28 08:11:52 +0300 |
commit | 86baf6e3edc8925c0701786550b2bac8fe5203d3 (patch) | |
tree | 872019c956476ca0e02a6fb1c27768bfb974aa10 /source/blender/editors/space_image/image_ops.c | |
parent | 967f96ee2e2ed454034f3e6be53fc7259f9016d0 (diff) |
Re-fix T97366: Support single-file UDIMs
The original fix for T97366 was too restrictive and breaks real-world
cases of single-file UDIM textures. See D13297 for an example.
This patch effectively reverts the original fix and instead fixes the
downstream code to accept single-file ranges as necessary.
Note: This means it is very important for users to make use of the
"UDIM detection" option during `image.open` or drag n' drop scenarios in
order to declare their intent when loading their files.
Differential Revision: https://developer.blender.org/D14853
Diffstat (limited to 'source/blender/editors/space_image/image_ops.c')
-rw-r--r-- | source/blender/editors/space_image/image_ops.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/source/blender/editors/space_image/image_ops.c b/source/blender/editors/space_image/image_ops.c index aa77aab2283..68d342e2143 100644 --- a/source/blender/editors/space_image/image_ops.c +++ b/source/blender/editors/space_image/image_ops.c @@ -1274,8 +1274,8 @@ static Image *image_open_single(Main *bmain, BKE_image_free_views(ima); } - if ((range->length > 1) && (ima->source == IMA_SRC_FILE)) { - if (range->udim_tiles.first) { + if (ima->source == IMA_SRC_FILE) { + if (range->udims_detected && range->udim_tiles.first) { ima->source = IMA_SRC_TILED; ImageTile *first_tile = ima->tiles.first; first_tile->tile_number = range->offset; @@ -1283,7 +1283,7 @@ static Image *image_open_single(Main *bmain, BKE_image_add_tile(ima, POINTER_AS_INT(node->data), NULL); } } - else { + else if (range->length > 1) { ima->source = IMA_SRC_SEQUENCE; } } |