1

我正在编写一个时间管理应用程序,并且我有一个以 3D 形式呈现时间线和待办事项的想法。在视觉上,我将其想象为以 3D 形式俯视走廊或高速公路,即将到来的截止日期和任务表示为路标——更重要的项目更大,即将到来的截止日期更近。

我想用 Java 做这个,但是我不知道如何开始。例如,我希望能够在走廊的地板/墙壁以及任务项目上渲染文本和 2D 图形(日期、日历等)。任务本身可以是简单的块。然而,我看到的 3D 代码示例都看起来在非常低的级别上运行,我无法弄清楚要使用的适当坐标,或者用户如何通过选择与视图交互使用鼠标的项目(例如单击展开或信息按钮以使用通常的摆动组件获取/编辑任务属性)。

有没有我可以使用的更高级别的 API,或者做这种事情的示例代码?关于如何最好地解决这个问题的任何其他想法?

编辑:删除 Java3D 要求 - 我只需要在 Java 中执行此操作。

4

3 回答 3

2

老实说,大多数“聪明”的用户界面都无效,原因有很多:

  • 他们更喜欢复杂性(为了酷)而不是简单性和可用性。
  • 用户可能完全不熟悉它们。
  • 您必须自己实现它们,而无需某些库为您完成艰苦的工作。

我认为你描述的界面有落入这个陷阱的风险。当前界面有什么问题?由于前景的阻碍,是否真的很难获得概览?当然,现在您可以更进一步,缩小/旋转以获得概览,但这会使事情复杂化。

说了这么多,如果你可以让它易于使用并且非常流畅,那么它可以制作一个应用程序。用户对“花哨”用户界面的失败容忍度较低,因此这可能不是最好的第一个 3D 项目。

我确实认为需要更多面向可视化而不是游戏的示例。

于 2009-01-01T18:42:36.723 回答
1

老实说,两者都试过了,如果你改用 JOGL,你会发现有大量的 OpenGL 示例可以从中复制这种东西,而且你不必围绕 Java3D 给你的场景图的限制编写代码。几年前,我在一个简单的线框查看器中尝试了 Java3D,但要让相机控制正确并且渲染几乎可以,我放弃了它,这真是太痛苦了。

于 2009-01-01T16:35:27.543 回答
1

我发现Pro Java 6 3D Game Development包含非常好的代码示例。

这是来自NeHe Productions的 3D 文本代码示例!,查看示例末尾的“DOWNLOAD Java Code”和“DOWNLOAD JoGL Code”。

顺便说一句, LWJGL给我留下了深刻的印象,它让您以与直接 OpenGL 非常相似的方式编写代码。

于 2009-08-06T15:05:29.020 回答