mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-01-23 06:04:44 +00:00
virtuals removed and replaced with override where necessary on the rest of the code base, clang-tidy to the rescue.
57 lines
1.4 KiB
C++
57 lines
1.4 KiB
C++
#ifndef _GFXD3D11TEXTUREARRAY_H_
|
|
#define _GFXD3D11TEXTUREARRAY_H_
|
|
|
|
#include <dxgiformat.h>
|
|
|
|
|
|
#include "gfx/gfxTextureArray.h"
|
|
#include "gfx/gfxTextureManager.h"
|
|
#include "core/util/safeRelease.h"
|
|
#include "gfxD3D11TextureManager.h"
|
|
|
|
class GFXD3D11TextureArray : public GFXTextureArray
|
|
{
|
|
public:
|
|
GFXD3D11TextureArray()
|
|
: mSRView( NULL ),
|
|
mRTView( NULL ),
|
|
mDSView( NULL ),
|
|
mTextureArray( NULL )
|
|
{
|
|
}
|
|
|
|
~GFXD3D11TextureArray() { Release(); };
|
|
|
|
void init() override;
|
|
void setToTexUnit(U32 tuNum) override;
|
|
|
|
void createResourceView(DXGI_FORMAT format, U32 numMipLevels, U32 usageFlags);
|
|
|
|
// GFXResource interface
|
|
void zombify() override;
|
|
void resurrect() override;
|
|
void Release() override;
|
|
|
|
|
|
ID3D11ShaderResourceView* getSRView();
|
|
ID3D11RenderTargetView* getRTView();
|
|
ID3D11DepthStencilView* getDSView();
|
|
|
|
ID3D11ShaderResourceView** getSRViewPtr();
|
|
ID3D11RenderTargetView** getRTViewPtr();
|
|
ID3D11DepthStencilView** getDSViewPtr();
|
|
|
|
protected:
|
|
void _setTexture(const GFXTexHandle& texture, U32 slot) override;
|
|
|
|
private:
|
|
ID3D11ShaderResourceView* mSRView; // for shader resource input
|
|
ID3D11RenderTargetView* mRTView; // for render targets
|
|
ID3D11DepthStencilView* mDSView; //render target view for depth stencil
|
|
ID3D11Texture2D* mTextureArray;
|
|
D3D11_TEXTURE2D_DESC mTextureArrayDesc;
|
|
};
|
|
|
|
|
|
#endif
|