【发布时间】:2014-02-18 23:50:58
【问题描述】:
谁能用简单的话向我解释一下纹理和表面之间的区别?我看到它在SDL2 中用作SDL_Surface 和SDL_Texture。 SDL_Texture 是从 SDL_Surface 创建的,而 SDL_Surface 又是从图像/位图创建的。两者都是像素的集合。但我看不出它们之间的主要区别(必须用 GPU 做点什么?)
我试图用谷歌搜索,但我发现的所有解释都太复杂了,如果不深入研究计算机图形学的东西,就无法理解它们。
【问题讨论】:
-
在这里看看我的回答:stackoverflow.com/questions/21007329/what-is-a-sdl-renderer/… 它将解释
SDL_Texture和SDL_Surface以及SDL_Renderer。通常,SDL_Texture是用于渲染的,但是当您使用SDL_Image或SDL_ttf加载纹理信息时,您将获得SDL_Surface形式的数据 -
@olevegard 这个答案几乎是复制粘贴,我真的很想有一些知识的答案。
-
正如你所假设的,
SDL_Surface只是像素的集合,而SDL_Texture是an efficient, driver-specific representation of pixel data,这意味着它可以被 GPU wiki.libsdl.org/SDL_Texture 使用。这回答了你的问题吗?你真的应该更深入地研究计算机图形以了解更多 -
@olevegard 太糟糕了,你没有在答案中写下这个。这是你的机会。