Image: fix mipmap generation flags not properly being updated
This commit is contained in:
parent
9ba04bed8f
commit
73f53931f0
@ -421,7 +421,8 @@ public class Image extends NativeObject implements Savable /*, Cloneable*/ {
|
||||
|
||||
/**
|
||||
* @return True if the image needs to have mipmaps generated
|
||||
* for it (as requested by the texture).
|
||||
* for it (as requested by the texture). This stays true even
|
||||
* after mipmaps have been generated.
|
||||
*/
|
||||
public boolean isGeneratedMipmapsRequired() {
|
||||
return needGeneratedMips;
|
||||
@ -434,8 +435,9 @@ public class Image extends NativeObject implements Savable /*, Cloneable*/ {
|
||||
@Override
|
||||
public void setUpdateNeeded() {
|
||||
super.setUpdateNeeded();
|
||||
if (!isGeneratedMipmapsRequired() && !hasMipmaps()) {
|
||||
setNeedGeneratedMipmaps();
|
||||
if (isGeneratedMipmapsRequired() && !hasMipmaps()) {
|
||||
// Mipmaps are no longer valid, since the image was changed.
|
||||
setMipmapsGenerated(false);
|
||||
}
|
||||
}
|
||||
|
||||
@ -527,12 +529,14 @@ public class Image extends NativeObject implements Savable /*, Cloneable*/ {
|
||||
|
||||
this();
|
||||
|
||||
if (mipMapSizes != null && mipMapSizes.length <= 1) {
|
||||
if (mipMapSizes != null) {
|
||||
if (mipMapSizes.length <= 1) {
|
||||
mipMapSizes = null;
|
||||
} else {
|
||||
needGeneratedMips = false;
|
||||
mipsWereGenerated = true;
|
||||
}
|
||||
}
|
||||
|
||||
setFormat(format);
|
||||
this.width = width;
|
||||
|
Loading…
x
Reference in New Issue
Block a user