I am making a 2D shooter (3D graphics/rendering) that I am planning on trying to publish. I made a prototype in unity and ready to make a more complete version of the game, however neither Unity or Unreal seem to be fitting what I need. I wrote my own physics and collision detection/handling and would only use those engines for animation tools, rendering, and networking which they seem to do poorly(unity networking) or cost too much (unreal).
In short I am just looking for opinions for how ready this software is for a serious project (I am aware it is still alpha), if it helps to say I do not mind the occasional hiccups as long as I can get the job done. It seems to be coming down between this and LibGDX, and since LibGDX is just a framework I would prefer JMokney if it is ready. Any input on either of these options would be greatly appreciated!
JME is an engine for programmers, it means that everything you need to do is to write a code. There are no scripts, the only designer is that one for scene, you are free to do anything with full Java’s flexibility and power.
The engine provides you a standard set of shaders, renderers, filters and so on, it handles the object tree and gives you a set of paths that you can follow… or not! For example, you can use AppStates or organize your application in different way. There are several GUI solutions available for JME, but you can write your own.
In my project I reworked the whole rendering pipeline, so everything is possible.
Developers are working on version 3.1, If you want stable one you can use 3.0.
Yep, jMonkey is much more flexible than the industrial other options. it’s open source, well documented and there is always some guys to answer you most strange questions, to address your most odd needs ^^
I’m currently making a 2D shooter too (with entity system) ! If your project is open source, I may be interested in peeking into your homemade physic code ^^
About LibGDX, jMonkey is just what you need to avoid reproducing the wheel, to get into your gameplay fast.
…hello and welcome…all you need is in JME3.0+ … there is virtually, nothing that you cant do in JME3 what Unity or other systems doing. You just need to sit down, and do some programming…you will have nice smile on your face when you see, how smooth runing your game, over plenty of platforms, even older than 10 years…and as a developer, you want that…you want that very very much…thats something you cant have with UE4 or Unity…you just cant…so, in short…JME3 is a very well made choice…
Thanks for all the input, surprising how positive the response has been :D. Out of curiosity (definitely wont do this for my main project), Since it seems to be just java, i was wondering if you could also do this with languages built on the jvm that have good interop like clojure or scala.
I have no experience with such languages, but I imagine it would work if you can mix Java code and your language (to import JME3), Instantiate Java objects, call Java methods, access Java variables, and extend Java classes.
and there is always some guys to answer you most strange questions
This cannot be overstated. The forum for JMoneky is absolutely wonderful and the community is one of the best, most knowledgeable, and FRIENDLY communities out there. The only project open source or otherwise I can think of that has a community and documentation of the class of JMonkey is the PostgreSQL database community.
I’m a complete newbie to game development and 3-D development, but, I’ve found the community here to an absolutely wonderful experience.
I think you shouldn’t look too much into alpha and such… I moved my small/medium sized game from 3.0 to 3.1 in an hour. And never had to change anything before that (3 years going). Also, there was one small very specific visual glitch I encountered in 3.0 (corrected in 3.1). The api is stable and very mature.
Also agree with gerald: people love answering questions here. It’s kind of a frenzy :D. People aren’t here to google stuff for others, or answer basic java questions but apart from that, questions are tackled diligently and precisely, usually by experts in the domain (developers of the engine).
Now, people that want to make typical games by configuration and then slap nice assets would be better off on some other engine,but people that make their own physical engine would feel at home.
Networking layer is great on jme.
I never looked at LibGDX so can’t weight in on it.
Even though jME uses the Bullet physics engine by default (which was used by industry projects before). I think, making an own physics engine was just an example for people loving to code custom stuff.
Other custom stuff is UI - there exist at least 4 solutions for UI (Lemur, JavaFX, Nifty, ToneGodUI), but still many people love to develop their own UI - just because they can. :chimpanzee_closedlaugh:
Oh, I use the default bullet physics engine and well, it feels like they looked at my needs, went back in the past and modified the engine to be perfect for me :D. I throw the sink at it and it works fine, even on a small phone. But for special needs, it makes sense to build your own (if you are brighter than me :D).
Yea I was probably going to make a post down the road but in short my game needs to be deterministic. I haven’t looked at bullet physics yet and there might be a way to do it, but in my findings when I was doing my unity prototype I could not find a physics engine you could make deterministic even after making your game fixed point and controlling floating point error.
slightly off topic and I hope I’m not high hijacking this thread, but I’m also considering the use of JME for a project I’d like to play with and perhaps release at some point. What’s the status of JME 3.1 (besides the alpha1)? is there a time frame for an alpha2 or beta? I’d like to start straight away with 3.1 instead of 3.0 as it supports some stuff I believe I’m going to need.
Any answer is much appreciated!