Download

Crappy quality on mobile, was fine on PC

Hi all, I have just finished my mobile game and I have some questions about it. I started it as a PC, regarding target hardware, to make it easier to debug. As it is done now, I changed it to mobile and max quality. My mobile device is Cube U27GT-S tablet. It has a 1280 x 800 (16:10) resolution. My game consists only of widgets, it is a simple puzzle game. I did test the game on my PC using all the resolution settings, including this 16:10 and was fine. Now I have a very low res graphics with jagged edges on the tablet, and some of the buttons are no working, they act like they are not even there. I used the same settings on those as I did on other buttons, that work just fine. I did set the scalability to epic, all the way up.
The buttons not working are always the same ones, no matter if I build the game again and again.
The screen ratios are all messed up, even if they looked good on the 16:10 preview in the editor.
I need severe help here.
Edit: android version 4.4.2

Hi there,

  1. when you edit the engine ‘scalability’ , you only changing how the Editor renders your project.
  2. if you use alot of UMG, make sure you ‘Anchored’ it properly.
  3. Try setup your Device Profiles, by referring to this guide: Setting Device Profiles | Unreal Engine Documentation

I’m guessing your device is set to 0.5 MobileContentScaleFactor

Good luck.

Trying it. Now, I created a text file, with the name ending with “.ini”. How to get it to actually work as an ini file? (I’m on windows 10 64 bit).
Another thing, for no apparent reason UE gave me that packaging failed. It just stops building when in state “deploying to device”. My device does have enough free storage for this game. what could be the problem?
The anchors are working fine, I did use them all the time. The layout looks fine in the editor, when trying out different screen types.
Another thing, I have no player or camera in my scene as I’m using widgets only. Is that an issue, or shall I place a camera with ortho 1080p and call it the main cam?

  1. I suggest make a pawn BP and have a cam, you don’t have to set the cam to ortho, as the UMG will be displayed as it is.
  2. I’d advice to always test your game by installing it on your device, and not launching/deploying it to device. By actually installing, - can help a lot - making sure your game will work well in production.
  3. The way how I set my device profile is by -: Window -> Developer Tools -> Device Profiles.

I did create some DefaultDeviceProfiles.ini, in which I stated the scales - 1.0 for low and mid, 1.5 for high, according to an UE answer hub post.
Now, I have never built an UE game, I mean never released one.
How do you pull off this actual installing? I looked up this and that but did not found it.
by the way the game works fine on HTML5 (firefox).

I did set the scales to 1, I had no scale options below 1. It still is low res :frowning: Have no idea why. In addition, It looks like the game is all zoomed in. Was like that even before I adjusted the device profiles.

You can start by packaging your game for Android(ETC1), then use the batch file to install it on your device while connected via usb and in developer mode (thou I assume, you already know the developer mode part).

Not sure about the ‘zoomed in’, perhaps a screenshot can help, to better understand what’s going on.

In the meantime, I’m reinstalling my codeworks. I have these two screenshot from my main menu.
I accidentally attached one of them one more time. Now as it looks on is a tablet screenshot, the other is run using my PC as a separate window.
I did try everything you said and I found online, but no luck.
http://i1268.photobucket.com/albums/jj563/agiro8747/issueAgain_zpsnybwfbkf.jpg

http://i1268.photobucket.com/albums/jj563/agiro8747/Screenshot_2016-07-18-19-23-40_zpsmoxbdxts.png

Had this problem once, it’s related to the device profile - mobilecontentscalefactor.

You had to play it around until you get it right for your particular device. Perhaps you can try on other android device, and see how it looks.

That mobile content scale factor was that I was setting up, it is the one under rendering and has 3 setups: low, med and high, right? I did try it on my mum’s tablet as well, which has lower resolution, but gave the exact same quality, though the buttons worked better, I mean less wasn’t working.

I messed around with it, even set it to 10.0 for all low, med and high. I also checked the UI minimum Y value, which is 720. My PC’s monitor res is 1366X768 so it isn’t much better than my tablet’s, and yet.
As I said my game uses widgets only, and I did set my textures’ preferences to UI, including the compression settings. Still no clue what might cause this.
Is there a way to report it to a staff member, who works on the android compatibility?

Hi agiro,

If you want to see what resolution it is actually using take a look at the logcat output from the device for the “Reallocating scene render targets to support”. This will tell you the actual resolution it picked. If you want native resolution set r.MobileContentScaleFactor=0. Also, check the DPI curve in User Interface project settings. This controls the scaling of the UI based on resolution: https://docs.unrealengine.com/latest/INT/Engine/UMG/UserGuide/DPIScaling/

Thanks for the help, I will get to it right away.
The first thing - what to do? I mean, yes, all low, med and high mobile content res to 0.0, check. But what is that logcat, and how to get it to work?
As for the DPI curve, I tried messing around it and as a matter of fact it only became worse.
One more thing - I have a load os scale boxes, but the background is not in a scale box. It is set to fill the screen, yet as one can see it on the posts it gets zoomed in on the tablet.

And it can’t package. I have already reported these multiple issues on UE answer hub as a possible bug, awaiting for reply. I’m trying to build ETC_1 by the way.

To get logs from android device in the Editor you can enable Device Output Log (Editor Settings->Experimental->Device Output Log). Then find it in MainMenu->Windows->Device Output Log.
In the log window there is should be a combo box menu where you can select your connected device. Once you do that you will see logs from that device.
Find latest entry “Reallocating scene render targets to support” in the log there should be an actual resolution it uses to render a scene.

That’s 612X360, and my device’s native res is 1280X800. I did try setting the mobile content scale factor on all low, med and high end android to 1,2,3, even 10, but nothing changes. If I set the resolution by console command, it doesn’t zoom out, stays there. (by the way this mobile content scale factor doesn’t affect my PC viewport either).
By the way I have opened a thread on the answer hub as well, currently getting help from a staff member, Andrew Hurley. No luck just yet :confused: tough one to break this res issue.

@agiro: In your project’s Config directory, create a DefaultDeviceProfiles.ini file and put this in it:


[Android_Low DeviceProfile]
+CVars=r.MobileContentScaleFactor=0.0

[Android_Mid DeviceProfile]
+CVars=r.MobileContentScaleFactor=0.0

[Android_High DeviceProfile]
+CVars=r.MobileContentScaleFactor=0.0


[MENTION=11153]Chris Babcock[/MENTION] Well something has changed. It is 1024X601 now, full screen (on the tablet). but shouldn’t this crank this up to the native res? which is 1280X800

@agiro: also try turning on Enable FullScreen Immersive on KitKat in Android project settings. Finally, are you maybe using Mobile HDR? If so, it may limit the resolution to 1024 x 1024 on your device. (look for “Requires Mosaic: YES” in the logcat).

[MENTION=11153]Chris Babcock[/MENTION] I found no “Requires Mosaic” but yes, I was using Hdr, a default project opened. I’m checking without it now…
By this without I mean I just deleted the dome sphere, the light and the fog from the scene. It means I have no hdr I hope