I've been monitoring the forum for quite a while and found myself actively participating lately so I thought I introduce the little project of me and a friend for which we use JME2 - Scalaxy.
It is more of a fun project for us to learn and… have fun I'm more on the programming side while he's more on the modelling side, although not exclusively. Blender has been used for the modelling part (nice what open source can do).
Its far from being complete or even a game but theres some things to see and do by now. Currently its becoming something of a space-sim like Homeworld, but we want to slowly extend it to allow ground battles as well… If we ever get that far, our jobs eat our time
The idea about the engine is that the whole galaxy is supposed to "run" all the time and you can zoom to different "Points of Interest" to trade, fight, etc. or to the galaxy to set up trade lines or similar things. So you have things to do at different scales (Scale+Galaxy=Scalaxy ;)).
Since its a developers version, usage is not really obvious, so I tell you some things you might want to try:
First of all, when the text screen with our developer notes appears, press 1 or 2 on the keyboard to get to the game (not really obvious)
Mouse Controls:
*Wheel = Zoom in/out
*Hold Right = Move 3d-Cursor (the box ;)) in Space
*Hold Right+Left = Move 3d-Cursor up/down (buggy)
*Hold Middle = Rotate Around 3d-Cursor
*Left = Select Units / Stations, Border select
*Right = Send Units
-Keyboard:
*[ESC] = Menu, Exit
*[1]-[0] (in game) = assign selected units to key (works only once per key :P)
You will see how the models get loaded semi-dynamically in front of you, some space ships and stations, in the middle theres your own "fleet" of 5 fighters, all in one spot… Some big ships (traders) spread out from the middle and go about trading between the stations.
You can now border select your ships in the middle and send them around by right-clicking. (After the first time you do this you might actually see them properly ;))
In the menu in the bottom right you can select "Toggle Info" and then select different info windows to show at the bottom with info about the game, the selected unit etc.
With the "Commands" button you can open a list with commands to give to your unit (very todo). You can set your units to be agressive for example, so they will attack any other combat-class ship.
Somewhere theres a "Rot" and a "Blau" SpaceStation from which two factions of fighters fly out and go about killing each other. Some scavengers get the rubble thats left over from that out of space and bring it to their station to be recycled to ships again (via the trade system and a factory).
With the "Navigation" button you can open a window to move between points of interest (also very todo). If you select "go to parent poi" twice in a row or so you might get to see a crappy attempt at zooming out of a solar system to the galaxy by moving the stars in the background… or not
Theres maybe more and probably its easy to make it crash or do awkward things but anyway… Have fun.
Very cool! I really enjoy the simple black/gray gui layout, goes nicely with the space theme
The loading process was very good as well, from webstart into the game, the branding was quite nice…
normen said: Btw, theres some funny "fish eye" thing going on, the models seem to get stretched at the borders of the screen, can anyone give me a hint to what to do about that?
Sounds like the camera's aspect ratio to me, might want to set it based on the screen resolution that the user selects..
camera.setFrustumPerspective() is likely what you want :)
Did you abort the download? Its only about 24MB, webstart sometimes shows excessive download times in the beginning but then it goes way faster, dont know why that is so.
Thanks, I'll tell my friend you like his models, maybe that'll give him a kick in the butt to do some more
Btw, theres some funny "fish eye" thing going on, the models seem to get stretched at the borders of the screen, can anyone give me a hint to what to do about that?
Funny you mention the UI, I started implementing my own windowing system, since AWT/SWT is not really working on Mac, FengGUI seemed too complicated to integrate and GBUI slowed the framerate excessively e.g. when scrolling a list of buttons. Still all very basic.
sbook said:
The loading process was very good as well, from webstart into the game, the branding was quite nice..
Thanks ^^ as I said its kind of a learning project, its nice to see what two people can do with Java and OpenSource software nowadays. My build process also autmagically generates MacOSX and Winows executables (app/exe) with nice icons, version number and stuff, Java rocks.
I will try around with setFrustrumPerspective() again, I already tried and it seemed to work only partially, but maybe I broke something else back then.
My build process also autmagically generates MacOSX and Winows executables (app/exe) with nice icons, version number and stuff
if you dont mind, can you share kind of how you did this? It sounds very interesting, considering building at the end of a project is very difficult for me. Thanks!
btw your game seems very interesting, one thing I would say (however it is not very important) would be to shrink the names of the stations a little bit when you are scrolling out, because when you scroll all the way out the screen seems clogged with names. If they were a little smaller this wouldnt be a problem. Anyways, thanks.
Well, I am using Netbeans/ANT to build everything, for windows exe's theres exe4j, a handy little tool to create exe's for java programs, it also features an ant task to do that automatically by modifying your build.xml for ant. (Theres also open source software to create exe's for java).
For MacOSX, applications are really folders with all jar files, icon and config files in it and a little native stub that launches java. For the user its one Application with everything in it to drag around. Included in the Apple developer tools theres a little program to create the Java stubs.
Then a bit of ant replacing magic for the exe/app config files and you get a true cross-platform release each time you build
Tried it out! It looks great only the game is a bit sluggish… not sure if my PC is outdated for this game… I have 2x 7800GT and AMD 3800+ dual-core… shouldn't be the hardware, right?
the game is a bit sluggish.. shouldn't be the hardware, right?
No, it shouldn't be the hardware ;). The OpenGL part is decoupled from the rest of the engine and the data-transfer Engine/OpenGL still needs to be optimized, maybe its because of that. Also, I still have to do some updateGeometricState() calls each frame to display everything right, these should not be necessary anymore when all bugs are fixed. Furthermore, the UI is sometimes updated too often, also causing overhead..
Anyway, on the computers I tested it on (and theres a Mac Mini 2GHzDual with only Intel GMA950 among them) the game seemed to run fine, not sure what you exactly mean by "sluggish", but there were no occasions with framerates below 20fps..?