【发布时间】:2011-05-27 22:04:34
【问题描述】:
如果要为大多数版本的 Windows 编写游戏,应该使用哪个 API?
我知道 DirectDraw 在 NT4 及更高版本上工作(尽管 DirectDraw 是在 NT4 上用 GDI 模拟的)。但是,有人告诉我 DirectDraw 在较新版本的 Windows 中已被弃用?
我可以只恢复到 GDI,但是很难完全消除闪烁和撕裂,因为在缓冲区之间没有使用 翻转 的双缓冲。
我应该选择 Direct3D 还是 DirectDraw?或者有什么方法可以完全消除 GDI 中的闪烁?
如果 Direct3D 是答案,大多数平台支持哪个版本?
【问题讨论】:
-
您是否考虑过为此使用 SDL 等更高级别的库?例如,SDL 几乎支持所有 Windows 版本,如果您使用它的功能,您的游戏也可以在 Linux 或 MacOS 等其他系统上运行。
-
你真的需要支持NT4吗?甚至2000?我无法想象还有比 XP 更早的东西。
-
@Rup 我不必这样做,但这会很有趣。低于XP当然会先下架,不过支持NT4和Win95起来就好了。
-
我同意 thkala,使用跨平台库/工具包也将在 Windows 世界中产生更高的兼容性。跨平台支持只是您将获得的一个相当大的好处(恕我直言,这是现代世界的必经之路)。
-
@Amigable:我不得不说,我觉得你对“有趣”的定义很有趣!
标签: windows directx gdi directdraw