Hello, woo, first post!
Anyway I am doing market research for the game I am making, trying to find the best combination of features (preferably toggle-able so I can run advanced stuff on good GPUs and simpler stuff on crappy GPUs) and accessibility.
We were programming in Java3D but that has deployment problems and is lacking on some features we might want to at least have the option of turning on. Furthermore some of its API is annoying and tedious. Also it’s no longer supported by its developers.
I started fiddling with JME3 recently using their SDK (which I am in a love/hate relationship with) and while JME3 advertizes working on just about anything, when I first tried it with my computer, I couldn’t even run the hello world demo.
I’ve since gotten a decent Nvidia graphics card and now I can run the demos, but the game I am making is supposed to be very accessible and I want people with older computers to be able to run it (albeit with lower graphics settings).
Does anyone know if JME2 is more accessible to older computers (as it doesn’t use GLSL for everything) and also is there a SDK or plugin for JME2 so I can have access to some of the features the SDK offers (particularly the easy deployment, as hitting a few check-boxes and then having it good to go on any type of computer is nice)
I was thinking maybe I could primarily use JME2 and run a test to see if features from JME3 will work and use them if they will.
If anyone has an older computer that JME3 demos wont work on and wants to run my demo and see if they can figure anything out PM me (assuming this forum has a PM system).
I don’t want to publicly post the link to the demo because I’m running it off my computer as a server and don’t want people running it unexpectedly. Lag spikes can kill, you know?
Anyway, thanks for any help you can provide, and if I posted this in the wrong forum subsection forgive me, though this is rather grey area.
Hello, woo, first post!
jME2 is deprecated and no longer maintained, except maybe for dire bugs or the like, if that.
jME3 is targeted at mid-range and above. It’s not really apt for crap computers.
@valentiinro said:Does anyone know if JME2 is more accessible to older computers (as it doesn't use GLSL for everything) and also is there a SDK or plugin for JME2 so I can have access to some of the features the SDK offers (particularly the easy deployment, as hitting a few check-boxes and then having it good to go on any type of computer is nice)
There is no SDK for jME2, it is purely a library. jME3 can indeed run on lower-end hardware if you set the renderer to use OpenGL 1.. You lose shader support, which is unfortunate, but it does indeed run. You can find information on setting this up here: http://www.hub.jmonkeyengine.org/wiki/doku.php/jme3:intermediate:appsettings
@valentiinro said:I was thinking maybe I could primarily use JME2 and run a test to see if features from JME3 will work and use them if they will.
It won't work. More has changed in jME3 than has stayed the same. It is essentially a ground-up rebuild.
You can run jME3 on low-end computers in OpenGL1 mode. As madjack stated, using jME2 means that you are completely on your own.
I tried the opengl1 mode and did a clean and rebuild, it didn’t work.
Edit: Or rather I hit the check-box in project settings for opengl1 compatibility mode and it didn’t work.
You can run jME3 on low-end computers in OpenGL1 mode.
Yes, it can, but that's pretty new and I wouldn't qualify OpenGL 1 as being jME3's targeted audience. ;)
How do you instantiate your Application? Mind showing the code?
This is how you do it (see the link in sbook’s post):
[java]AppSettings settings = new AppSettings(true);
The OpenGL1 renderer (OpenGL 1.1 only) lacks support for some things as of yet (i.e. OpenGL 1.2-1.4 features), but it should run well enough for all basic rendering.
Please read the manual, flicking a random switch that has a similar label has some comedic relief but it won’t get you any further…
Game engines are like cars. They’re not being built to support technology that has passed its prime. I do understand that your audience might have low-end computers, but you’ll have a hard time finding an engine that do that.
In the end I think you’ll have to tweak a lot either way.
Please read the manual, flicking a random switch that has a similar label has some comedic relief but it won't get you any further..
Ah, yes, I see what that check-box is for. In theory that would have made the SDK windows work for me back before I had my new graphics card. I misread it when I clicked on it, fancy that!
Okay I'm going to try this bit here:
AppSettings settings = new AppSettings(true);
If that works for me then I guess what I'd want to do is make a boolean for different versions of the graphics code designed to look good with either modern OpenGl or oldschool OpenGl? Or a number if I'm switching between 1, 2, and 3.
Is there an easy way to get the OpenGl version a computer is using and interpret it or would I need to check the chars for one that looks like a number and parse it that way?
I took out my graphics card so I could test this quicker.
The program no longer works in applet mode, but does work in the exe version. Any ideas?
Is it because applets don’t have access to native information they might need to handle graphics using the main computer but for some reason do have access to the GPU?
Also since I now know of the ability to use OpenGl1 and I’m not planning to use JME2 should I make a new topic in general and move over the relevant questions in this?
Look at: How do I read out graphic card capabilities?
I’m going to be doing some more research on this topic, and then I’ll post my questions, if I still have any, in a more appropriate category on the forum.
Thanks for your help everyone.