我可以将SDL_Textures从一个SDL_Renderer转移到另一个SDL_Renderer吗?

问题描述 投票:0回答:1

是否可以将绑定到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*))以返回纹理而不是直接在主渲染器上绘制。

那么,有可能吗?谢谢你的阅读!

c++ textures sdl-2
1个回答
0
投票

它似乎确实是不可能的,但对于我的情况,我终于找到了允许直接渲染链接到我的主渲染器的纹理的函数SDL_SetRenderTarget,所以我不需要使用SDL_CreateSoftwareRenderer,也不需要使用SDL_Surface

© www.soinside.com 2019 - 2024. All rights reserved.