Supported shaders

Hi all,
not sure if this has been asked before, but my search came up empty.

Which of the built in shaders are supported on the iPhone?

The reason I ask is that I tried to write a custom one based on the transparent/diffuse shader. My version took the source as-is from the Unity site with one small modification: changed the “Queue” Tag to “Background”. Doing that gives me an error in the editor “ShaderLab error: Shader ‘Tree BillBoard Shader’: no subshaders can run on this graphics card” when iPhone graphics emulation is on. It also doesn’t work on the device (renders gray)

[FWIW I am now setting the renderQueue via a script with the stock trans/diffuse to get the effect I need on the objects.]

No shaders are supported. That means you can basically take the shaders and just remove anything thats related to to cg, then you see what will work.

Only the combiner fallbacks work on the iphone.

The tree stuff etc won’t work at all, they are part of the terrain system and on their own already pretty high end (compared by the normal shaders) and the terrain system isn’t supported on the iphone.

Thanks for the reply, this does help.
However, it also raises a question. As I went through the shaders looking for any CGPROGRAMs to see what works and what doesn’t I noticed that both the normal Diffuse and it’s fallback normal VertexLit use cg programs. So how are the materials that are set to use these working? VertexLit doesn’t have a fallback. Is the iPhone using a different set of shader source from what is posted on the Resources page? Admittedly I know next to nothing about shaders so maybe this is just my ignorance showing.

The CGPROGRAMs part is ignored, it will switch to the fallback at the bottom of those corresponding materials.

every UT provided material has fixed function fallbacks for pre SM2 cards which can’t use CGPrograms