What is the best way to get started with simple 3D user interfaces with Java?

I am writing a time management application and I have an idea to present time charts and render elements in 3D. Visually, I visualize this looking down a corridor or highway in 3D, with deadlines approaching and tasks presented as pointers - more important items are larger and the next timeline is getting closer.

I want to do this in Java, but I don't know how to start. For example, I would like to be able to display text and 2D graphics (dates, calendars, etc.) on the floor / walls of a corridor as well as on subject items. The tasks themselves can be simple blocks. However, the 3D code examples I've seen all seem to work at a very low level, and what I can't figure out is the corresponding coordinates to be used, or how the user will be able to interact with the view by selecting items with the mouse ( e.g. by clicking expand or info button to get / change task properties using normal swing components).

Is there any higher level API I could use or sample code that does things like this? Any other ideas on how best to approach this problem?

edit: removed Java3D requirement - I just need to do it in Java.

+1


source to share


3 answers


In all fairness, most smart user interfaces are ineffective for several reasons:

  • They prefer complexity (for the sake of coolness) over simplicity and usability.
  • They will likely be completely unfamiliar to the user.
  • You have to implement them yourself, without using any library that did the hard work for you.

I think the interface you are describing runs the risk of falling into this trap. What's wrong with the current interface? Wouldn't it be really hard to get an overview with the foreground getting better? Now, of course, you can take it a step further and zoom out / rotate to get an overview, but that complicates things.



Having said all that, if you can make it easy to use and really sleek, then it can make an application. Users will have a lower tolerance for failure with "fancy" user interfaces, so this may not be the best first 3D project.

I really think there is a need for more examples focused on visualization rather than games.

+2


source


Honestly, after trying both, if you are using JOGL you will find tons of OpenGL examples out there for copying this kind of thing, and you won't have to write code around the boundaries of the Java3D scene graph. you. I tried Java3D a couple of years ago in a simple TV viewer and it was such a pain to get proper camera control and rendering anywhere near OK that I gave it up.



+1


source


I found Pro Java 6 3D Game Development to contain very good code examples.

Here's a sample code from 3D text, from NeHe Productions! , check "DOWNLOAD Java Code" and "DOWNLOAD JoGL Code" at the end of the example.

On the side of the note, I was very impressed with LWJGL , which makes you write very much like straight-forward OpenGL.

+1


source







All Articles