赞
踩
起因
因为Unity URP环境下,surf shader是会失效的。
所以必须把surf shader 翻译为vert frag方式的shader。
因为不太明白surf里的Lighting 函数是怎么生效的。查阅了一些资料,终于找到了一个懒人方法。
以下就是具体的操作:
一,选择要翻译的shader,点击Show generated code。
这时候就会在IDE中显示已经生成的vert frag shader,但是里面的代码有很多冗余,变体的东西。
二、我们只需把里面的surf函数、vert frag方法和关联的代码拷贝到一个新的shader文件里即可。
这里就要求操作的人有一定的shader代码基础才行。该基础的最低水平是能知道让shader代码生效、并达到想要的效果应该如何
做。
三、这时候,注意一下语法,看#ifdef #endif,括号是否完整,注意一下FallBack是否需要添加即可。
以上,翻译后的vert frag shader应该没太大问题了。
起码在standard环境下没问题。但是要完全移植到URP上,还得根据UPR的规则来。具体可以看我之前的文章或者给我评论留言!
本文参考文章:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。