need help with quick test

http://www.angelfire.com/clone/wolfbane/loop.rar
Could someone please run my demo and tell me if it runs smoothly and what fps you got (the value on the bottom) You can move ryu using the directional keys. The demo needs a 1024x768 mode. Or you wont see the buttons or the fps

I get 50fps on a 2.0ghz athlon running winXP and Java 1.4.2_03.

The character is quite jerky when i move it sideways but it moves smooth when I jump. I would guess that is caused by you moving him a number of pixels for every key-repeat (every time keyPressed is called)?

smooth (100 fps constantly (vsync?)) on my Radeon 9700, P4 @ 2.7, Java 1.5, winXP - jerky every 10 secs, most likely GC kicking in

Rock solid 60fps, baby bum smoov. Rad 8500, WinXP, dual 1GHz P3s, JRE1.4.2_03.

Cas :slight_smile:

Should it be running on Linux (with timer.dll and all)? Becouse it does run: Suse 9.0, NVidia GForce FX 5600 SE, 1.5, and shows strange > 400 FPS. It enters a full screen. But movement is sporadic and jerky, it doesn’t manage to capture keys every time. Oh, and it is not working with new pipeline.

Runs very smooth at around 1600fps (P4HT@3.2Ghz, Radeon9700 Pro, no VSync (obviously…))).

Edit: And around 3-4 fps on a NEC Versa6200MX Notebook (Pentium166MMX, C&T 65550 PCI)… ;D

People who don’t use escape for the default to end a demo should be flayed.

I have the same issues as selendic. I’m running it on Redhat 9.0 Cell 1.6G with GForce 2 Go.

Hey thanks for the replies. I havent tested it on 1.5 or Linux yet. I dont think it should run smoothly on Linux because of the dll. I do see that some people get very smooth movement while others get a stutter like every 1.5 ~ 2 seconds (its like that on my friends machine) But since the people with the stutter still get like 50 + fps then it is a prob with my interpolation code or the GC. Thanx for the test guys. Oh and Selendic are you talking about a new 1.5 pipeline or Linux specific stuff?

You probably don’t need the timer.dll on linux, the clock accuracy is to the millisecond natively on linux isn’t it?

Kev

I was saying that new 1.5 GL pipeline (that I shouldn’t talk about :wink: ) doesn’t work. Just a gray fullscreen. Btw, it is not just that it doesn’t run smooth on my Linux box, it seems that X-server is so busy (475 FPS) it has trouble with accepting keys I press (half a second delay). I remember having similar problems with some of applets and other games here.

BTW, tried it on XP 1.5 GHz, Matrox g550 box, Java 1.5, 75 FPS (vsync) and smooth all directions al the time.

[quote]BTW, tried it on XP 1.5 GHz, Matrox g550 box, Java 1.5, 75 FPS (vsync) and smooth all directions al the time.
[/quote]
Cool thanx. Win32 is the platform I am go for as of now. There is a stutter that happens consistently on my friend’s machine once every 2 seconds, as well as on some of the user’s machines who tested my demo here. I am guessing that this is a GC problem and will try to work it out using info from the performance tunning section.

If it was a GC problem - we’d all have it.

Cas :slight_smile:

Hey does anyone know how to unlock the vsync? Some of you had the fps at the refresh rate while others didnt. Is there a Java thing for it? Or is it a specific rendering implementation?

Try calling Toolkit.sync()?

Cas :slight_smile:

from the API

[quote]public abstract void sync()

Synchronizes this toolkit's graphics state. Some window systems may do buffering of graphics events.

This method ensures that the display is up-to-date. It is useful for animation.

[/quote]
So do I call this once during the init? What does it mean by sycnh the toolkit’s graphic state? Also does calling it each time switch between vsync and no vsync?

static method “Toolkit.getDefaultToolkit()” will return a Toolkit object to you.

I’m thinking that the Toolkit.sync() method should appear in your rendering loop (after each BLT or page-flip to the screen).

OK well I havent been at my little project for a while, but returning to it today I have remembered why there was stutter on some people’s comps every couple of seconds. My x movement is 10 pixels/gametick, and it works fine for me since I usually get 2-3 frames between gameticks. So my “distance” between 2 gameticks is usually .3343, .6788, .9999 and so on. That way the object moves to position 3, then 6, then 9. So the motion is smooth. The problem that happens is that when lag occurs then the values for “distance” between gameticks are sometimes .01 and then .9. Which means that the object jumps roughly 10 pix in 1 frame, while it was moving an average of 3 pix /frame before and then after. This creates a stutter and I was wondering what would be the best way to handle this type of lag? Please post if I sound too confusing.

My gut instinct is that Toolkit.sync() has nothing to do with vsync, because its been there since Java1.0.

Its more likely something that is totally obsolete and pointless :confused:

Its implemented entirely in native code, I’d love to know what it is though, can 1 of you Sun folk tell us what it is?