Android device not support GPU instancing. Immediate mode Using Draw.Command throw error

Avatar
  • updated
  • Under Review

I was expecting the GPU instancing Draw command will still draw something if device not support instancing.

It did not draw anything and only an error was throw on Android device say instancing is not supported on this device.

So I have to manually check if device support instancing or not.

if(SystemInfo.supportsInstancing)
using (Draw.Command(cam))
{
Drawing();
}
else Drawing();

I suggest the package add some documents so other people can avoid it.

Or better Draw.Command() handle non gpu-instancing device internally.

https://docs.unity3d.com/ScriptReference/SystemInfo-supportsInstancing.html

Note: this also happen to some specific newer devices. Not old android Android.

I do not have specific data but you could expect around 10% users on country like Brazil have good android Device but still not support GPU instancing.

Reporting a bug? please specify Unity version:
2020.4
Reporting a bug? please specify Shapes version:
latest
Reporting a bug? please specify Render Pipeline:
Built-in render pipeline
Avatar
Freya Holmér
  • Under Review

I'm not sure if this is something I should error handle on my end, I feel like this is a bit of a borderline case. I'll think about it!