Hi there guys, i’d like to introduce you a new feature of koko-aio.
I’ve named it DELTA RENDER and it is now statically enabled in development repo.
It is meant to boost fps by render only the part of the screen that has been changed and reuse the already rendered one otherwise.
Tested on an heavy preset (at least on my haswell):
Enabled on almost static content: 124fps
enabled on almost completely moving content:113fps
Almost completely moving content: 103fps
disabled: 95fps
Without going too much in the technical details, it is statically enabled through the file config.inc, so if you want to play with its parameters you have to edit that file:
#define DELTA_RENDER 1.0
enables or disables (1.0/0.0) delta rendering, enabled by default.
#define DELTA_RENDER_CHECK_AREA 1.0
The lower, the higher the fps.
Set the area that has to be unchanged for the feature to kick in.
Setting it to 0.0 would likely produce artifacts, while setting higher may come handy to track wider blooms.
#define DELTA_RENDER_FORCE_REFRESH 4
The lower, the lower the fps gain.
Forces a full refresh every number of frames (4 by default).
Note that you can NOT rely on delta render to speed up your fps consistently, because it depends on the content, so if your potato gear is not able to run some preset, you cannot expect it to be able just now as it would be an alternating smooth/jerky jumpy experience.
Still, if you’re using a battery powered device, you can expect longer battery life between, i’d say, 10% on shoot-em ups and 30% on puzzle games.