如何只使用SDL编写的游戏OpenGL代码的一部分?

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

所以,我正在制作一个类似于Vector Runner的游戏。我有一个背景纹理和几个纹理对象都使用SDL实现。我想用glRotate旋转背景。我不希望它移动或任何东西,我只是想对它有不同的看法(类似于第三人称视角)并保持这种方式。由于现在一切都是SDL,我可以只创建background.h和.cpp并在那里实现OpenGL,还是需要在整个代码中使用它,还是有办法使用SDL?

c++ opengl sdl
1个回答
1
投票

就个人而言,我不会尝试将OpenGL与SDL的2D表面类型代码混合使用。我也可以使用OpenGL实现sprite(更快,更多操作选项)或尽可能使用SDL函数(最简单的选项)或使用软件渲染来旋转背景(非常便携并且都在您的控制之下)。

我想用glRotate旋转背景。我不希望它移动或任何东西,我只是想对它有不同的看法(类似于第三人称视角)并保持这种方式。

如果你想自己做旋转,你可以使用texture mapping techniques,并逐个像素地自己渲染。如果背景不移动,您只需要执行一次并将结果存储在缓冲区中。

SDL还有一个渲染功能,可以选择旋转源图像(没有透视变换选项):https://wiki.libsdl.org/SDL_RenderCopyEx

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