Lines Matching refs:This

10  * This library is free software; you can redistribute it and/or
15 * This library is distributed in the hope that it will be useful,
37 #define GLINFO_LOCATION (This->resource.device->adapter->gl_info)
104 static void gltexture_delete(IWineD3DTextureImpl *This, struct gl_texture *tex)
107 texture_gl_delete(This, tex->name);
114 IWineD3DTextureImpl *This = (IWineD3DTextureImpl *)iface;
115 IWineD3DDeviceImpl *device = This->resource.device;
117 if (This->baseTexture.texture_rgb.name || This->baseTexture.texture_srgb.name)
122 if(This->baseTexture.texture_rgb.name) {
123 gltexture_delete(This, &This->baseTexture.texture_rgb);
125 if(This->baseTexture.texture_srgb.name) {
126 gltexture_delete(This, &This->baseTexture.texture_srgb);
131 This->baseTexture.texture_rgb.dirty = TRUE;
132 This->baseTexture.texture_srgb.dirty = TRUE;
137 IWineD3DBaseTextureImpl *This = (IWineD3DBaseTextureImpl *)iface;
138 DWORD old = This->baseTexture.LOD;
143 if (This->resource.pool != WINED3DPOOL_MANAGED) {
144 TRACE("Ignoring SetLOD on %s texture, returning 0\n", debug_d3dpool(This->resource.pool));
148 if(LODNew >= This->baseTexture.levels)
149 LODNew = This->baseTexture.levels - 1;
151 if(This->baseTexture.LOD != LODNew) {
152 This->baseTexture.LOD = LODNew;
154 This->baseTexture.texture_rgb.states[WINED3DTEXSTA_MAXMIPLEVEL] = ~0U;
155 This->baseTexture.texture_srgb.states[WINED3DTEXSTA_MAXMIPLEVEL] = ~0U;
156 if(This->baseTexture.bindCount) {
157 IWineD3DDeviceImpl_MarkStateDirty(This->resource.device, STATE_SAMPLER(This->baseTexture.sampler));
161 TRACE("(%p) : set LOD to %d\n", This, This->baseTexture.LOD);
168 IWineD3DBaseTextureImpl *This = (IWineD3DBaseTextureImpl *)iface;
170 TRACE("(%p) : returning %d\n", This, This->baseTexture.LOD);
172 return This->baseTexture.LOD;
177 IWineD3DBaseTextureImpl *This = (IWineD3DBaseTextureImpl *)iface;
178 TRACE("(%p) : returning %d\n", This, This->baseTexture.levels);
179 return This->baseTexture.levels;
184 IWineD3DBaseTextureImpl *This = (IWineD3DBaseTextureImpl *)iface;
185 IWineD3DDeviceImpl *device = This->resource.device;
188 if (!(This->resource.usage & WINED3DUSAGE_AUTOGENMIPMAP)) {
189 TRACE("(%p) : returning invalid call\n", This);
192 if(This->baseTexture.filterType != FilterType) {
200 glBindTexture(textureDimensions, This->baseTexture.texture_rgb.name);
223 This->baseTexture.filterType = FilterType;
224 TRACE("(%p) :\n", This);
230 IWineD3DBaseTextureImpl *This = (IWineD3DBaseTextureImpl *)iface;
232 FIXME("(%p) : stub\n", This);
234 return This->baseTexture.filterType;
246 IWineD3DBaseTextureImpl *This = (IWineD3DBaseTextureImpl *)iface;
247 old = This->baseTexture.texture_rgb.dirty || This->baseTexture.texture_srgb.dirty;
248 This->baseTexture.texture_rgb.dirty = dirty;
249 This->baseTexture.texture_srgb.dirty = dirty;
255 IWineD3DBaseTextureImpl *This = (IWineD3DBaseTextureImpl *)iface;
256 return This->baseTexture.texture_rgb.dirty || This->baseTexture.texture_srgb.dirty;
282 IWineD3DBaseTextureImpl *This = (IWineD3DBaseTextureImpl *)iface;
287 TRACE("(%p) : About to bind texture\n", This);
289 This->baseTexture.is_srgb = srgb; /* SRGB mode cache for PreLoad calls outside drawprim */
291 gl_tex = &This->baseTexture.texture_srgb;
293 gl_tex = &This->baseTexture.texture_rgb;
302 if (VBOXSHRC_IS_SHARED_OPENED(This))
305 gl_tex->name = (GLuint)VBOXSHRC_GET_SHAREHANDLE(This);
317 if (VBOXSHRC_IS_SHARED(This))
319 VBOXSHRC_SET_SHAREHANDLE(This, gl_tex->name);
324 if (This->resource.pool == WINED3DPOOL_DEFAULT) {
340 && This->resource.usage & WINED3DUSAGE_AUTOGENMIPMAP) {
341 /* This means double binding the texture at creation, but keeps the code simpler all
366 TRACE("Setting GL_TEXTURE_MAX_LEVEL to %d\n", This->baseTexture.levels - 1);
367 glTexParameteri(textureDimensions, GL_TEXTURE_MAX_LEVEL, This->baseTexture.levels - 1);
368 checkGLcall("glTexParameteri(textureDimensions, GL_TEXTURE_MAX_LEVEL, This->baseTexture.levels)");
378 WARN("This texture doesn't have an openGL texture assigned to it\n");
420 IWineD3DBaseTextureImpl *This = (IWineD3DBaseTextureImpl *)iface;
429 if(This->baseTexture.is_srgb) {
430 gl_tex = &This->baseTexture.texture_srgb;
432 gl_tex = &This->baseTexture.texture_rgb;
435 /* This function relies on the correct texture being bound and loaded. */
473 glValue = wined3d_gl_mag_filter(This->baseTexture.magLookup,
498 glValue = wined3d_gl_min_mip_filter(This->baseTexture.minMipLookup,
510 glValue = This->baseTexture.LOD;
511 } else if(gl_tex->states[WINED3DTEXSTA_MAXMIPLEVEL] >= This->baseTexture.levels) {
512 glValue = This->baseTexture.levels - 1;
513 } else if(gl_tex->states[WINED3DTEXSTA_MAXMIPLEVEL] < This->baseTexture.LOD) {
515 glValue = This->baseTexture.LOD;