Search Unity

URP Terrible Performance on Quest/Android

Discussion in 'VR' started by HellGate94, Jan 19, 2020.

  1. HellGate94

    HellGate94

    Joined:
    Sep 21, 2017
    Posts:
    132
    I'm using URP with 2019.3.0f5 and in Editor using Oculus Link i have butter smooth 500+ fps but when i build for quest i'm sitting around 25-40 fps on a pretty much empty scene. I'm am using the XR Management Package instead of the Oculus Integration but that shouldn't matter.

    The main issue is that gfx.waitforpresent takes around 40ms meaning that it is GPU limited. that doesn't make a lot of sense since the scene only contains a few test cubes to visualize tracking.

    I had pretty mucht the same issue using LWRP for normal Android and when i reported it as a bug they responded with this issue link. however i already replaced all references of the skybox with a solid color when i reported that issue and same thing here again. no difference when removing/replacing the skybox.

    Also used the GPU Profiler and it was basically empty in there. ~30 steps including shadows and postprocess

    Here is a reddit thread i made back then that is still relevant it seems.

    If anyone got any idea what is going on please let me know. Also if you have a basic URP template that performs well on Quest/Android please share it with me so i can test it out.

    (since this project is for work this time i dont have access to the project till monday to post detailed profiler details)

    Thanks.
     
  2. ROBYER1

    ROBYER1

    Joined:
    Oct 9, 2015
    Posts:
    1,454
    Do you have Vsync enabled? Make sure it is disabled in your Android build settings
     
  3. HellGate94

    HellGate94

    Joined:
    Sep 21, 2017
    Posts:
    132
    it is. i made some progress as seen here but im still open to more ideas/changes that improves performance
     
  4. HQF

    HQF

    Joined:
    Aug 28, 2015
    Posts:
    40
    My project using URP, Addressables, new Input system and new XR Plugin, all works fine. Also PostProcessing works, but i disable it for optimization. And i'm totally reach 72 fps in my game.

    Unity 2019.4.3f1

    XR Settings

    Packages:
    URP 7.4.1
    XR Plugin Management 3.2.13
    Addressables 1.11.2

    Oculus package settings:
    Stereo Rendering mode: Multiview
    Low Overhead Mode: Enabled

    Build:
    IL2CPP,
    x64
    OpenGLES3,
    Linear Color Space,
    Multithreaded Rendering enabled,
    Graphics Jobs enabled

    Quality:
    Texture Quality - Half Res

    URP asset settings:
    HDR - disabled
    Anti Aliasing (MSAA) 4x
    Render Scale: 0.9

    Main Light - Per Pixel
    Shadows - disabled
    Additional Lights - Disabled

    SRP Batcher - enabled
    Dynamic Batching - enabled
    Mixed Lighting - disabled
     
    milox777 likes this.
  5. ROBYER1

    ROBYER1

    Joined:
    Oct 9, 2015
    Posts:
    1,454
    @HQF The Quest is not powerful enough for post processing. What were you expecting?
     
    gjf likes this.
  6. HQF

    HQF

    Joined:
    Aug 28, 2015
    Posts:
    40
    But i said that - i just disable post processing) i don't want it in android build
     
    ROBYER1 likes this.
  7. ROBYER1

    ROBYER1

    Joined:
    Oct 9, 2015
    Posts:
    1,454
    My setup is the same also, all working fine now, I reported loads of URP bugs for VR which have been fixed!
     
    gjf likes this.