【问题标题】:2d drawing primitives and images: OpenGL, Cairo or Agg2d 绘图图元和图像:OpenGL、Cairo 或 Agg
【发布时间】:2011-11-08 18:01:02
【问题描述】:

我正在制作游戏并考虑在 UI 中使用矢量形状。我想知道什么是最好的渲染器。我认为 Agg 比 Cairo 快,但 Cairo 可以使用硬件加速(如果可用)。那么opengl呢?我对图像和线条使用 gl 纹理来做矩形、圆角矩形和圆形是个好主意吗?或者我在opengl中渲染开罗表面更好? 我发现的其他替代品是 Google Skia 和 SFML。你觉得斯基亚怎么样? SFML 还绘制多边形。我可以使用多边形制作圆形。我什至在考虑使用 SDL 或 SFML 来控制事件。在这两种情况下,我都可以创建一个 OpenGL 上下文,并且我已经习惯了它们在控制事件中的角色,这些事件是跨平台的。 我想要一个跨平台的解决方案。它应该可以在 linux、mac 和 windows 上运行。

【问题讨论】:

    标签: performance opengl 2d cairo sfml


    【解决方案1】:

    如果您已经在使用 OpenGL 来渲染您的游戏,那么您应该做的一件事是使用任何类型的软件渲染器来绘制游戏的 UI。所以要么使用 Cairo 的 OpenGL 后端(我知道这不是特别好),要么自己在 OpenGL 中进行渲染。否则,从 CPU 内存到 GPU 的所有像素传输都会影响性能。

    【讨论】:

    • +1。请告诉 Wayland/GNOME3 的开发者。他们的架构是“渲染所有客户端,使用 OpenGL 进行窗口合成”。效率低下,字体看起来像垃圾。
    • 如果您将所有已渲染的纹理转换为一个纹理,每帧一次?
    猜你喜欢
    • 1970-01-01
    • 2023-03-23
    • 2014-09-25
    • 2012-09-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多