get probes displaying with low Texture quality

refactored detection of texture sizes for cubemaps
removed the assumption that if we give U32 GFXTextureManager::getTextureDownscalePower( GFXTextureProfile *profile ) no profile, it should go right ahead and downscale anyway
sniped the downscaling strings in the resulting U32 getProbeTexSize(); and void setCubeTexSize(const U32 cubemapFaceSize); until sucj time as we can properly follow up all possible combinations of shiping in one scale, and a customer choosing to use lower resolution textures as the current result is a hard shutoff entirely
This commit is contained in:
AzaezelX 2022-09-14 15:58:32 -05:00
parent 1541a8cc68
commit ad3c961579
7 changed files with 61 additions and 55 deletions

View file

@ -322,19 +322,8 @@ void GFXGLCubemapArray::init(GFXCubemapHandle *cubemaps, const U32 cubemapCount)
AssertFatal(cubemaps, "GFXGLCubemapArray- Got null GFXCubemapHandle!");
AssertFatal(*cubemaps, "GFXGLCubemapArray - Got empty cubemap!");
U32 downscalePower = GFXTextureManager::smTextureReductionLevel;
U32 scaledSize = cubemaps[0]->getSize();
if (downscalePower != 0)
{
// Otherwise apply the appropriate scale...
scaledSize >>= downscalePower;
}
//all cubemaps must be the same size,format and number of mipmaps. Grab the details from the first cubemap
mSize = scaledSize;
setCubeTexSize(cubemaps);
mFormat = cubemaps[0]->getFormat();
mMipMapLevels = cubemaps[0]->getMipMapLevels() - downscalePower;
mNumCubemaps = cubemapCount;
const bool isCompressed = ImageUtil::isCompressedFormat(mFormat);
@ -379,19 +368,8 @@ void GFXGLCubemapArray::init(GFXCubemapHandle *cubemaps, const U32 cubemapCount)
//Just allocate the cubemap array but we don't upload any data
void GFXGLCubemapArray::init(const U32 cubemapCount, const U32 cubemapFaceSize, const GFXFormat format)
{
U32 downscalePower = GFXTextureManager::smTextureReductionLevel;
U32 scaledSize = cubemapFaceSize;
if (downscalePower != 0)
{
// Otherwise apply the appropriate scale...
scaledSize >>= downscalePower;
}
//all cubemaps must be the same size,format and number of mipmaps. Grab the details from the first cubemap
mSize = scaledSize;
setCubeTexSize(cubemapCount);
mFormat = format;
mMipMapLevels = ImageUtil::getMaxMipCount(scaledSize, scaledSize);
mNumCubemaps = cubemapCount;
const bool isCompressed = ImageUtil::isCompressedFormat(mFormat);