mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-07-14 16:14:38 +00:00
Correctly copy mipmap sub resources for DX11 cubemap.
This commit is contained in:
parent
8cae1e5dcb
commit
28a9e99258
1 changed files with 7 additions and 4 deletions
|
|
@ -92,7 +92,7 @@ void GFXD3D11Cubemap::initStatic(GFXTexHandle *faces)
|
||||||
}
|
}
|
||||||
|
|
||||||
U32 mipLevels = faces->getPointer()->getMipLevels();
|
U32 mipLevels = faces->getPointer()->getMipLevels();
|
||||||
if (mipLevels > 1)
|
if (mipLevels > 1 && !compressed)
|
||||||
mAutoGenMips = true;
|
mAutoGenMips = true;
|
||||||
|
|
||||||
D3D11_TEXTURE2D_DESC desc;
|
D3D11_TEXTURE2D_DESC desc;
|
||||||
|
|
@ -115,12 +115,15 @@ void GFXD3D11Cubemap::initStatic(GFXTexHandle *faces)
|
||||||
{
|
{
|
||||||
AssertFatal(false, "GFXD3D11Cubemap:initStatic(GFXTexhandle *faces) - failed to create texcube texture");
|
AssertFatal(false, "GFXD3D11Cubemap:initStatic(GFXTexhandle *faces) - failed to create texcube texture");
|
||||||
}
|
}
|
||||||
|
|
||||||
for (U32 i = 0; i < CubeFaces; i++)
|
for (U32 i = 0; i < CubeFaces; i++)
|
||||||
{
|
{
|
||||||
GFXD3D11TextureObject *texObj = static_cast<GFXD3D11TextureObject*>((GFXTextureObject*)faces[i]);
|
GFXD3D11TextureObject *texObj = static_cast<GFXD3D11TextureObject*>((GFXTextureObject*)faces[i]);
|
||||||
U32 subResource = D3D11CalcSubresource(0, i, mipLevels);
|
for (U32 currentMip = 0; currentMip < mipLevels; currentMip++)
|
||||||
D3D11DEVICECONTEXT->CopySubresourceRegion(mTexture, subResource, 0, 0, 0, texObj->get2DTex(), 0, NULL);
|
{
|
||||||
|
U32 subResource = D3D11CalcSubresource(currentMip, i, mipLevels);
|
||||||
|
D3D11DEVICECONTEXT->CopySubresourceRegion(mTexture, subResource, 0, 0, 0, texObj->get2DTex(), currentMip, NULL);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
D3D11_SHADER_RESOURCE_VIEW_DESC SMViewDesc;
|
D3D11_SHADER_RESOURCE_VIEW_DESC SMViewDesc;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue