Lines Matching defs:obj

75                        const struct gl_texture_object *obj)
77 switch (obj->Sampler.Attrib.MagFilter) {
79 if (obj->_IsHalfFloat && !ctx->Extensions.OES_texture_half_float_linear) {
81 } else if (obj->_IsFloat && !ctx->Extensions.OES_texture_float_linear) {
92 switch (obj->Sampler.Attrib.MinFilter) {
97 if (obj->_IsHalfFloat && !ctx->Extensions.OES_texture_half_float_linear) {
99 } else if (obj->_IsFloat && !ctx->Extensions.OES_texture_float_linear) {
268 * \param obj the texture object
274 struct gl_texture_object *obj,
291 memset(obj, 0, sizeof(*obj));
293 obj->RefCount = 1;
294 obj->Name = name;
295 obj->Target = target;
297 obj->TargetIndex = _mesa_tex_target_to_index(ctx, target);
300 obj->TargetIndex = NUM_TEXTURE_TARGETS; /* invalid/error value */
302 obj->Attrib.Priority = 1.0F;
303 obj->Attrib.BaseLevel = 0;
304 obj->Attrib.MaxLevel = 1000;
307 obj->RequiredTextureImageUnits = 1;
312 obj->Sampler.Attrib.WrapS = GL_CLAMP_TO_EDGE;
313 obj->Sampler.Attrib.WrapT = GL_CLAMP_TO_EDGE;
314 obj->Sampler.Attrib.WrapR = GL_CLAMP_TO_EDGE;
315 obj->Sampler.Attrib.MinFilter = GL_LINEAR;
316 obj->Sampler.Attrib.state.wrap_s = PIPE_TEX_WRAP_CLAMP_TO_EDGE;
317 obj->Sampler.Attrib.state.wrap_t = PIPE_TEX_WRAP_CLAMP_TO_EDGE;
318 obj->Sampler.Attrib.state.wrap_r = PIPE_TEX_WRAP_CLAMP_TO_EDGE;
319 obj->Sampler.Attrib.state.min_img_filter = PIPE_TEX_FILTER_LINEAR;
320 obj->Sampler.Attrib.state.min_mip_filter = PIPE_TEX_MIPFILTER_NONE;
323 obj->Sampler.Attrib.WrapS = GL_REPEAT;
324 obj->Sampler.Attrib.WrapT = GL_REPEAT;
325 obj->Sampler.Attrib.WrapR = GL_REPEAT;
326 obj->Sampler.Attrib.MinFilter = GL_NEAREST_MIPMAP_LINEAR;
327 obj->Sampler.Attrib.state.wrap_s = PIPE_TEX_WRAP_REPEAT;
328 obj->Sampler.Attrib.state.wrap_t = PIPE_TEX_WRAP_REPEAT;
329 obj->Sampler.Attrib.state.wrap_r = PIPE_TEX_WRAP_REPEAT;
330 obj->Sampler.Attrib.state.min_img_filter = PIPE_TEX_FILTER_NEAREST;
331 obj->Sampler.Attrib.state.min_mip_filter = PIPE_TEX_MIPFILTER_LINEAR;
333 obj->Sampler.Attrib.MagFilter = GL_LINEAR;
334 obj->Sampler.Attrib.state.mag_img_filter = PIPE_TEX_FILTER_LINEAR;
335 obj->Sampler.Attrib.MinLod = -1000.0;
336 obj->Sampler.Attrib.MaxLod = 1000.0;
337 obj->Sampler.Attrib.state.min_lod = 0; /* no negative numbers */
338 obj->Sampler.Attrib.state.max_lod = 1000;
339 obj->Sampler.Attrib.LodBias = 0.0;
340 obj->Sampler.Attrib.state.lod_bias = 0;
341 obj->Sampler.Attrib.MaxAnisotropy = 1.0;
342 obj->Sampler.Attrib.state.max_anisotropy = 0; /* gallium sets 0 instead of 1 */
343 obj->Sampler.Attrib.CompareMode = GL_NONE; /* ARB_shadow */
344 obj->Sampler.Attrib.CompareFunc = GL_LEQUAL; /* ARB_shadow */
345 obj->Sampler.Attrib.state.compare_mode = PIPE_TEX_COMPARE_NONE;
346 obj->Sampler.Attrib.state.compare_func = PIPE_FUNC_LEQUAL;
347 obj->Attrib.DepthMode = ctx->API == API_OPENGL_CORE ? GL_RED : GL_LUMINANCE;
348 obj->StencilSampling = false;
349 obj->Sampler.Attrib.CubeMapSeamless = GL_FALSE;
350 obj->Sampler.Attrib.state.seamless_cube_map = false;
351 obj->Sampler.HandleAllocated = GL_FALSE;
352 obj->Attrib.Swizzle[0] = GL_RED;
353 obj->Attrib.Swizzle[1] = GL_GREEN;
354 obj->Attrib.Swizzle[2] = GL_BLUE;
355 obj->Attrib.Swizzle[3] = GL_ALPHA;
356 obj->Attrib._Swizzle = SWIZZLE_NOOP;
357 obj->Sampler.Attrib.sRGBDecode = GL_DECODE_EXT;
358 obj->Sampler.Attrib.ReductionMode = GL_WEIGHTED_AVERAGE_EXT;
359 obj->Sampler.Attrib.state.reduction_mode = PIPE_TEX_REDUCTION_WEIGHTED_AVERAGE;
360 obj->BufferObjectFormat = ctx->API == API_OPENGL_COMPAT ? GL_LUMINANCE8 : GL_R8;
361 obj->_BufferObjectFormat = ctx->API == API_OPENGL_COMPAT
363 obj->Attrib.ImageFormatCompatibilityType = GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE;
366 _mesa_init_texture_handles(obj);
368 obj->level_override = -1;
369 obj->layer_override = -1;
370 simple_mtx_init(&obj->validate_mutex, mtx_plain);
371 obj->needs_validation = true;
375 obj->sampler_views = calloc(1, sizeof(struct st_sampler_views)
377 if (!obj->sampler_views) {
380 obj->sampler_views->max = 1;
399 struct gl_texture_object *obj;
401 obj = MALLOC_STRUCT(gl_texture_object);
402 if (!obj)
405 if (!_mesa_initialize_texture_object(ctx, obj, name, target)) {
406 free(obj);
409 return obj;
418 struct gl_texture_object *obj, int targetIndex)
421 assert(obj->Target == 0);
423 obj->Target = target;
424 obj->TargetIndex = targetIndex;
425 assert(obj->TargetIndex < NUM_TEXTURE_TARGETS);
436 obj->Sampler.Attrib.WrapS = GL_CLAMP_TO_EDGE;
437 obj->Sampler.Attrib.WrapT = GL_CLAMP_TO_EDGE;
438 obj->Sampler.Attrib.WrapR = GL_CLAMP_TO_EDGE;
439 obj->Sampler.Attrib.state.wrap_s = PIPE_TEX_WRAP_CLAMP_TO_EDGE;
440 obj->Sampler.Attrib.state.wrap_t = PIPE_TEX_WRAP_CLAMP_TO_EDGE;
441 obj->Sampler.Attrib.state.wrap_r = PIPE_TEX_WRAP_CLAMP_TO_EDGE;
442 obj->Sampler.Attrib.MinFilter = filter;
443 obj->Sampler.Attrib.MagFilter = filter;
444 obj->Sampler.Attrib.state.min_img_filter = filter_to_gallium(filter);
445 obj->Sampler.Attrib.state.min_mip_filter = mipfilter_to_gallium(filter);
446 obj->Sampler.Attrib.state.mag_img_filter = filter_to_gallium(filter);