Lines Matching refs:Texture
28 * Texture state handling.
74 dst->Texture.CurrentUnit = src->Texture.CurrentUnit;
75 dst->Texture._GenFlags = src->Texture._GenFlags;
76 dst->Texture._TexGenEnabled = src->Texture._TexGenEnabled;
77 dst->Texture._TexMatEnabled = src->Texture._TexMatEnabled;
81 dst->Texture.Unit[u].LodBias = src->Texture.Unit[u].LodBias;
94 _mesa_reference_texobj(&dst->Texture.Unit[u].CurrentTex[tex],
95 src->Texture.Unit[u].CurrentTex[tex]);
96 if (src->Texture.Unit[u].CurrentTex[tex]) {
97 dst->Texture.NumCurrentTexUsed =
98 MAX2(dst->Texture.NumCurrentTexUsed, u + 1);
101 dst->Texture.Unit[u]._BoundTextures = src->Texture.Unit[u]._BoundTextures;
107 dst->Texture.FixedFuncUnit[u].Enabled = src->Texture.FixedFuncUnit[u].Enabled;
108 dst->Texture.FixedFuncUnit[u].EnvMode = src->Texture.FixedFuncUnit[u].EnvMode;
109 COPY_4V(dst->Texture.FixedFuncUnit[u].EnvColor, src->Texture.FixedFuncUnit[u].EnvColor);
110 dst->Texture.FixedFuncUnit[u].TexGenEnabled = src->Texture.FixedFuncUnit[u].TexGenEnabled;
111 dst->Texture.FixedFuncUnit[u].GenS = src->Texture.FixedFuncUnit[u].GenS;
112 dst->Texture.FixedFuncUnit[u].GenT = src->Texture.FixedFuncUnit[u].GenT;
113 dst->Texture.FixedFuncUnit[u].GenR = src->Texture.FixedFuncUnit[u].GenR;
114 dst->Texture.FixedFuncUnit[u].GenQ = src->Texture.FixedFuncUnit[u].GenQ;
117 dst->Texture.FixedFuncUnit[u].Combine = src->Texture.FixedFuncUnit[u].Combine;
128 const struct gl_fixedfunc_texture_unit *texUnit = ctx->Texture.FixedFuncUnit + unit;
129 printf("Texture Unit %d\n", unit);
153 /* Texture Environment */
298 if (ctx->Texture.CurrentUnit == texUnit)
304 assert(k <= ARRAY_SIZE(ctx->Texture.Unit));
315 * gl_context::Texture::CurrentUnit is not used by
326 ctx->Texture.CurrentUnit = texUnit;
392 ctx->Texture._TexMatEnabled = 0x0;
399 if (ctx->Texture.Unit[u]._Current &&
401 ctx->Texture._TexMatEnabled |= ENABLE_TEXMAT(u);
614 &ctx->Texture.FixedFuncUnit[unit];
618 if (!(ctx->Texture._EnabledCoordUnits & (1 << unit)))
635 ctx->Texture._TexGenEnabled |= ENABLE_TEXGEN(unit);
636 ctx->Texture._GenFlags |= texUnit->_GenFlags;
641 ctx->Texture._TexMatEnabled |= ENABLE_TEXMAT(unit);
654 texUnit = &ctx->Texture.Unit[unit];
683 * ("Texture Access"):
709 _mesa_reference_texobj(&ctx->Texture.Unit[unit]._Current, texObj);
711 ctx->Texture._MaxEnabledTexImageUnit =
712 MAX2(ctx->Texture._MaxEnabledTexImageUnit, (int)unit);
756 ctx->Texture._EnabledCoordUnits |=
769 struct gl_texture_unit *texUnit = &ctx->Texture.Unit[unit];
771 &ctx->Texture.FixedFuncUnit[unit];
784 /* From the GL 4.4 compat specification, section 16.2 ("Texture Application"):
834 ctx->Texture._MaxEnabledTexImageUnit =
835 MAX2(ctx->Texture._MaxEnabledTexImageUnit, (int)unit);
837 ctx->Texture._EnabledCoordUnits |= 1 << unit;
855 if (!ctx->Texture.Unit[unit]._Current) {
858 _mesa_reference_texobj(&ctx->Texture.Unit[unit]._Current, texObj);
860 ctx->Texture._MaxEnabledTexImageUnit =
861 MAX2(ctx->Texture._MaxEnabledTexImageUnit, (int)unit);
880 int old_max_unit = ctx->Texture._MaxEnabledTexImageUnit;
893 ctx->Texture._GenFlags = 0x0;
894 ctx->Texture._TexMatEnabled = 0x0;
895 ctx->Texture._TexGenEnabled = 0x0;
896 ctx->Texture._MaxEnabledTexImageUnit = -1;
897 ctx->Texture._EnabledCoordUnits = 0x0;
914 for (i = 0; i <= ctx->Texture._MaxEnabledTexImageUnit; i++) {
916 _mesa_reference_texobj(&ctx->Texture.Unit[i]._Current, NULL);
918 for (i = ctx->Texture._MaxEnabledTexImageUnit + 1; i <= old_max_unit; i++) {
919 _mesa_reference_texobj(&ctx->Texture.Unit[i]._Current, NULL);
975 if (!(ctx->Texture.ProxyTex[tgt]
979 ctx->Driver.DeleteTexture(ctx, ctx->Texture.ProxyTex[tgt]);
985 assert(ctx->Texture.ProxyTex[0]->RefCount == 1); /* sanity check */
998 /* Texture group */
999 ctx->Texture.CurrentUnit = 0; /* multitexture */
1016 ctx->Texture.CubeMapSeamless = ctx->API == API_OPENGLES2;
1018 for (u = 0; u < ARRAY_SIZE(ctx->Texture.Unit); u++) {
1019 struct gl_texture_unit *texUnit = &ctx->Texture.Unit[u];
1031 for (u = 0; u < ARRAY_SIZE(ctx->Texture.FixedFuncUnit); u++) {
1033 &ctx->Texture.FixedFuncUnit[u];
1075 _mesa_reference_buffer_object(ctx, &ctx->Texture.BufferObject,
1078 ctx->Texture.NumCurrentTexUsed = 0;
1093 for (u = 0; u < ARRAY_SIZE(ctx->Texture.Unit); u++) {
1095 _mesa_reference_texobj(&ctx->Texture.Unit[u]._Current, NULL);
1098 _mesa_reference_texobj(&ctx->Texture.Unit[u].CurrentTex[tgt], NULL);
1104 ctx->Driver.DeleteTexture(ctx, ctx->Texture.ProxyTex[tgt]);
1107 _mesa_reference_buffer_object(ctx, &ctx->Texture.BufferObject, NULL);
1109 for (u = 0; u < ARRAY_SIZE(ctx->Texture.Unit); u++) {
1110 _mesa_reference_sampler_object(ctx, &ctx->Texture.Unit[u].Sampler, NULL);
1125 for (u = 0; u < ARRAY_SIZE(ctx->Texture.Unit); u++) {
1126 struct gl_texture_unit *texUnit = &ctx->Texture.Unit[u];