渲染n体模拟

时间:2014-05-05 22:33:25

标签: c++ graphics opencl simulation gpu-programming

我正在使用openCL来模拟n体问题。我得到的输出是三维空间(x,y,z)中粒子的位置。我现在要做的是逐帧渲染它们,我只是想知道如何完成它。我正在使用C ++并且没有任何以前的图形经验。

如果你能指出我正确的方向,那就太棒了。

由于

3 个答案:

答案 0 :(得分:3)

如果你只是在寻找一个可以使用的图形库,我推荐使用SFML。我现在实际上正在将它用于类似项目并且效果很好! http://www.sfml-dev.org/

答案 1 :(得分:3)

这是一个广泛的问题,很可能会被关闭,但一些起点可能是:

  • 使用openCL/openGL interoperability直接呈现您的数据
  • 如果速度并不重要且您不介意将数据传回主机,则可以使用openGL库(陡峭的学习曲线)或Windows特定的DirectX(硬)或GDI +(更简单的基本图形功能)< / LI>
  • 其他更简单的替代方案:sfml或openGL包装器,如OGLplus

请注意,您没有描述您将如何呈现该数据或您的期望是什么。这使得无法正确回答这个问题。只是猜测是可能的。

答案 2 :(得分:1)

有很多方法可以实现您的目标。最常见的是使用OpenGL或Direct3D。两者都可以与OpenCL挂钩。我是一个OpenGL人,所以我建议你使用OpenGL,但如果你打算只针对基于Windows的系统,Direct3D是一个非常好的API。

花一些时间搜索关键字 OpenCL / OpenGL互操作 OpenCL / Direct3D互操作,你会发现很多东西。