1 decade ago by zachstronaut
It'd be great to have a matrix of things to consider when trying to get the best performance out of Impact and Ejecta. I'm working on a game and running into some framerate problems on Ejecta, and I'm dialing all the knobs to see which make a difference. I'd love to have a list of knobs worth dialing to save time and headaches.
Here's some of my notes. I'd love to get these nailed down to definitive YES or NO or MAYBE. I know that "it depends," but surely there's some reasonable advice to be had.
Things that will substantially effect framerate in Ejecta:
(THESE MAY BE COMPLETELY WRONG! THIS LIST IS FOR FEEDBACK.)
Map dimensions: no
Number of map layers: yes
Number of tiles in tileset: maybe
Tile size: maybe, larger tiles seem smoother
Canvas dimensions and scale: maybe, 1x seems smoother than 25% size canvas scaled up 4x
Canvas scaleMode: no
Number of entities on screen: yes
Number of entities off screen: maybe
getDrawPos snap to hardware position: yes, seems to introduce a blip in smoothness on a regular interval
I think where I'm most confused, and most want to do more performance testing experiments, is around an Ejecta game where the canvas size = device screen size vs an Ejecta game where the canvas is small and being scaled up 4x to fill the device screen. I'm doing a pixel art game, so I don't need high res textures. I would have thought that scaling the entire game up 4x would be a very inexpensive operation, but it does not seem to be the case?
It could be that something else is going on, obviously.
Here's some of my notes. I'd love to get these nailed down to definitive YES or NO or MAYBE. I know that "it depends," but surely there's some reasonable advice to be had.
Things that will substantially effect framerate in Ejecta:
(THESE MAY BE COMPLETELY WRONG! THIS LIST IS FOR FEEDBACK.)
Map dimensions: no
Number of map layers: yes
Number of tiles in tileset: maybe
Tile size: maybe, larger tiles seem smoother
Canvas dimensions and scale: maybe, 1x seems smoother than 25% size canvas scaled up 4x
Canvas scaleMode: no
Number of entities on screen: yes
Number of entities off screen: maybe
getDrawPos snap to hardware position: yes, seems to introduce a blip in smoothness on a regular interval
I think where I'm most confused, and most want to do more performance testing experiments, is around an Ejecta game where the canvas size = device screen size vs an Ejecta game where the canvas is small and being scaled up 4x to fill the device screen. I'm doing a pixel art game, so I don't need high res textures. I would have thought that scaling the entire game up 4x would be a very inexpensive operation, but it does not seem to be the case?
It could be that something else is going on, obviously.