[Mesa-dev] [PATCH 01/18] mesa: Store the target index in gl_texture_object
Fredrik Höglund
fredrik at kde.org
Tue Jan 21 15:35:39 PST 2014
This will be used by glBindTextures() so we don't have to look it up
for each texture.
---
src/mesa/main/mtypes.h | 1 +
src/mesa/main/texobj.c | 2 ++
2 files changed, 3 insertions(+)
diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h
index c396609..2fe47c4 100644
--- a/src/mesa/main/mtypes.h
+++ b/src/mesa/main/mtypes.h
@@ -1194,6 +1194,7 @@ struct gl_texture_object
GLuint Name; /**< the user-visible texture object ID */
GLchar *Label; /**< GL_KHR_debug */
GLenum Target; /**< GL_TEXTURE_1D, GL_TEXTURE_2D, etc. */
+ GLuint TargetIndex; /**< The gl_texture_unit::CurrentTex index */
struct gl_sampler_object Sampler;
diff --git a/src/mesa/main/texobj.c b/src/mesa/main/texobj.c
index 3c64c437..4d97275 100644
--- a/src/mesa/main/texobj.c
+++ b/src/mesa/main/texobj.c
@@ -259,6 +259,7 @@ _mesa_copy_texture_object( struct gl_texture_object *dest,
const struct gl_texture_object *src )
{
dest->Target = src->Target;
+ dest->TargetIndex = src->TargetIndex;
dest->Name = src->Name;
dest->Priority = src->Priority;
dest->Sampler.BorderColor.f[0] = src->Sampler.BorderColor.f[0];
@@ -1318,6 +1319,7 @@ _mesa_BindTexture( GLenum target, GLuint texName )
_glthread_UNLOCK_MUTEX(ctx->Shared->Mutex);
}
newTexObj->Target = target;
+ newTexObj->TargetIndex = targetIndex;
}
assert(valid_texture_object(newTexObj));
--
1.7.10.4
More information about the mesa-dev
mailing list