SDL中文论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 4325|回复: 0
打印 上一主题 下一主题

[SDL] SDL_DestroyTexture

[复制链接]

149

主题

331

帖子

2445

积分

版主

Rank: 7Rank: 7Rank: 7

积分
2445
跳转到指定楼层
楼主
发表于 2016-7-6 15:19:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 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
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|丽谷软件|libsdl.cn

GMT+8, 2025-5-2 01:07 , Processed in 0.050447 second(s), 20 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表