opengl SDL2绘制场景到纹理,SDL2渲染纹理,如SFML

7gcisfzg  于 2022-11-04  发布在  其他
关注(0)|答案(2)|浏览(320)

我一直在开发一个2D引擎使用SFML + ImGui。

编辑器是使用ImGui渲染的,场景窗口是sf::RenderTexture,我在其中绘制GameObjects,然后转换为ImGui::Image以在编辑器中渲染。
现在,我需要在今年的学士学位课程中使用SDL2 + ImGui创建一个3D引擎,我想重新创建我使用2D引擎所做的事情。
我已经成功地使用ImGui附带的Example渲染了编辑器,就像我在2D引擎中所做的那样。

但我不知道如何在SDL2中创建与sf::RenderTexture等效的对象,因此我可以在那里绘制3D场景,然后将其转换为ImGui::Image,以便在编辑器中显示。
如果你能提供代码会更好。如果你想让我提供任何具体的代码告诉我。

juzqafwq

juzqafwq1#

你在找这样的东西:

// Create a render texture
SDL_Texture *target = SDL_CreateTexture(renderer, SDL_PIXELFORMAT_RGBA8888, SDL_TEXTUREACCESS_TARGET, width, height);

// Activate the render texture
SDL_SetRenderTarget(renderer, target);

// (Do your rendering here)

// Disable the render texture
SDL_SetRenderTarget(renderer, NULL);

// (Use the render texture)

相关问题