XDK / Crosswalk performance

Discussion and feedback on Construct 2

Post » Tue Feb 25, 2014 7:45 pm

I decided to do some performance testing on a Crosswalk build after experiencing a somewhat disappointing 42 FPS on my game on a Samsung Galaxy S4.

I'm trying to isolate exactly what parts of my game are slowing it down.

Step 1 was to make a blank screen at 1280 x 720 with an FPS display (using text object) as a baseline. This yielded the expected 60 FPS.

So I decided to add a simple scrolling transparent layer. This consisted of a tiling background about 180 x 720 that I had set to 50% alpha. I was suprised to see that this alone dropped the frame rate to 45 FPS! Just one semi-transparent layer with nothing else.

As a comparison, my entire game has 4 layers (3 scrolling) multiple large sprites and sound, about 40 events and is at 42 FPS. Not sure what to make of this but it appears there is a large penalty for having ANY moving objects but after that only an incremental penalty for having many more.

Just wondering what kinds of results others might be having?
B
4
Posts: 17
Reputation: 259

Post » Thu Feb 27, 2014 5:45 pm

More performance feedback 1280 x 720:

1) Crosswalk with text controls: 45 fps
2) Crosswalk with sprite fonts: 47 fps
3) Cocoonjs with text controls: 55 fps
4) Cocoonjs with sprite fonts: 57 fps

So it looks like switching from text to sprite fonts gives me about a 2 fps boost while crosswalk to cocoonjs gives about a 10 fps bump.

My next test will be to take the same 4 runs but using an 800 x 450 layout. I have a feeling this will make a huge difference. The actual screen space is only 39% of the original. That should greatly reduce the size of the ap and hopefully bring the frame rate way up.
B
4
Posts: 17
Reputation: 259

Post » Thu Feb 27, 2014 10:53 pm

I did notice in CocoonJS, text and its constant update slows it down, causing a stutter effect but in Crosswalk there's no difference.

I get the same performance for my game in CocoonJS as Crosswalk, and because I use text object throughout the game, it's more smoother on Crosswalk.
B
70
S
24
G
19
Posts: 1,757
Reputation: 17,614

Post » Fri Feb 28, 2014 12:23 am

Silverforce wrote:I did notice in CocoonJS, text and its constant update slows it down, causing a stutter effect but in Crosswalk there's no difference.

I get the same performance for my game in CocoonJS as Crosswalk, and because I use text object throughout the game, it's more smoother on Crosswalk.


What is your fps because if they are both 60 it isn't really telling us anything because that is the threshold.

Do you have any text prompts? If so, did they work in cocoon js? Mine doesn't.
B
4
Posts: 17
Reputation: 259

Post » Fri Feb 28, 2014 1:36 am

lampcord wrote:
Silverforce wrote:I did notice in CocoonJS, text and its constant update slows it down, causing a stutter effect but in Crosswalk there's no difference.

I get the same performance for my game in CocoonJS as Crosswalk, and because I use text object throughout the game, it's more smoother on Crosswalk.


What is your fps because if they are both 60 it isn't really telling us anything because that is the threshold.

Do you have any text prompts? If so, did they work in cocoon js? Mine doesn't.


I test it on weaker devices where they cannot maintain 60 fps, about 40-45fps and its very close for both compilers.

I use text object not text box.
B
70
S
24
G
19
Posts: 1,757
Reputation: 17,614

Post » Fri Feb 28, 2014 2:31 am

I'm more curious as to what's causing the hit on XWalk. Sounds like the renderer is slower, but that's ok to an extent. The real importance is stability at a given FPS. My question is to the OP. What's the FPS if you want 4 of those images on different layers animating in different directions. Doesn't matter if you can seem them all.
B
90
S
18
G
9
Posts: 2,455
Reputation: 15,018

Post » Fri Feb 28, 2014 5:17 pm

using a smaller layout and set fullscreen to low quality (important) should improve it alot, as you don't have much logic going on, its most likely already limited by gpu

in cocoonjs, simply updating a text/textbox every tick (for fps display for example) will reduce framerate, so always use spritefont
crosswalk renders textboxes better because its a real browser, but again spritefont is better

i'm not sure about layers actually, i try to limit my usage as much as i can, but i haven't done much testing on the difference
ImageImage
B
70
S
21
G
7
Posts: 827
Reputation: 10,052


Return to Construct 2 General

Who is online

Users browsing this forum: No registered users and 28 guests