0

我的公司决定我们需要一个“通用”的演示基础架构来进行技术演示,因为我可以使用 JOGL 或 OpenGL 编写它并创建自己的框架,我不想重新发明轮子。但是那里有很多 3D gfx 引擎和很多 OpenGL 包装器!

基本上,我们想使用 3D 图形来渲染一些地形并在上面放置简单的模型。他们的要求是让它看起来很棒并且是跨平台的。

基本上,我可以自由决定这将遵循的范围和范例,但我在想: - 能够加载 3D 模型并以全屏或窗口模式渲染它们。- 能够控制摄像机“飞”过所产生的场景。- 能够在所有内容之上显示/隐藏广告牌消息,即固定在屏幕上并始终面向相机的 2D 文本和图像。- 能够更改关于场景部分的简单事情,例如使对象出现/消失、更改高光颜色(如涂成红色)等。- 我可以选择编写或使用现有的脚本语言来注入事件处理和预编程动画。

示例用例: - 我们公司的某个人准备了一个包含一些建筑物的 3D 地形模型,基本上生成了一个类似 XML 的文件来描述场景及其对象。- 然后他继续使用我的程序飞过地形并记录一些“感兴趣的”相机位置。- 然后,他将其中一些位置绑定到键盘键和/或现有的 GUI 按钮。- 他添加了一些浮动文本。- 他使用我的程序演示了一个演示,加载了他的 3D 模型文件和脚本文件,然后可以开始与观众一起从他选择的一个相机姿势“飞”到下一个,当他到达和离开时,浮动文本会淡入淡出相机位置...当他单击按钮时,地形上的一些建筑物会以红色突出显示...等等。

  • 我有一些 OpenGL 和 JOGL,以及 XNA Game Studio 的经验。
  • 我宁愿使用Java,这样它就可以尽可能地独立于平台。

我该怎么办?

4

3 回答 3

1

我建议你看看 OpenSceneGraph 或 Ogre。两者都是跨平台 (C++),具有丰富的图形引擎。此外,它们是商业友好的许可证,并且是非常成熟且积极维护的引擎。

我知道开箱即用,OpenSceneGraph 支持用一两行代码加载多种模型格式,并且有几个 OSG 库已经在管理和渲染地形方面做得很好。

否则,您将花费 95% 的时间来编写利基引擎,而不是开发可视化功能。

于 2010-09-22T20:10:00.207 回答
0

It's not Java, but otherwise what you describe sounds extremely close to the Open Source Virtual Terrain Project. You may well be better using that add contributing additional facilities you develop than starting from a more basic scenegraph level.

于 2010-09-22T20:15:35.723 回答
0

I advise you to use Ardor3D or JMonkeyEngine 3. Ardor3D has an excellent support of JOGL, it supports the Collada format, terrains, heightmaps, it is used by the NASA and in GIS applications, it is not a niche engine. Ardor3D even works on Android, it is one of the most cross-platform 3D engine.

I advise you to look at this demo showing a procedural terrain in Ardor3D: http://www.youtube.com/watch?v=bkXFkxrYtLY

于 2010-09-25T13:19:26.043 回答