Entities not rendering on android

Hi there,

I'm currently trying to get a simple test project with ECS to run on android.

In editor play mode or on a windows build, everything is fine.
But on android, while normal game objects get displayed as expected, no entities are visible.

I used Logcat for debugging and noticed following error messages repeatedly appearing while the app was running:

I assume, it's a problem with entities graphics renderer.

After a few tests, I also can confirm that it's only a visual problem. A game object can be moved synchronously with the invisible entity.

Is this a bug or am I missing something?

Thanks.

My scene setup: start with example scene, add cube and sphere with collider/rigidbody as normal gameobjects, add subscene for entities, add cube and sphere with physics shape and body for entity conversion, add bouncy physics to both spheres

I use a duplicate of the default material, no custom shaders and the default performance URP with Forward+.

Specs:
Unity Version: 2022.2.13f1
Renderer: URP
Project template: Core 3D URP
Packages: Entities Graphics 1.0.0-pre.65, Unity Physics 1.0.0-pre.65, Android Logcat 1.3.2,
Devices: Samsung Galaxy S7 (Android 8.0)

8956344--1229694--2023-04-17 17_12_11-Einstellungen.png

Entities Graphics requires either Vulkan or GLES3.1, so compute shaders are available. The underlying BatchRendererGroup technology also supports GLES3.0, but the Entities Graphics package needs compute shaders on top of that.

Alright thanks. That helped.

This is what fixed the problem for me:
Player > Android settings > GraphicsAPI: only add Vulkan, remove the others (OpenGLS3 with nor without either of the "Required ESx.x" checkboxes ticked didn't work)

1 Like


Should all phones with gles3.1 or 3.2 work?
I never have gotten anything that uses a lot of compute shaders (example vfx graph) to work on OpenGLES 3.2. when checking the buffer count I found vulkan supports multiple magnitudes more than gles3.2