diff options
author | Jeroen Bakker <jeroen@blender.org> | 2022-04-12 10:53:20 +0300 |
---|---|---|
committer | Jeroen Bakker <jeroen@blender.org> | 2022-04-12 10:53:20 +0300 |
commit | 9112d13e69dbae6a2b5841ef7acdab110f9472f5 (patch) | |
tree | 53851920841e5be7a98327466b881fc11f0c1b07 | |
parent | 9a0180e3e7e1c8f62d2550cadd7afc9e6ec3d3d5 (diff) |
Rename TIleData to UDIMTilePixels
4 files changed, 20 insertions, 15 deletions
diff --git a/source/blender/blenkernel/BKE_pbvh_pixels.hh b/source/blender/blenkernel/BKE_pbvh_pixels.hh index a9680cadc58..a2dc79bae7f 100644 --- a/source/blender/blenkernel/BKE_pbvh_pixels.hh +++ b/source/blender/blenkernel/BKE_pbvh_pixels.hh @@ -139,8 +139,13 @@ struct PackedPixelRow { ushort triangle_index; }; -struct TileData { +/** + * Node pixel data containing the pixels for a single UDIM tile. + */ +struct UDIMTilePixels { + /** UDIM Tile number. */ short tile_number; + struct { bool dirty : 1; } flags; @@ -150,7 +155,7 @@ struct TileData { Vector<PackedPixelRow> pixel_rows; - TileData() + UDIMTilePixels() { flags.dirty = false; BLI_rcti_init_minmax(&dirty_region); @@ -172,7 +177,7 @@ struct NodeData { rctf uv_region; - Vector<TileData> tiles; + Vector<UDIMTilePixels> tiles; Triangles triangles; NodeData() @@ -182,9 +187,9 @@ struct NodeData { void init_pixels_rasterization(Object *ob, PBVHNode *node, ImBuf *image_buffer); - TileData *find_tile_data(const image::ImageTileWrapper &image_tile) + UDIMTilePixels *find_tile_data(const image::ImageTileWrapper &image_tile) { - for (TileData &tile : tiles) { + for (UDIMTilePixels &tile : tiles) { if (tile.tile_number == image_tile.get_tile_number()) { return &tile; } @@ -194,7 +199,7 @@ struct NodeData { void mark_region(Image &image, const image::ImageTileWrapper &image_tile, ImBuf &image_buffer) { - TileData *tile = find_tile_data(image_tile); + UDIMTilePixels *tile = find_tile_data(image_tile); if (tile) { tile->mark_region(image, image_tile, image_buffer); } @@ -214,7 +219,7 @@ struct NodeData { }; Triangles &BKE_pbvh_pixels_triangles_get(PBVHNode &node); -TileData *BKE_pbvh_pixels_tile_data_get(PBVHNode &node, const image::ImageTileWrapper &image_tile); +UDIMTilePixels *BKE_pbvh_pixels_tile_data_get(PBVHNode &node, const image::ImageTileWrapper &image_tile); void BKE_pbvh_pixels_mark_dirty(PBVHNode &node); void BKE_pbvh_pixels_mark_image_dirty(PBVHNode &node, Image &image, ImageUser &image_user); /** Extend pixels to fix uv seams for the given nodes. */ diff --git a/source/blender/blenkernel/intern/pbvh_pixels.cc b/source/blender/blenkernel/intern/pbvh_pixels.cc index a77f592619c..7bc3e1296a3 100644 --- a/source/blender/blenkernel/intern/pbvh_pixels.cc +++ b/source/blender/blenkernel/intern/pbvh_pixels.cc @@ -86,7 +86,7 @@ static float3 calc_barycentric_delta_y(const ImBuf *image_buffer, return calc_barycentric_delta(uvs, start_uv, end_uv); } -static void extract_barycentric_pixels(TileData &tile_data, +static void extract_barycentric_pixels(UDIMTilePixels &tile_data, const ImBuf *image_buffer, const int triangle_index, const float2 uvs[3], @@ -182,7 +182,7 @@ static void do_encode_pixels(void *__restrict userdata, } float2 tile_offset = float2(image_tile.get_tile_offset()); - TileData tile_data; + UDIMTilePixels tile_data; Triangles &triangles = node_data->triangles; for (int triangle_index = 0; triangle_index < triangles.size(); triangle_index++) { @@ -328,7 +328,7 @@ static void apply_watertight_check(PBVH *pbvh, Image *image, ImageUser *image_us continue; } NodeData *node_data = static_cast<NodeData *>(node->pixels.node_data); - TileData *tile_node_data = node_data->find_tile_data(image_tile); + UDIMTilePixels *tile_node_data = node_data->find_tile_data(image_tile); if (tile_node_data == nullptr) { continue; } @@ -420,7 +420,7 @@ static void update_pixels(PBVH *pbvh, } NodeData *node_data = static_cast<NodeData *>(node->pixels.node_data); compressed_data_len += node_data->triangles.mem_size(); - for (const TileData &tile_data : node_data->tiles) { + for (const UDIMTilePixels &tile_data : node_data->tiles) { compressed_data_len += tile_data.encoded_pixels.size() * sizeof(PackedPixelRow); for (const PackedPixelRow &encoded_pixels : tile_data.encoded_pixels) { num_pixels += encoded_pixels.num_pixels; @@ -446,7 +446,7 @@ Triangles &BKE_pbvh_pixels_triangles_get(PBVHNode &node) return node_data->triangles; } -TileData *BKE_pbvh_pixels_tile_data_get(PBVHNode &node, const image::ImageTileWrapper &image_tile) +UDIMTilePixels *BKE_pbvh_pixels_tile_data_get(PBVHNode &node, const image::ImageTileWrapper &image_tile) { BLI_assert(node.pixels.node_data != nullptr); NodeData *node_data = static_cast<NodeData *>(node.pixels.node_data); diff --git a/source/blender/blenkernel/intern/pbvh_pixels_seams.cc b/source/blender/blenkernel/intern/pbvh_pixels_seams.cc index 8a674b06065..abc6f53e38e 100644 --- a/source/blender/blenkernel/intern/pbvh_pixels_seams.cc +++ b/source/blender/blenkernel/intern/pbvh_pixels_seams.cc @@ -258,14 +258,14 @@ class UVSeamExtender { void init(ExtendUVContext &context, PBVHNode &node, const ImageTileWrapper &image_tile) { NodeData &node_data = *static_cast<NodeData *>(node.pixels.node_data); - TileData *tile_node_data = node_data.find_tile_data(image_tile); + UDIMTilePixels *tile_node_data = node_data.find_tile_data(image_tile); if (tile_node_data == nullptr) { return; } init(context, node, node_data, *tile_node_data); } - void init(ExtendUVContext &context, PBVHNode &node, NodeData &node_data, TileData &tile_data) + void init(ExtendUVContext &context, PBVHNode &node, NodeData &node_data, UDIMTilePixels &tile_data) { for (PackedPixelRow &pixel_row : tile_data.pixel_rows) { UVSeamExtenderRowPackage row_package( diff --git a/source/blender/editors/sculpt_paint/sculpt_paint_image.cc b/source/blender/editors/sculpt_paint/sculpt_paint_image.cc index e1025ee8081..c50db65d425 100644 --- a/source/blender/editors/sculpt_paint/sculpt_paint_image.cc +++ b/source/blender/editors/sculpt_paint/sculpt_paint_image.cc @@ -334,7 +334,7 @@ static void do_paint_pixels(void *__restrict userdata, LISTBASE_FOREACH (ImageTile *, tile, &data->image_data.image->tiles) { ImageTileWrapper image_tile(tile); image_user.tile = image_tile.get_tile_number(); - TileData *tile_data = BKE_pbvh_pixels_tile_data_get(*node, image_tile); + UDIMTilePixels *tile_data = BKE_pbvh_pixels_tile_data_get(*node, image_tile); if (tile_data == nullptr) { /* This node doesn't paint on this tile. */ continue; |