Commit 8ec383e6 by Jamie Madill Committed by Commit Bot

Use array template aliases in TextureStorage11.

This cleans up some of the iteration logic. BUG=angleproject:2151 Change-Id: I8d80a8d732ee808babbb4859290b648b4fa67b4d Reviewed-on: https://chromium-review.googlesource.com/673138 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org>
parent 136a2742
...@@ -325,7 +325,9 @@ using UniformBlockBindingMask = angle::BitSet<IMPLEMENTATION_MAX_COMBINED_SHADER ...@@ -325,7 +325,9 @@ using UniformBlockBindingMask = angle::BitSet<IMPLEMENTATION_MAX_COMBINED_SHADER
using DrawBufferMask = angle::BitSet<IMPLEMENTATION_MAX_DRAW_BUFFERS>; using DrawBufferMask = angle::BitSet<IMPLEMENTATION_MAX_DRAW_BUFFERS>;
using ContextID = uintptr_t; using ContextID = uintptr_t;
}
constexpr size_t CUBE_FACE_COUNT = 6;
} // namespace gl
namespace rx namespace rx
{ {
......
...@@ -374,7 +374,7 @@ gl::Error TextureStorage11::generateSwizzles(const gl::Context *context, ...@@ -374,7 +374,7 @@ gl::Error TextureStorage11::generateSwizzles(const gl::Context *context,
void TextureStorage11::markLevelDirty(int mipLevel) void TextureStorage11::markLevelDirty(int mipLevel)
{ {
if (mipLevel >= 0 && static_cast<unsigned int>(mipLevel) < ArraySize(mSwizzleCache)) if (mipLevel >= 0 && static_cast<size_t>(mipLevel) < mSwizzleCache.size())
{ {
// The default constructor of SwizzleState has GL_INVALID_INDEX for all channels which is // The default constructor of SwizzleState has GL_INVALID_INDEX for all channels which is
// not a valid swizzle combination // not a valid swizzle combination
...@@ -394,9 +394,9 @@ void TextureStorage11::markLevelDirty(int mipLevel) ...@@ -394,9 +394,9 @@ void TextureStorage11::markLevelDirty(int mipLevel)
void TextureStorage11::markDirty() void TextureStorage11::markDirty()
{ {
for (unsigned int mipLevel = 0; mipLevel < ArraySize(mSwizzleCache); mipLevel++) for (size_t mipLevel = 0; mipLevel < mSwizzleCache.size(); ++mipLevel)
{ {
markLevelDirty(mipLevel); markLevelDirty(static_cast<int>(mipLevel));
} }
} }
...@@ -1633,14 +1633,14 @@ TextureStorage11_Cube::TextureStorage11_Cube(Renderer11 *renderer, ...@@ -1633,14 +1633,14 @@ TextureStorage11_Cube::TextureStorage11_Cube(Renderer11 *renderer,
{ {
for (unsigned int level = 0; level < gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS; level++) for (unsigned int level = 0; level < gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS; level++)
{ {
for (unsigned int face = 0; face < CUBE_FACE_COUNT; face++) for (unsigned int face = 0; face < gl::CUBE_FACE_COUNT; face++)
{ {
mAssociatedImages[face][level] = nullptr; mAssociatedImages[face][level] = nullptr;
mRenderTarget[face][level] = nullptr; mRenderTarget[face][level] = nullptr;
} }
} }
for (unsigned int face = 0; face < CUBE_FACE_COUNT; face++) for (unsigned int face = 0; face < gl::CUBE_FACE_COUNT; face++)
{ {
mLevelZeroRenderTarget[face] = nullptr; mLevelZeroRenderTarget[face] = nullptr;
} }
...@@ -1662,7 +1662,7 @@ gl::Error TextureStorage11_Cube::onDestroy(const gl::Context *context) ...@@ -1662,7 +1662,7 @@ gl::Error TextureStorage11_Cube::onDestroy(const gl::Context *context)
{ {
for (unsigned int level = 0; level < gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS; level++) for (unsigned int level = 0; level < gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS; level++)
{ {
for (unsigned int face = 0; face < CUBE_FACE_COUNT; face++) for (unsigned int face = 0; face < gl::CUBE_FACE_COUNT; face++)
{ {
if (mAssociatedImages[face][level] != nullptr) if (mAssociatedImages[face][level] != nullptr)
{ {
...@@ -1804,11 +1804,11 @@ void TextureStorage11_Cube::associateImage(Image11 *image, const gl::ImageIndex ...@@ -1804,11 +1804,11 @@ void TextureStorage11_Cube::associateImage(Image11 *image, const gl::ImageIndex
const GLint layerTarget = index.layerIndex; const GLint layerTarget = index.layerIndex;
ASSERT(0 <= level && level < gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS); ASSERT(0 <= level && level < gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS);
ASSERT(0 <= layerTarget && layerTarget < static_cast<GLint>(CUBE_FACE_COUNT)); ASSERT(0 <= layerTarget && layerTarget < static_cast<GLint>(gl::CUBE_FACE_COUNT));
if (0 <= level && level < gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS) if (0 <= level && level < gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS)
{ {
if (0 <= layerTarget && layerTarget < static_cast<GLint>(CUBE_FACE_COUNT)) if (0 <= layerTarget && layerTarget < static_cast<GLint>(gl::CUBE_FACE_COUNT))
{ {
mAssociatedImages[layerTarget][level] = image; mAssociatedImages[layerTarget][level] = image;
} }
...@@ -1822,7 +1822,7 @@ void TextureStorage11_Cube::verifyAssociatedImageValid(const gl::ImageIndex &ind ...@@ -1822,7 +1822,7 @@ void TextureStorage11_Cube::verifyAssociatedImageValid(const gl::ImageIndex &ind
const GLint layerTarget = index.layerIndex; const GLint layerTarget = index.layerIndex;
ASSERT(0 <= level && level < gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS); ASSERT(0 <= level && level < gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS);
ASSERT(0 <= layerTarget && layerTarget < static_cast<GLint>(CUBE_FACE_COUNT)); ASSERT(0 <= layerTarget && layerTarget < static_cast<GLint>(gl::CUBE_FACE_COUNT));
// This validation check should never return false. It means the Image/TextureStorage // This validation check should never return false. It means the Image/TextureStorage
// association is broken. // association is broken.
ASSERT(mAssociatedImages[layerTarget][level] == expectedImage); ASSERT(mAssociatedImages[layerTarget][level] == expectedImage);
...@@ -1835,7 +1835,7 @@ void TextureStorage11_Cube::disassociateImage(const gl::ImageIndex &index, Image ...@@ -1835,7 +1835,7 @@ void TextureStorage11_Cube::disassociateImage(const gl::ImageIndex &index, Image
const GLint layerTarget = index.layerIndex; const GLint layerTarget = index.layerIndex;
ASSERT(0 <= level && level < gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS); ASSERT(0 <= level && level < gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS);
ASSERT(0 <= layerTarget && layerTarget < static_cast<GLint>(CUBE_FACE_COUNT)); ASSERT(0 <= layerTarget && layerTarget < static_cast<GLint>(gl::CUBE_FACE_COUNT));
ASSERT(mAssociatedImages[layerTarget][level] == expectedImage); ASSERT(mAssociatedImages[layerTarget][level] == expectedImage);
mAssociatedImages[layerTarget][level] = nullptr; mAssociatedImages[layerTarget][level] = nullptr;
} }
...@@ -1850,11 +1850,11 @@ gl::Error TextureStorage11_Cube::releaseAssociatedImage(const gl::Context *conte ...@@ -1850,11 +1850,11 @@ gl::Error TextureStorage11_Cube::releaseAssociatedImage(const gl::Context *conte
const GLint layerTarget = index.layerIndex; const GLint layerTarget = index.layerIndex;
ASSERT(0 <= level && level < gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS); ASSERT(0 <= level && level < gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS);
ASSERT(0 <= layerTarget && layerTarget < static_cast<GLint>(CUBE_FACE_COUNT)); ASSERT(0 <= layerTarget && layerTarget < static_cast<GLint>(gl::CUBE_FACE_COUNT));
if ((0 <= level && level < gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS)) if ((0 <= level && level < gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS))
{ {
if (0 <= layerTarget && layerTarget < static_cast<GLint>(CUBE_FACE_COUNT)) if (0 <= layerTarget && layerTarget < static_cast<GLint>(gl::CUBE_FACE_COUNT))
{ {
// No need to let the old Image recover its data, if it is also the incoming Image. // No need to let the old Image recover its data, if it is also the incoming Image.
if (mAssociatedImages[layerTarget][level] != nullptr && if (mAssociatedImages[layerTarget][level] != nullptr &&
...@@ -1920,7 +1920,7 @@ gl::Error TextureStorage11_Cube::ensureTextureExists(int mipLevels) ...@@ -1920,7 +1920,7 @@ gl::Error TextureStorage11_Cube::ensureTextureExists(int mipLevels)
desc.Width = mTextureWidth; desc.Width = mTextureWidth;
desc.Height = mTextureHeight; desc.Height = mTextureHeight;
desc.MipLevels = mipLevels; desc.MipLevels = mipLevels;
desc.ArraySize = CUBE_FACE_COUNT; desc.ArraySize = gl::CUBE_FACE_COUNT;
desc.Format = mFormatInfo.texFormat; desc.Format = mFormatInfo.texFormat;
desc.SampleDesc.Count = 1; desc.SampleDesc.Count = 1;
desc.SampleDesc.Quality = 0; desc.SampleDesc.Quality = 0;
...@@ -1970,7 +1970,7 @@ gl::Error TextureStorage11_Cube::getRenderTarget(const gl::Context *context, ...@@ -1970,7 +1970,7 @@ gl::Error TextureStorage11_Cube::getRenderTarget(const gl::Context *context,
const int level = index.mipIndex; const int level = index.mipIndex;
ASSERT(level >= 0 && level < getLevelCount()); ASSERT(level >= 0 && level < getLevelCount());
ASSERT(faceIndex >= 0 && faceIndex < static_cast<GLint>(CUBE_FACE_COUNT)); ASSERT(faceIndex >= 0 && faceIndex < static_cast<GLint>(gl::CUBE_FACE_COUNT));
if (!mRenderTarget[faceIndex][level]) if (!mRenderTarget[faceIndex][level])
{ {
...@@ -2089,7 +2089,7 @@ gl::Error TextureStorage11_Cube::createSRV(const gl::Context *context, ...@@ -2089,7 +2089,7 @@ gl::Error TextureStorage11_Cube::createSRV(const gl::Context *context,
srvDesc.Texture2DArray.MostDetailedMip = mTopLevel + baseLevel; srvDesc.Texture2DArray.MostDetailedMip = mTopLevel + baseLevel;
srvDesc.Texture2DArray.MipLevels = mipLevels; srvDesc.Texture2DArray.MipLevels = mipLevels;
srvDesc.Texture2DArray.FirstArraySlice = 0; srvDesc.Texture2DArray.FirstArraySlice = 0;
srvDesc.Texture2DArray.ArraySize = CUBE_FACE_COUNT; srvDesc.Texture2DArray.ArraySize = gl::CUBE_FACE_COUNT;
} }
else else
{ {
...@@ -2139,7 +2139,7 @@ gl::Error TextureStorage11_Cube::getSwizzleTexture(const TextureHelper11 **outTe ...@@ -2139,7 +2139,7 @@ gl::Error TextureStorage11_Cube::getSwizzleTexture(const TextureHelper11 **outTe
desc.Width = mTextureWidth; desc.Width = mTextureWidth;
desc.Height = mTextureHeight; desc.Height = mTextureHeight;
desc.MipLevels = mMipLevels; desc.MipLevels = mMipLevels;
desc.ArraySize = CUBE_FACE_COUNT; desc.ArraySize = gl::CUBE_FACE_COUNT;
desc.Format = format.texFormat; desc.Format = format.texFormat;
desc.SampleDesc.Count = 1; desc.SampleDesc.Count = 1;
desc.SampleDesc.Quality = 0; desc.SampleDesc.Quality = 0;
...@@ -2173,7 +2173,7 @@ gl::Error TextureStorage11_Cube::getSwizzleRenderTarget(int mipLevel, ...@@ -2173,7 +2173,7 @@ gl::Error TextureStorage11_Cube::getSwizzleRenderTarget(int mipLevel,
rtvDesc.ViewDimension = D3D11_RTV_DIMENSION_TEXTURE2DARRAY; rtvDesc.ViewDimension = D3D11_RTV_DIMENSION_TEXTURE2DARRAY;
rtvDesc.Texture2DArray.MipSlice = mTopLevel + mipLevel; rtvDesc.Texture2DArray.MipSlice = mTopLevel + mipLevel;
rtvDesc.Texture2DArray.FirstArraySlice = 0; rtvDesc.Texture2DArray.FirstArraySlice = 0;
rtvDesc.Texture2DArray.ArraySize = CUBE_FACE_COUNT; rtvDesc.Texture2DArray.ArraySize = gl::CUBE_FACE_COUNT;
ANGLE_TRY(mRenderer->allocateResource(rtvDesc, mSwizzleTexture.get(), ANGLE_TRY(mRenderer->allocateResource(rtvDesc, mSwizzleTexture.get(),
&mSwizzleRenderTargets[mipLevel])); &mSwizzleRenderTargets[mipLevel]));
......
...@@ -34,6 +34,12 @@ class SwapChain11; ...@@ -34,6 +34,12 @@ class SwapChain11;
class Image11; class Image11;
struct Renderer11DeviceCaps; struct Renderer11DeviceCaps;
template <typename T>
using TexLevelArray = std::array<T, gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS>;
template <typename T>
using CubeFaceArray = std::array<T, gl::CUBE_FACE_COUNT>;
class TextureStorage11 : public TextureStorage class TextureStorage11 : public TextureStorage
{ {
public: public:
...@@ -149,7 +155,7 @@ class TextureStorage11 : public TextureStorage ...@@ -149,7 +155,7 @@ class TextureStorage11 : public TextureStorage
unsigned int mTextureHeight; unsigned int mTextureHeight;
unsigned int mTextureDepth; unsigned int mTextureDepth;
gl::SwizzleState mSwizzleCache[gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS]; TexLevelArray<gl::SwizzleState> mSwizzleCache;
TextureHelper11 mDropStencilTexture; TextureHelper11 mDropStencilTexture;
private: private:
...@@ -174,8 +180,8 @@ class TextureStorage11 : public TextureStorage ...@@ -174,8 +180,8 @@ class TextureStorage11 : public TextureStorage
const d3d11::SharedSRV **outSRV); const d3d11::SharedSRV **outSRV);
SRVCache mSrvCache; SRVCache mSrvCache;
std::array<d3d11::SharedSRV, gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS> mLevelSRVs; TexLevelArray<d3d11::SharedSRV> mLevelSRVs;
std::array<d3d11::SharedSRV, gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS> mLevelBlitSRVs; TexLevelArray<d3d11::SharedSRV> mLevelBlitSRVs;
}; };
class TextureStorage11_2D : public TextureStorage11 class TextureStorage11_2D : public TextureStorage11
...@@ -222,7 +228,7 @@ class TextureStorage11_2D : public TextureStorage11 ...@@ -222,7 +228,7 @@ class TextureStorage11_2D : public TextureStorage11
d3d11::SharedSRV *outSRV) const override; d3d11::SharedSRV *outSRV) const override;
TextureHelper11 mTexture; TextureHelper11 mTexture;
std::unique_ptr<RenderTarget11> mRenderTarget[gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS]; TexLevelArray<std::unique_ptr<RenderTarget11>> mRenderTarget;
bool mHasKeyedMutex; bool mHasKeyedMutex;
// These are members related to the zero max-LOD workaround. // These are members related to the zero max-LOD workaround.
...@@ -240,9 +246,9 @@ class TextureStorage11_2D : public TextureStorage11 ...@@ -240,9 +246,9 @@ class TextureStorage11_2D : public TextureStorage11
// Swizzle-related variables // Swizzle-related variables
TextureHelper11 mSwizzleTexture; TextureHelper11 mSwizzleTexture;
d3d11::RenderTargetView mSwizzleRenderTargets[gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS]; TexLevelArray<d3d11::RenderTargetView> mSwizzleRenderTargets;
Image11 *mAssociatedImages[gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS]; TexLevelArray<Image11 *> mAssociatedImages;
}; };
class TextureStorage11_External : public TextureStorage11 class TextureStorage11_External : public TextureStorage11
...@@ -393,21 +399,18 @@ class TextureStorage11_Cube : public TextureStorage11 ...@@ -393,21 +399,18 @@ class TextureStorage11_Cube : public TextureStorage11
DXGI_FORMAT resourceFormat, DXGI_FORMAT resourceFormat,
d3d11::SharedSRV *srv) const; d3d11::SharedSRV *srv) const;
static const size_t CUBE_FACE_COUNT = 6;
TextureHelper11 mTexture; TextureHelper11 mTexture;
std::unique_ptr<RenderTarget11> mRenderTarget[CUBE_FACE_COUNT] CubeFaceArray<TexLevelArray<std::unique_ptr<RenderTarget11>>> mRenderTarget;
[gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS];
// Level-zero workaround members. See TextureStorage11_2D's workaround members for a description. // Level-zero workaround members. See TextureStorage11_2D's workaround members for a description.
TextureHelper11 mLevelZeroTexture; TextureHelper11 mLevelZeroTexture;
std::unique_ptr<RenderTarget11> mLevelZeroRenderTarget[CUBE_FACE_COUNT]; CubeFaceArray<std::unique_ptr<RenderTarget11>> mLevelZeroRenderTarget;
bool mUseLevelZeroTexture; bool mUseLevelZeroTexture;
TextureHelper11 mSwizzleTexture; TextureHelper11 mSwizzleTexture;
d3d11::RenderTargetView mSwizzleRenderTargets[gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS]; TexLevelArray<d3d11::RenderTargetView> mSwizzleRenderTargets;
Image11 *mAssociatedImages[CUBE_FACE_COUNT][gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS]; CubeFaceArray<TexLevelArray<Image11 *>> mAssociatedImages;
}; };
class TextureStorage11_3D : public TextureStorage11 class TextureStorage11_3D : public TextureStorage11
...@@ -448,13 +451,13 @@ class TextureStorage11_3D : public TextureStorage11 ...@@ -448,13 +451,13 @@ class TextureStorage11_3D : public TextureStorage11
typedef std::pair<int, int> LevelLayerKey; typedef std::pair<int, int> LevelLayerKey;
std::map<LevelLayerKey, std::unique_ptr<RenderTarget11>> mLevelLayerRenderTargets; std::map<LevelLayerKey, std::unique_ptr<RenderTarget11>> mLevelLayerRenderTargets;
std::unique_ptr<RenderTarget11> mLevelRenderTargets[gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS]; TexLevelArray<std::unique_ptr<RenderTarget11>> mLevelRenderTargets;
TextureHelper11 mTexture; TextureHelper11 mTexture;
TextureHelper11 mSwizzleTexture; TextureHelper11 mSwizzleTexture;
d3d11::RenderTargetView mSwizzleRenderTargets[gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS]; TexLevelArray<d3d11::RenderTargetView> mSwizzleRenderTargets;
Image11 *mAssociatedImages[gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS]; TexLevelArray<Image11 *> mAssociatedImages;
}; };
class TextureStorage11_2DArray : public TextureStorage11 class TextureStorage11_2DArray : public TextureStorage11
...@@ -525,7 +528,7 @@ class TextureStorage11_2DArray : public TextureStorage11 ...@@ -525,7 +528,7 @@ class TextureStorage11_2DArray : public TextureStorage11
TextureHelper11 mTexture; TextureHelper11 mTexture;
TextureHelper11 mSwizzleTexture; TextureHelper11 mSwizzleTexture;
d3d11::RenderTargetView mSwizzleRenderTargets[gl::IMPLEMENTATION_MAX_TEXTURE_LEVELS]; TexLevelArray<d3d11::RenderTargetView> mSwizzleRenderTargets;
typedef std::map<LevelLayerRangeKey, Image11 *> ImageMap; typedef std::map<LevelLayerRangeKey, Image11 *> ImageMap;
ImageMap mAssociatedImages; ImageMap mAssociatedImages;
......
...@@ -446,7 +446,7 @@ TextureStorage9_Cube::TextureStorage9_Cube(Renderer9 *renderer, GLenum internalf ...@@ -446,7 +446,7 @@ TextureStorage9_Cube::TextureStorage9_Cube(Renderer9 *renderer, GLenum internalf
: TextureStorage9(renderer, GetTextureUsage(internalformat, renderTarget)) : TextureStorage9(renderer, GetTextureUsage(internalformat, renderTarget))
{ {
mTexture = nullptr; mTexture = nullptr;
for (size_t i = 0; i < CUBE_FACE_COUNT; ++i) for (size_t i = 0; i < gl::CUBE_FACE_COUNT; ++i)
{ {
mRenderTarget[i] = nullptr; mRenderTarget[i] = nullptr;
} }
...@@ -467,7 +467,7 @@ TextureStorage9_Cube::~TextureStorage9_Cube() ...@@ -467,7 +467,7 @@ TextureStorage9_Cube::~TextureStorage9_Cube()
{ {
SafeRelease(mTexture); SafeRelease(mTexture);
for (size_t i = 0; i < CUBE_FACE_COUNT; ++i) for (size_t i = 0; i < gl::CUBE_FACE_COUNT; ++i)
{ {
SafeDelete(mRenderTarget[i]); SafeDelete(mRenderTarget[i]);
} }
...@@ -515,7 +515,7 @@ gl::Error TextureStorage9_Cube::getRenderTarget(const gl::Context *context, ...@@ -515,7 +515,7 @@ gl::Error TextureStorage9_Cube::getRenderTarget(const gl::Context *context,
{ {
ASSERT(outRT); ASSERT(outRT);
ASSERT(index.mipIndex == 0); ASSERT(index.mipIndex == 0);
ASSERT(index.layerIndex >= 0 && static_cast<size_t>(index.layerIndex) < CUBE_FACE_COUNT); ASSERT(index.layerIndex >= 0 && static_cast<size_t>(index.layerIndex) < gl::CUBE_FACE_COUNT);
if (mRenderTarget[index.layerIndex] == nullptr && isRenderTarget()) if (mRenderTarget[index.layerIndex] == nullptr && isRenderTarget())
{ {
...@@ -608,7 +608,7 @@ gl::Error TextureStorage9_Cube::copyToStorage(const gl::Context *context, ...@@ -608,7 +608,7 @@ gl::Error TextureStorage9_Cube::copyToStorage(const gl::Context *context,
TextureStorage9_Cube *dest9 = GetAs<TextureStorage9_Cube>(destStorage); TextureStorage9_Cube *dest9 = GetAs<TextureStorage9_Cube>(destStorage);
int levels = getLevelCount(); int levels = getLevelCount();
for (int f = 0; f < static_cast<int>(CUBE_FACE_COUNT); f++) for (int f = 0; f < static_cast<int>(gl::CUBE_FACE_COUNT); f++)
{ {
for (int i = 0; i < levels; i++) for (int i = 0; i < levels; i++)
{ {
......
...@@ -148,10 +148,8 @@ class TextureStorage9_Cube : public TextureStorage9 ...@@ -148,10 +148,8 @@ class TextureStorage9_Cube : public TextureStorage9
gl::Error copyToStorage(const gl::Context *context, TextureStorage *destStorage) override; gl::Error copyToStorage(const gl::Context *context, TextureStorage *destStorage) override;
private: private:
static const size_t CUBE_FACE_COUNT = 6;
IDirect3DCubeTexture9 *mTexture; IDirect3DCubeTexture9 *mTexture;
RenderTarget9 *mRenderTarget[CUBE_FACE_COUNT]; RenderTarget9 *mRenderTarget[gl::CUBE_FACE_COUNT];
}; };
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment