Search Unity

Using Custom DPI Scaling on Android

Discussion in 'Android' started by leandro_trick, Sep 22, 2017.

  1. leandro_trick

    leandro_trick

    Joined:
    Oct 29, 2014
    Posts:
    14
    Hi,

    We recently ported our game to Android and noticed the performance drops considerably compared to iOS.

    The game is playable, but it runs at 70+ frames on iOS and around 40 on a similar Android.

    The only setting that seemed to have a considerable effect, is using DPI Scaling.

    For example, on a 200 DPI device, we set the DPI to around 0.7 for the Quality level (around 140 resulting DPI) and the frame-rate increases noticeable, whereas the graphic quality doesn't drop that much (it does drop a lot if we use 0.5 for example).

    The problem is, Unity doesn't let us use a 0.7 DPI from whatever the device's DPI is. All we can do is set a hard-coded DPI. Our fear is that by doing this, we'll be indeed fixing the performance problems in lower end devices, but seriously cripple the graphical quality on high end devices (for example, a 300 dpi device will be down-scaled to 140, when we would like it to be 210)

    Does anyone know if there's a way to achieve this result? In summary, having the DPI be 70% of whatever the device's DPI is, instead of the current alternatives: a) full dpi or b) a hard-coded dpi derived from the worse case scenario.

    Thanks!!