2017-12-27 81 views
0

是否可以將綁定到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*))內部使用,以便返回紋理而不是直接在主渲染器上繪製。

那麼,有可能嗎?感謝您的閱讀!

+0

我會說不,並有很好的理由。不過,您可以使用'SDL_Surface',並將其轉換爲目標渲染器上的紋理。 – keltar

回答

0

現在看來,這的確是不可能的,但對我來說,我終於找到函數SDL_SetRenderTarget允許直接渲染上鍊接到我的主渲染紋理,所以我並不需要使用SDL_CreateSoftwareRenderer,也不SDL_Surface

相關問題