SDL中文论坛

标题: SDL_DestroyTexture [打印本页]

作者: ancientcc    时间: 2016-7-6 15:19
标题: SDL_DestroyTexture
本帖最后由 ancientcc 于 2016-7-6 15:23 编辑

删除指定纹理

语法
  1. void SDL_DestroyTexture(SDL_Texture* texture)
复制代码


参数
texture要删除的纹理


返回值
void

范例
  1. <Example>
复制代码


注释
如果该纹理是渲染器的目标纹理,调用SDL_SetRenderTarget把目标纹理置NULL。

从渲染器的纹理链表删除texture对应的节点。纹理链表见SDL_CreateTexture中的“纹理链表”。

调用DestroyTexture,opengl es2对应GLES2_DestroyTexture。

  1. void GLES2_DestroyTexture(SDL_Renderer *renderer, SDL_Texture *texture)
  2. {
  3.         GLES2_TextureData *tdata = (GLES2_TextureData *)texture->driverdata;
  4.         ......
  5.         if (tdata) {
  6.                 glDeleteTextures(1, &tdata->texture);
  7.                 ......
  8.                 SDL_free(tdata->pixel_data);
  9.                 SDL_free(tdata);
  10.                 texture->driverdata = NULL;
  11.         }
  12. }
复制代码

它不删除fbo,为什么不删见SDL_CreateTexture注释部分的“access==SDL_TEXTUREACCESS_TARGET”。

相关类、函数
SDL_CreateTexture
SDL_CreateTextureFromSurface




欢迎光临 SDL中文论坛 (http://www.libsdl.cn/bbs/) Powered by Discuz! X3.3