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.
@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.
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.
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.
@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.
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).”