【发布时间】:2011-03-08 03:43:34
【问题描述】:
我正在尝试用 C++ 为游戏编写一些样板代码。我想同时使用 SDL 和 OpenGL 进行绘制。例如,我想有 2 个版本的函数“DrawPixel”用 OpenGL 和 SDL 编写。我不能同时使用 SDL 和 OpenGL 进行渲染,但是我想要一个通用的绘图接口,这样我在实现游戏时就不必编写两倍的代码了。
我可以编写一个基类,其中包含我想要的所有虚拟绘图功能,然后为 SDL 和 OpenGL 重载它的 2 个版本。问题在于性能,因为我可能最终每秒调用 DrawPixel 数百万次,解决虚拟调用会很昂贵。
除了这种 OO 方法,我还有哪些其他选择? (或者你可以告诉我虚拟并不慢)
【问题讨论】:
标签: c++ design-patterns opengl sdl virtual-functions