Hey guys. Kit the newbie here.
I just wanted to invite you all to take a look at the applet I'm working on. I am new to Java 3D (heck, 3D in general), and will be learning it as I work on this.
Right now, my applet displays a small model of the earth, using a public-domain NASA texture, and code modified from one of the Sun tutorials. You can use your right or left arrow keys to rotate the globe.
What do I want to do next? Here's the main list:
- Add the ability to zoom in or out
- Add multiple levels of detail, maybe about 5 or so.
- Add ability (with keystroke, probably) to "reset" the globe to default size/orientation.
- Allow quick zoom (to next closest LOD) by clicking on the globe
- Have the globe report longitude/latitude on screen as mouse passes over the terrain.
Once I have the interface working pretty well, I want to start connecting it to a database on the back end. This will involve:
- Being able to use some kind of pointer to select a certain point on the globe (ie, longitude/latitude).
- Ability to navigate to a certain point by typing in coordinates.
- Ability to then open a new window to enter information about that point.
- Pass the information into the db (PostgreSQL).
- Conversely, when navigating the globe, one might be able to query the db to show current data.
- Possibly add different layers of texturing, with ability to decide what is shown - cities, national boundaries, etc.
This is going to be the interface to a historical db on the backend. It's not exactly a game, and it's going to take forever to get it working right, but as I progress, you might find something of interest there. I will probably never have more than a few 3D objects on screen at once (the globe, a pointer, some text), so I'm going to try to focus on optimization and overall smoothness and "polish". Of course, if you have suggestions or want to see the code as I go along, that's cool, too.
So, anyway, just an introduction. We'll see if I get anywhere with it.
You can find the applet at www.the-athenaeum.org/javatest/earthtest.php