Some Questions About Phaser

Question 1) Should I be using Scale.Fit for scale mode for the mobile screens or Scale.NONE? some other person had Scale.None for the mobile and for desktop screens, Scale.FIT. I don’t understand why NONE would be a good choice at all. Seems like Scale.FIT is a good option for any screen.

Question 2) I need my game to run for all the screen on the full width/height of my device screen. The thing I realized is it’s all about aspect ratio if I want it to be shown on full width/height and still look good. Is that right? if so, some screens might have aspect ratio 4/3, some might have 16/9 ? so what should I do? figure out the device aspect ratio and then after that, I can generate phaser game depending on the device aspect ratio? We have scale property on config object. So I’d pass the specific width/height depending on the device aspect ratio? Is this a good/correct way?

Question 3) So let’s say I have a width/height for scale as 1920/1080 (16:9). Now, what if User changes the orientation? As my understanding, this is what I found that works better than any other option. So I will wait for the orientation change and then execute this code:

this.game.game.scale.displaySize.aspectRatio = 1080/1920; this.game.game.scale.setGameSize(1080,1920);

As you see, user changed from landscape to portrait, so i change width/height and aspect ratio so that it could still be shown on full width/height. The only thing is the game still will be shown for landscape. Makes sense? is the above code correct and all I am saying?

Thank you. Hope you can just quickly look through What I explained and give me a little bit of light.

  1. It really depends on whether you want the game scaled or not, and whether you need a fixed aspect ratio. With NONE you can still use any width or height when creating the game, including '100%' to use the whole parent.

  2. That sounds fine. But I don’t think you need to calculate the device aspect ratio unless you’re using FIT or scaling the game manually.

  3. If you’re using NONE, then you would use instead:

    this.scale.resize(1080, 1920)
    

    If you’re using FIT then I think your code will work. Does it give a problem?