LWRP. SRP Batcher not work on mobile ??

Android.

I use script "SRPBatcherProfiler".
Toggle enable / disable SRPBatcher.

SRP batcher WORK on PC. Not WORK on Android.

On the screen says that it is enabled / disabled. But all Shader are given in the section standard and will not batching.

Help pls!

From the Unity 2019.2 beta blog-post:

https://blogs.unity3d.com/2019/05/09/unity-2019-2-beta-is-now-available/

Do you use 2019.2 beta?

This blog-post, 3 months old by now, contains a “supported platforms” table:
https://blogs.unity3d.com/2019/02/28/srp-batcher-speed-up-your-rendering/

If you’re on 2019.1, SRP bacther Android support will be there in several weeks.
If you’re on a newer version, it should work. If it doesn’t, please report a bug.

Thx!
I use 2019.1.1. Waiting for updates!

I’ll post here when it lands :slight_smile:

1 Like

Scratch that, this was another fix landing :slight_smile:
I’ll post when the real thing happens.

2019.1.5f1 will have it.

1 Like

Thanks for help! I will wait

Any chance to backport to 2018 LTS?

@BattleAngelAlita unfortunately, no.
This wasn’t a backport. This functionality was added in 2019.1, but then it was disabled due to a certain bug it introduced. The bug was fixed in 2019.1.5f1, and SRP batcher support on GL was re-enabled.

Hi.
2019.1.5 out, I look at the list of changes and there is no bug fix?

You tricked me? Right?

Hi,

I was checking SRP batching on iOS (Unity 2019.1.2f1 and LWRP 5.13). There are differences between what Xcode reports as draw and Unity’s frame debugger.

On Xcode there are 3877 draws, but on the Unity frame debugger it only shows 7. @aleksandrk Is this expected? Is SRP working?

Also let me add that SRP Batcher doesn’t work if objects are light mapped ONLY ON DEVICE, on editor works great.

The frame debugger isn’t showing draw calls. It’s showing internal renderer thread events. Each event may produce multiple draw calls.

Also the SRP Batcher isn’t making drawing multiple objects use one “draw call”, instead it makes those draw calls much cheaper. This was true of static batching too btw. If you have 4 objects that are staticly batched, it shows as one event in the frame debugger, but it’s still 4 draw calls if you use RenderDoc (on PC) or XCode.

One thing to understand is draw calls themselves are not necessarily expensive. Changing the rendering settings (shader or shader variant, mesh, blend mode, textures in use, material properties, object position, etc.) is the expensive part. The idea behind the SRP Batcher is to try to reduce the settings change cost.

2 Likes

When will SRP batching support be added on a mobile device in Unity 2019.1 ?

@unity_5fpsmegasupergiperprogramer The bug doesn’t mention the batcher itself.
It’s the first entry in the release notes: “Android: Fixed a crash when a shader is written in GLSL and uses Single-pass rendering in Android VR.” This was a blocking issue for the batcher, so we decided to disable SRP batcher support as a quick fix and then fixed it properly.

@Eyeofgod Bgolus answered the draw call question :slight_smile:

Please report a bug.

Once again, the question “When will SRP Batcher run on android in 2019.1 Unity ?”, or will be available only in 2019.2 ?

Why in Unity 2019.2 beta, it says “OpenGL support for SRP batcher (iOS and Android) to improve CPU performance in projects that use the Lightweight Render Pipeline (LWRP).”

Once again, 2019.1.5 has it.