- Home /
clip() in ES3 shader still doesn't work on certain Adreno GPUs
I'm aware of that there are existing tracked issues. e.g. 805086 And it was declared as fixed in 5.3.6. No more related information I can find on newer version of Unity.
However, I've tried Unity 5.4.3f1, 5.6.1f1, 5.6.3f1, and none of them survived on an Asus Zenfone (Adreno 405). clip() failed to discard fragments which are supposed to be cutout.
I use clip to discard writing pixels to not only color buffer, but also to depth buffer (z-write) sometimes. So it can't be replaced with alpha blend easily.
I've disabled ES3 in graphics level setting to by-pass this issue. But I'd really like to try GPU Instancing for performance's sake, which is supported on at least ES3.
I'm using shadowmask lighting mode for better mixed lighting. So if there is fix or workaround on Unity 5.6 or newer, that would be the best.
Thanks.