U3D次时代shader用什么?自带shader效果弱爆了
4个回答
2017-07-17
展开全部
在当今世代,手游都追求高画质,也有不少手游能逼近主机效果(前提是手机跑得动)。然而要达到这么犀利的效果是要付出代价的,不得不通过各种优化或奇葩的手段(然而最重要是结果)。往往Unity自带的Shader并不能满足美术大大们的需求,所以作为一只逻辑程序猿不得不放下手头工作开始琢磨Shader,以满足需求。如果没有接触过计算机图形学的程序猿要学习Shader是必定痛苦万分的,庆幸的是在大学时期学习过DirectX(然而现在不记得怎么用了)。作为一只从来没接触过Shader的程序猿,看到Unity的ShaderLab,感觉一脸茫然,只好在翻谷歌,爬帖子和看书籍的日子中渡过。坚持了一段时间后,终于有所成就,能独立完成一些美术效果要求,开始不断研究不同的效果和实现方式。最后根据美术大大们的要求,重复实践,终于能出来个基本效果,在手机上性能也能过得去(松了一口气)。
& & & &&需要的效果:
一个次世代角色材质往往需要不少效果,但往往会有这几种:法线,高光,自发光还会有一些:半透,遮罩颜色,流光,轮廓光
& & & &&需要的节点:
颜色贴图:RGB通道用于颜色值,A通道用于透明值来自混合贴图:R通道用于高光蒙板,G通道用于自发光蒙板,B通道用于颜色遮罩蒙板法线贴图:自然是切线空间下的法线贴图流光贴图:以Addtive的方式叠加一层贴图,读取模型的UV2做滚动透明值:控制角色渐隐的浮点范围值(0-1)高光颜色:用于控制高光颜色,黑色下表示没有高光高光强度:用于控制高光强度(倍数)高光范围:用于控制高光范围(次幂)自发光强度:用于控制自发光强度轮廓光颜色:用于控制轮廓光颜色,黑色下表示没有轮廓光轮廓光强度:用于控制轮廓光强度(次幂)
法线:在Unity中非常多案例,一般是在切线空间下做处理,主要用于跟光向做点积高光:用法线贴图在切线空间内跟光向和视向的半角向量做点积自发光:根据蒙板信息,叠加基本颜色半透:由于是角色,不能关闭深度测试,所以要用AlphaTest来做半透处理,并且渲染队列放到Geometry后面遮罩颜色:根据蒙板信息,使用遮罩颜色替换基本颜色流光:在自发光处理中合并处理,根据时间滚UV,叠加流光贴图的颜色轮廓光:在光照计算里加入一道法线和光向的点积计算
& & & &&需要的效果:
一个次世代角色材质往往需要不少效果,但往往会有这几种:法线,高光,自发光还会有一些:半透,遮罩颜色,流光,轮廓光
& & & &&需要的节点:
颜色贴图:RGB通道用于颜色值,A通道用于透明值来自混合贴图:R通道用于高光蒙板,G通道用于自发光蒙板,B通道用于颜色遮罩蒙板法线贴图:自然是切线空间下的法线贴图流光贴图:以Addtive的方式叠加一层贴图,读取模型的UV2做滚动透明值:控制角色渐隐的浮点范围值(0-1)高光颜色:用于控制高光颜色,黑色下表示没有高光高光强度:用于控制高光强度(倍数)高光范围:用于控制高光范围(次幂)自发光强度:用于控制自发光强度轮廓光颜色:用于控制轮廓光颜色,黑色下表示没有轮廓光轮廓光强度:用于控制轮廓光强度(次幂)
法线:在Unity中非常多案例,一般是在切线空间下做处理,主要用于跟光向做点积高光:用法线贴图在切线空间内跟光向和视向的半角向量做点积自发光:根据蒙板信息,叠加基本颜色半透:由于是角色,不能关闭深度测试,所以要用AlphaTest来做半透处理,并且渲染队列放到Geometry后面遮罩颜色:根据蒙板信息,使用遮罩颜色替换基本颜色流光:在自发光处理中合并处理,根据时间滚UV,叠加流光贴图的颜色轮廓光:在光照计算里加入一道法线和光向的点积计算
2017-07-17
展开全部
建议使用maya的shaderFX编辑器编辑好然后再导入unity3d
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2017-07-17
展开全部
你直接导进unity的贴图默认是压缩版的,format那里可以改下应该是可以的 试试看。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2017-07-17
展开全部
导进unity的贴图默认是压缩版的,format那里可以改下
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询