summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2023-02-27 08:25:01 +0100
committerRémi Verschelde <rverschelde@gmail.com>2023-02-27 08:25:01 +0100
commit745e994fc0f5bdf8010e4c7b64d11f958efcd175 (patch)
tree443e9c2cba948ee94a9dd9ef4f2db0e365a68669 /modules
parentdd54fefeff6539ef29dcf59cd5edc74cbe5af0fe (diff)
parent0addf380475e7002f5dc4cc6157b6074d3046fdd (diff)
Merge pull request #74010 from lyuma/fix_last_basis_lod
Loop over the last mipmap lod in basis universal
Diffstat (limited to 'modules')
-rw-r--r--modules/basis_universal/register_types.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/modules/basis_universal/register_types.cpp b/modules/basis_universal/register_types.cpp
index c5db9b9933..f7bdaf389e 100644
--- a/modules/basis_universal/register_types.cpp
+++ b/modules/basis_universal/register_types.cpp
@@ -74,7 +74,7 @@ static Vector<uint8_t> basis_universal_packer(const Ref<Image> &p_image, Image::
params.m_source_images.push_back(buimg_image);
}
basisu::vector<basisu::image> images;
- for (int32_t mip_map_i = 1; mip_map_i < image->get_mipmap_count(); mip_map_i++) {
+ for (int32_t mip_map_i = 1; mip_map_i <= image->get_mipmap_count(); mip_map_i++) {
Ref<Image> mip_map = image->get_image_from_mipmap(mip_map_i);
Vector<uint8_t> mip_map_vec = mip_map->get_data();
basisu::image buimg_mipmap(mip_map->get_width(), mip_map->get_height());
@@ -247,7 +247,7 @@ static Ref<Image> basis_universal_unpacker_ptr(const uint8_t *p_data, int p_size
dst[i] = 0x00;
}
uint32_t mip_count = Image::get_image_required_mipmaps(info.m_orig_width, info.m_orig_height, imgfmt);
- for (uint32_t level_i = 0; level_i < mip_count; level_i++) {
+ for (uint32_t level_i = 0; level_i <= mip_count; level_i++) {
basist::basisu_image_level_info level;
tr.get_image_level_info(ptr, size, level, 0, level_i);
int ofs = Image::get_image_mipmap_offset(info.m_width, info.m_height, imgfmt, level_i);