if (src_image) {
       struct st_texture_image *src = st_texture_image(src_image);
+      struct st_texture_object *stObj = st_texture_object(src_image->TexObject);
       src_res = src->pt;
-      src_level = src_image->Level;
+      src_level = stObj->pt != src_res ? 0 : src_image->Level;
       src_z += src_image->Face;
       if (src_image->TexObject->Immutable) {
          src_level += src_image->TexObject->MinLevel;
 
    if (dst_image) {
       struct st_texture_image *dst = st_texture_image(dst_image);
+      struct st_texture_object *stObj = st_texture_object(dst_image->TexObject);
       dst_res = dst->pt;
-      dst_level = dst_image->Level;
+      dst_level = stObj->pt != dst_res ? 0 : dst_image->Level;
       dst_z += dst_image->Face;
       if (dst_image->TexObject->Immutable) {
          dst_level += dst_image->TexObject->MinLevel;