//------------------------------------------------------------------------------------ void D3D11Texture::Resize( uint32 width, uint32 height ) { _AST(m_usage & eTextureUsage_RenderTarget || m_usage & eTextureUsage_RecreateOnWndResized); Destroy(); m_width = width; m_height = height; _CreateManual(nullptr); }
//------------------------------------------------------------------------------- D3D11Texture::D3D11Texture( uint32 width, uint32 height, const char* pTexData, ePixelFormat format, uint32 usage, bool bMipMap ) : Texture(eTextureType_2D, width, height, 1, format, usage, bMipMap) , m_pTexture2D(nullptr) , m_pTexture3D(nullptr) , m_pRTV(nullptr) , m_pSRV(nullptr) , m_pDSV(nullptr) , m_pTexStaging(nullptr) { _CreateManual(pTexData); if (m_usage & eTextureUsage_RecreateOnWndResized) { g_pRenderSys->AddResizableTexture(this); } }
//------------------------------------------------------------------------------- D3D11Texture::D3D11Texture( uint32 width, uint32 height, const char* pTexData, ePixelFormat format, uint32 usage, bool bMipMap ) :m_pTexture2D(nullptr) ,m_pTexture3D(nullptr) ,m_pRenderSystem(g_env.pRenderSystem) ,m_rtView(nullptr) ,m_pSRV(nullptr) ,m_pDSV(nullptr) ,m_width(width) ,m_height(height) ,m_usage(usage) ,m_texType(eTextureType_2D) ,m_bMipMap(bMipMap) ,m_texFormat(format) { m_pd3dDevice = m_pRenderSystem->GetDevice(); if (m_pd3dDevice) m_pd3dDevice->AddRef(); _CreateManual(pTexData); if (m_usage & eTextureUsage_RecreateOnWndResized) m_pRenderSystem->AddResizableTexture(this); }