//--------------------------------------------------------------------
	// Own
	//--------------------------------------------------------------------
	ID3D11Texture2D* GetHardwareTexture() {
		if (!mTexture && mSRView){
			ID3D11Resource* resource = 0;
			mSRView->GetResource(&resource);
			mTexture = ID3D11Texture2DPtr((ID3D11Texture2D*)resource, IUnknownDeleter());
		}
		return mTexture.get();
	}
	void Unmap(UINT subResource) const {
		RendererD3D11::GetInstance().UnmapBuffer(mTexture.get(), subResource);
	}
	MapData Map(UINT subResource, MAP_TYPE type, MAP_FLAG flag) const {
		return RendererD3D11::GetInstance().MapBuffer(mTexture.get(), subResource, type, flag);
	}