C ++图形库

时间:2011-12-17 13:39:18

标签: c++ graphics 2d

我正在使用C ++进行模拟项目,我需要以图形方式输出一些信息。我搜索了它并发现了一些图书馆,但大多数只是做绘图或其他东西。还有像EasyBMP这样的库,可用于创建位图图像或类似的图像格式。还有一些像OpenGL,DirectX和SDL这样的库可以实现硬件加速的实时图形。 我的问题是我需要一个实时库,硬件加速图形。作为这个领域的新手,我无法做出像OpenGL或DirectX这样的东西。我只需要做2D图形工作,所以我认为没有必要把时间花在学习OpenGL之类的东西上。它最好是跨平台的,但这不是必需品。 如果您对SDL或OpenGL或DirectX有一些很好的信息来源,我很高兴知道它。

PS:我的目标平台是windows。

6 个答案:

答案 0 :(得分:5)

让我们创建另一个2D引擎列表:

所有这些组合都支持2D图形+输入。

答案 1 :(得分:3)

在一个主要专注于建模统计数据的10周大学课程中学习了OpenGL的基础知识,我绝对认为OpenGL对于2D实时建模易于学习的图形包是一个合理的选择。

虽然OpenGL当然具有复杂性,但您不需要围绕所有这些不需要的功能,使用图形屏幕进行基本项目几乎都是您不需要的样板代码。很好理解,您几乎可以从示例项目中复制和粘贴。例如,here are some sample programs与OpenGL上的教科书一起使用。将整个库配置为项目的一部分只需要将几个.lib文件添加到配置设置中的某个位置,不需要花费太多时间让它“做某事”然后你只需要为了熟悉一小部分功能,对我来说,几乎看起来比用Java绘制2D内容更容易。

我真的不太了解其他任何建模工具,只是觉得我扔掉那里我不会写得太快,因为“太复杂”,考虑是合理的即使没有C ++或图形等方面的巨大背景,

答案 2 :(得分:0)

有一个很好的SDL教程,向您展示如何在http://lazyfoo.net/SDL_tutorials/

上捕获输入等

它基于游戏设计,但您可以从中学习SDL程序的概念。

希望这对您的问题有帮助"如果您对SDL或OpenGL或DirectX有一些很好的信息来源,我很高兴知道它。"

答案 3 :(得分:0)

对于2D,我推荐HGE,游戏引擎使用DX作为图形驱动程序,这很容易入手。 它只能在Windows下运行,但here是MAC / UNIX的端口

使用SDL时遇到的问题是它不是硬件加速的。是的,它支持OpenGL,但是如果你想将它与opengl一起使用,你必须自己做所有事情,

答案 4 :(得分:0)

如果您只需绘制调试信息,那么我创建了一个工具来绘制图形并在几个小时前发布它。

https://www.youtube.com/watch?v=xD080qQVaD8&feature=youtu.be

https://github.com/burlachenkok/plotter_plusplus

要使用此工具,您可以使用台式计算机显示图形。

但您可以在任何平台的任何语言的任何地方运行目标项目(模拟器) - 更新图形只需通过网络发送数据。

答案 5 :(得分:0)

您可以使用C ++ CLI / CLR进行编程,并将Windows API用作

  1. Direct2D:on MSDN
  2. GDI +

这是一个有趣的链接on MSDN