Vulkan on S6/S7 results in magenta-colored materials

I’ve created a simple project with an unlit material to debug some Vulkan issues that I’ve been having on mobile. In order to force the Vulkan API for my experiments, I disabled Automatic Graphics API and made sure that Vulkan is the only one available in the Graphics APIs list. Multithreaded rendering, dynamic and static batching are all on. The API level is 24 (Nougat 7.0) and the target architecture is ARMV7. I’m using 5.6.0p2.

When I launch the app on the test hardware, all materials (even unlit ones), appear to be magenta.

I have a feeling that the phone still tries to run OpenGL regardless of the settings picked in Unity. When the app starts up, I get a notification that says that “Your device does not match the hardware requirements of this application.” If the application runs, I see some GL extensions being printed out in logcat like it’s still running OpenGL ES. I also see some error messages that say “Desired shader compiler platform 5 is not available in shader blob.”

This is very odd. The S6 and S7 GPUs are supposed to support Vulkan. Also I’m pretty sure I’ve been able to run Vulkan on these phones before but they recently started to act up. I don’t know if it’s a case of the Vulkan implementation being buggy on the hardware itself. I was wondering what other peoples’ experiences are like.

Well this is odd. My examples started working again. I did restart my test S7s several times to no avail. I turned one on tonight and one of my Vulkan tests seemed fine. No idea what’s going on.

I suppose I can expect some buginess since Vulkan is relatively new to Android.