【发布时间】:2011-04-12 21:31:19
【问题描述】:
我使用 Allegro 5 已经有一段时间了,最近开始研究使用 Freeglut 的 OpenGL。
我已经准备好进行转换,但我想知道它是否真的值得。 OpenGL的绘图操作真的比Allegro5高效吗?
【问题讨论】:
我使用 Allegro 5 已经有一段时间了,最近开始研究使用 Freeglut 的 OpenGL。
我已经准备好进行转换,但我想知道它是否真的值得。 OpenGL的绘图操作真的比Allegro5高效吗?
【问题讨论】:
Allegro 5 只有两个图形驱动程序:Direct3D 和 OpenGL。在 Windows 上,您可以在两者之间进行选择。在其他平台上,您必须使用 OpenGL。因此,您的问题有点无关紧要,因为 Allegro 5 中的所有内容(除非您明确使用未加速的内存位图) 都是硬件加速的,而且很可能通过 OpenGL。
如果您正在构建 3D 游戏,那么 Allegro 并没有任何非常有用的图形例程。但是您仍然可以使用它来设置显示窗口并获取 OpenGL 上下文。然后您可以继续将 Allegro 用于其他组件(输入、声音等)。
【讨论】:
这取决于您执行的绘图操作。
这还取决于您执行的操作是否可以通过 OpenGL 进行硬件加速,以及这种加速是否有益。 (在 OpenGL 上,它还取决于您如何执行这些操作,因为已知某些绘图方法比其他方法要慢得多。)
如果您想确定,那么编写一些简单的程序,其中一个使用 Allegro 的非加速 API 进行绘制,然后另一个使用等效的 OpenGL 操作进行绘制,并分析它们。
(总的来说,我认为你的结果可能没有意义,如果你的程序太简单或依赖太简单的操作。许多绘图操作非常快,即使使用硬件加速,你也可能看不到任何区别,或者差异可能很小,以至于无关紧要。)
【讨论】: