The slice parameter for 3D textures should be mip-relative too

This commit is contained in:
baldurk
2019-10-30 16:32:08 +00:00
parent 3fbb9ee7ad
commit e713c82dcd
11 changed files with 62 additions and 51 deletions
-6
View File
@@ -3530,9 +3530,6 @@ void TextureViewer::on_sliceFace_currentIndexChanged(int index)
TextureDescription &tex = *texptr;
m_TexDisplay.sliceFace = (uint32_t)qMax(0, index);
if(tex.depth > 1)
m_TexDisplay.sliceFace = (uint32_t)(qMax(0, index) << (int)m_TexDisplay.mip);
INVOKE_MEMFN(RT_UpdateVisualRange);
if(m_Output != NULL && m_PickedPoint.x() >= 0 && m_PickedPoint.y() >= 0)
@@ -3618,9 +3615,6 @@ void TextureViewer::on_saveTex_clicked()
m_SaveConfig.slice.sliceIndex = (int)m_TexDisplay.sliceFace;
m_SaveConfig.mip = (int)m_TexDisplay.mip;
if(texptr->depth > 1)
m_SaveConfig.slice.sliceIndex = (int)m_TexDisplay.sliceFace >> (int)m_TexDisplay.mip;
m_SaveConfig.channelExtract = -1;
if(m_TexDisplay.red && !m_TexDisplay.green && !m_TexDisplay.blue && !m_TexDisplay.alpha)
m_SaveConfig.channelExtract = 0;