我可以将SDL_Textures从一个SDL_Renderer转移到另一个SDL_Renderer吗?
是否可以将绑定到SDL_Renderer的纹理渲染到另一个SDL_Renderer?例如:我可以将SDL_Textures从一个SDL_Renderer转移到另一个SDL_Renderer吗?
SDL_Renderer* render1, render2; //initialization of renderers
SDL_Texture* texture = /* ... */; //created from render1
SDL_RenderCopy(render1, texture, NULL, NULL);
//ChangeRenderer(texture, render2) or something like that
SDL_RenderCopy(render2, teture, NULL, NULL);
为什么我要这样做?因为我有一个TextureManager
链接到我的主要SDL_Renderer
(从窗口创建),但我想在另一个函数SDL_Renderer
(从SDL_CreateSoftwareRenderer(SDL_Surface*)
)内部使用,以便返回纹理而不是直接在主渲染器上绘制。
那么,有可能吗?感谢您的阅读!
回答:
现在看来,这的确是不可能的,但对我来说,我终于找到函数SDL_SetRenderTarget
允许直接渲染上链接到我的主渲染纹理,所以我并不需要使用SDL_CreateSoftwareRenderer
,也不SDL_Surface
。
以上是 我可以将SDL_Textures从一个SDL_Renderer转移到另一个SDL_Renderer吗? 的全部内容, 来源链接: utcz.com/qa/265000.html