Texture streaming has improved performance by taking advantage of the APPLE_copy_texture_levels and EXT_texture_storage extensions.

This commit is contained in:
2013-05-13 18:44:58 -07:00
parent 2de749ff16
commit f9f0c5c704
9 changed files with 125 additions and 38 deletions

View File

@@ -55,6 +55,8 @@ KRTextureCube::~KRTextureCube()
bool KRTextureCube::createGLTexture(int lod_max_dim)
{
releaseHandle();
m_current_lod_max_dim = 0;
GLDEBUG(glGenTextures(1, &m_iHandle));
if(m_iHandle == 0) {
@@ -70,7 +72,7 @@ bool KRTextureCube::createGLTexture(int lod_max_dim)
KRTexture2D *faceTexture = (KRTexture2D *)getContext().getTextureManager()->getTexture(faceName);
if(faceTexture) {
if(faceTexture->hasMipmaps()) bMipMaps = true;
faceTexture->uploadTexture(TARGETS[i], lod_max_dim, m_current_lod_max_dim, m_textureMemUsed);
faceTexture->uploadTexture(TARGETS[i], lod_max_dim, m_current_lod_max_dim, m_textureMemUsed, 0, 0);
}
}