[test] Benchmark

Discussion and feedback on Construct 2

Post » Wed Nov 11, 2015 5:46 am

Hai everyone !

I wanted to test the performances of C2 on my desktop computer , so i tried to make a benchmark that works pretty nicely.
Here are the files if you wanna test and post your results :
Big layout (10K by 4K) : http://www.filedropper.com/performancetest
One screen layout (FHD) : http://www.filedropper.com/performancetestonescreen

You can messup with settings / object settings / layer settings etc... to test things.


And here is what i learnt from this (on my own Comp, wich is a 3 Yrs Old good PC (GTX570 quad core 16gb ram)) :

1 - On scirra's advices about performance, at least on desktop GPU computers :
Opacity settings / layers / objects effects / project resolution / hight / low quality fullscreen scaling / point interpolation /linear etc...
Full HD project / low rez resolution etc.
all this changes basically "nothing" ... seriously, my FPS in any cases will drop starting on 300 count of objects and freeze around 500 + .
(wich means 300 plateform behavior on animated sprite, and 2 explosions animations on each one. around 1000 objects animated / effects.)

2 - Object count (of course) and animations DOES a good difference. (getting ridd of animations accelarates quite a lot)

3 - Offscreen rendering even without deleting objects is Faster than on screen. (on the ONE SCREEN project, framerate drops starting at 100 spawns)
So bigger layouts with lot of objects offscreen will run faster than tiny ones with same amount inside the view.



What do you think ?
Post your PC Specs and results , would be interesting to see on other hardwares.

Basically, C2 limitations on desktop games seems to be a "core" problem. (depending of what you target, its already pretty powerful.)
Does scirra has an idea of how to raise up this object / animated stuff performances for C3 ?

Anyway, awesome Software, glad to use it
.
twitch.tv/neozoom/
Dev stream from time to time !
@FireCamp_games <-- twitter
B
6
S
2
G
2
Posts: 52
Reputation: 969

Post » Wed Nov 11, 2015 6:00 am

And heres another version : http://www.filedropper.com/performancetestnobehaviors

This one doesn't use any behaviors, but custom triggered movements.
And this leads to A HUGE performance boost on my comp !! oO.

Starts to drop after 700 spawns, and most of the slow performance is visible when tons of objects are On screen.
So it confirms two things :

1 - behaviors uses memory. (maybe mostly due to collision, I don't know, plateformer was the one used in the two first examples.)
maybe due to many parameters that are used all the time, even if not needed (acceleration gravity etc)
2 - custom collisions uses less less memory than behaviors. (i made another test, getting ridd of all behaviors)
3 - on screen drawing slows down a lot more than offscreen. So deleting objects outside view maybe not that useful.


Do you think making events with custom movements for enemies and such would give a performance boost ? instead of using behaviors / simulate controls ?
EDIT : seems to be much due to behavior. Collisions if set by custom event (overlapping at offset) uses much less memory.
Seems better to avoid using behaviors for many objects.
twitch.tv/neozoom/
Dev stream from time to time !
@FireCamp_games <-- twitter
B
6
S
2
G
2
Posts: 52
Reputation: 969

Post » Wed Nov 11, 2015 7:03 am

I'd recommend looking at Ashley's blog for lots of info about C2's performance and what affects it.
https://www.scirra.com/blog/ashley/21/u ... asurements

I can't run your projects right now, however...

Behaviors do use performance but it varies per behavior. Also to have a fair comparison between events and a behavior they should give you the same results. But yeah, if you're doing something simpler than the behavior you can do it with events and be faster in cases. The reverse can be true as well. I did some complex isometric sorting with events, then made a behavior to do the same thing and got a performance increase.
B
94
S
33
G
118
Posts: 5,396
Reputation: 75,853

Post » Wed Nov 11, 2015 10:45 am

do you think Bullet Behaviour take / use more memory than a Custom movement for spawning platforms?
actually after reading this post i changed all my bullet behaviour by custom movement
B
41
S
16
G
7
Posts: 1,750
Reputation: 9,963

Post » Wed Nov 11, 2015 11:10 am

It depends on what you need your custom movement to do @imothep85. If you're accelerating/decelerating an object, checking for solid collisions and simulating gravity effects on trajectory then I would wager that there would be not much difference between bullet and doing the movement custom in events. If you're just moving something in a straight line with zero accel etc then bullet will add a small overhead.
A big fan of JavaScript.
B
76
S
20
G
76
Posts: 2,296
Reputation: 47,576

Post » Wed Nov 11, 2015 11:13 am

i just spawn platforms from outside the screen (right side) to the left horizontal movement, where the player has to jump for collecting coins.
nothing more :D no accelerations /decelerations all the objects move at the speed 115 and directed to angle 180
B
41
S
16
G
7
Posts: 1,750
Reputation: 9,963


Return to Construct 2 General

Who is online

Users browsing this forum: No registered users and 8 guests