Thursday, 19 July 2007

Performance concerns

We've just received comments regarding the performance of jcrpg. The grass recently added to the game has stirred up Harek's attention, and Harek along with DragonBait shared their ideas about the performance of the game. I want to make it more clear and remembered a few things about the issue, so I will publicize it as a blog post right now! :-)

Harek: "it would be a good idea to have a lot of options to how the game looks so people with slow computers can crank the options down so they can get frames per second instead of seconds per frame ,and people with high end computers can make a little more justice to the price they paid for thier computer. ..."

Me: "It's already a concern how to make it run on low-end gpus too! That's why I've put performance related options in a separate configuration file too. As you can see grass will be made optional and view distance of grass will be parameterized too.

Second, pre-alphas are released to let people test and report such things as performance, opinion etc.

So please use the pre-alpha, and if you can, report back your FPS values/system config specification. Soon, if most of the fauna will be complete and 3D perfection will be finished too, there will be a configurable pre-alpha binary release. There you will be able to test your config with jcrpg, and report back to me your experience."

18 comments:

harek said...

Well thanks for assuring me I would send you my fps ,but unfortunately I still haven't gotten it installed :(((
it's probably because I've been spoiled by debian etch's great package management.
so any body can help me out it would be great!

Paul said...

Now, we have the RENDER_GRASS_DISTANCE setting, which set to 0 will eliminate all the Grass , or can be set to other values depending on your machine's performance. Setting RENDER_DISTANCE=5 and RENDER_GRASS_DISTANCE=10 will give 40-50-60 FPS with grass on a 6200GO and P4 1.6Ghz in 1024x768. More in lower resolutions.

Hey, Harek. What videocard do you have? What's the problem with your debian etch?

winkman said...

Hello paul

Is it possible to add free movement besides the classic rpg four way one block movement to this architecture ?

Paul said...

I was thinking about that a while ago, and if someone takes the time to take care of the JME bounding box perfection for the models in the Java code, and fine tunes the render procedure with the free movement (new parts should be loaded like it is loaded now with every new step), than adding code where you calculate which Cube the camera is actually, and the collision is activated than I say it is! I hope I can maintain a code where this will be possible with creating an alternative 3D core.

So all in all, with some work it is possible.

Paul said...

And yeah, the engine part which generates the environment cubes are STRONGLY cubic, classic, so that part is obviously not portable to non-cubic generation.

harek said...

nothing is really wrong sorry if It sounded like it was the games fault.
I just can't figure out what I need to do to start the thing :(

I am pretty sure my computer could handle it just fine It's got a 2.2 GHz amd athlon proccesor my video card
is called a via unichrome (some stupid name like that) but it can hold it's own with tremulous on decently high settings gettin 20-30 fps

Paul said...

First of all you will need to install Java runtime environment. I recommend to install Sun Java 1.5 or later (1.6). Then you will need to download the binary snapshot from sourceforge. Then run jcrpg executable. All should be fine, and you may be run it (although I am sad to say that Via Unichrome might be rather slow with jcrpg, so you should use lowest settings in jcrpg config file, render distance set to 5 and render grass set to 0.)

If you are stuck installing or starting comment again!

harek said...

I'm sure I have the java runtime installed but I still can't get it to run which file is the executable I've tried opening both jcrpg and jcrpg.bat and something will pop up asking me whether I want to run in terminal display the contents or run.

clickin run does nothing run in terminal will show the terminal for a second and some text will flash for a second and then the terminal closes.

Paul said...

You should run "jcrpg" under Linux. First start a gnome or kde terminal, go where the game directory is, type ./jcrpg, and look for the console log, what does the program exit with. Any message? You should have a window asking about what screen resolution you want to run the game!

harek said...

the terminal log says

Exception in thread "main" java.lang.NoClassDefFoundError: org.jcrpg.apps.Jcrpg
at gnu.java.lang.MainThread.run(libgcj.so.70)
Caused by: java.lang.ClassNotFoundException: org.jcrpg.apps.Jcrpg not found in gnu.gcj.runtime.SystemClassLoader{urls=[], parent=gnu.gcj.runtime.ExtensionClassLoader{urls=[], parent=null}}
at java.net.URLClassLoader.findClass(libgcj.so.70)
at gnu.gcj.runtime.SystemClassLoader.findClass(libgcj.so.70)
at java.lang.ClassLoader.loadClass(libgcj.so.70)
at java.lang.ClassLoader.loadClass(libgcj.so.70)
at gnu.java.lang.MainThread.run(libgcj.so.70)

Paul said...

Are you running the snapshot downloaded from sourceforge? If so something is definitely wrong! It should run without problem. If you checked out it from svn, you will need a tool called ant installed too. Just run ant from the game's directory. It will compile it and run hopefully.

harek said...

I downloaded svn and I already have ant installed but I haven't succsefully ran ant from the games directory. I've tried quite a few things to get it to compile but it just wont do nothing.
sorry about all this.

harek said...

I am going to download the new release and try it.

harek said...

this one didn't work for me either :-(
I' sure it's me doing something wrong

b said...

I know you've said we should run it in Linux, but is it possible to run javaCRPG on a windows machine?

Paul said...

Harek: If you run into an error please always post the error message too, so that I can help you. Have you had an error message when trying to run the snapshot, and when you tried ant?

B: Yes, it is possible to run it under Windows too, using Sun JRE 1.5+. I always test it under both Win and Linux, so it shouldn't give any trouble! Just download and run jcrpg.bat, if you have installed Sun Java RE already.

Forcage said...

Harek, you apparently use gcj, which is the default in most Linux distributions. It may have problems with graphics-oriented programs. Try Sun's java. In addition to installing it, you may have to switch the default java to it (check google about how), or point jcrpg's PATH to it.

harek said...

thanks forcage I'll give it a try soon:)

Twitter