今天尝试写一个multi pass shader,但其中有一个Pass是surface pass,总是莫名奇妙地报错。后来看到下面帖子:

http://forum.unity3d.com/threads/achieving-a-multi-pass-effect-with-a-surface-shader.96393/

此帖3楼中写道:“

You can add arbitrary passes while using a surface shader.

You just stick everything else in Pass {} tags and ensure that your surface shader isn't inside any of them (as Unity will generate them as it parses the surface shader).

即multi Pass shader中的surface Pass都不要加Pass{}标签。因为surface Pass在编译时会自动生成Pass{}标签。

---

另外一个相关的帖子:http://answers.unity3d.com/questions/354774/index.html?sort=oldest

05-11 17:13