- Home /
Very low URP performance for my mobile 2D game
I added the Universal Render Pipeline to my game to use the Shader Graph to improve the graphics of my game. But I ran into a performance issue. Even without using any PostProcessing effects, the game does not run smoothly. Using a profiler over USB on my Android device, I saw that PostLateUpdate.FinishFrameRendering was taking 13ms of CPU time. FPS changes from 60 to 30 approximately every tick. I need to achieve stable 60fps.
Statistics from the game mode in the editor:
When I change QualitySettings.targetFramerate from 60 to -1, the profiler shows that now most of the CPU time is spent on WaitForTargetFPS (idle CPU as I understand it) and the game runs on 30 FPS. I am assuming the mobile device or URP is conflicting with the targetFramerate parameter.
Profiler screenshot when targetFramerate is 60 and targetFramerate is -1:
I tried to disable almost all objects in the scene and disable PostProcessing on the camera (although there were no PostProcessing effects on the scene), but I did not get a significant performance gain.
About textures in my game: My game is pixel style. My largest texture is 128x96 pixels. On most Texture2D WrapMode is set to Point.
My Unity version is 2021.2.4f1
Your answer
Follow this Question
Related Questions
Depth Texture not working correctly on mobile 1 Answer
Bad performance on Android 0 Answers
Using PostProcessing on URP + Cinemachine? 1 Answer
URP deferred render 0 Answers
Sorting layer ignores 2d lights from the 2d renderer 0 Answers