我应该在Linux上使用什么环境进行3D编程?

有一件事我总是避而远之,就是3Dgraphics编程,所以我决定接受一个使用3Dgraphics进行学习的项目。 我想在Linux中做这个项目。

我想写一个简单的3D CADtypes的程序。 一些将允许用户在三维空间中操作对象的东西。 做这种发展的最佳环境是什么? 我假设C ++是要走的路,但是什么工具? 我想使用Eclipse吗? 我想要什么工具?

OpenGL / SDL和IDE是无关紧要的。

我的个人IDE偏好是gedit / VIM +命令窗口。 有大量的IDE,所有这些都将允许您使用OpenGL / SDL和其他实用程序库进行编程。

我假设你是用C语言编程的,但是Python,Perl,PHP或其他的绑定存在,所以不用担心。

看看网上的开源CAD软件包,他们可能会提供灵感!

另一种方法可能是一个C#/单声道的实现…这些应用程序正在上升…你可能会使它有点便携。

这取决于你想学什么。
在3D的核心是OpenGL,真的没有3D应用程序的竞争对手,特别是在非Windows平台上。

最重要的是,你可能需要一个场景图(osg,openscengraph,coin) – 这个处理你要绘制的对象的列表,它们在空间中的相互关系,移动一个相对于其他对象,选择对象等等的能力。调用opengGL来做实际的渲染。

那么最重要的是你需要一个GUI库。 Qt,Fltk,wxWigets或者一个内置到场景库中或者直接写在openGL中的。 这处理你的应用程序的菜单,对话框等。 它提供了一个openGL画布来绘制。

个人选择是openscenegraph和Qt

对于3D部分,我强烈建议使用OpenGL库的SDL 库

你可以在这里得到一些教程

Qt有一个相当不错的基于OpenGL的图形模块。

也许你应该考虑使用一个图形渲染引擎,如OGRE 。 使用OpenGL从头开始编写CAD程序将花费大量时间。

在Linux上,你没有与OpenGL竞争。

它是3D领域的大玩家之一,所以绝对值得学习。

本网站有一些优秀的指南和代码示例(在各种语言)。

你可以在许多语言中使用OpenGL,当然在C和C ++上也可以,例如在使用LWJGL或其他API的JAVA中。

如果你想在比opengl更高的层次上编程,可以使用vtk。 上手很容易,并且绑定了很多语言。

见www.vtk.org

你可以使用OpenSceneGraph进行渲染..这是一个基于OpenGL的库。

你可以使用OpenCascade ..这对于3D建模来说是很好的…

我们正在实施这样一个IDE在工作,我们使用这些东西..使用纯OpenGL可能会很难…无论如何,你可以尝试…

为接口使用Qt是很好的..

我建议你使用Eclipse,如果它是Linux ..

(如果是Windows,建议是Visual Studio)

对于C / C ++ IDE,您有以下选择:

  • KDevelop – 基于KDE
  • Anjuta – 基于GTK的
  • Netbeans的

当然,你也可以使用像C#或Java这样的语言:

  • 最好的Mono和.Net的OpenGL包装
  • JOGL

为什么简单的CAD应用程序必须用C ++编写才是没有道理的。