钢铁侠材质制作 |
您所在的位置:网站首页 › java实用教程第五版第六章详解 › 钢铁侠材质制作 |
钢铁侠Unlit光照Shader,三种效果变化 返回目录 大家好,我是阿赵。这里是制作钢铁侠材质的第一部分,模型发光部分的材质制作。 这一个部分只是处理眼睛、胸口、手掌的发光部位,为了能单独控制这些部分,所以在制造模型的时候,需要给这些部位的网格指定Channel为2,这样,在使用多维子材质的时候,就可以单独为这些发光的shader指定一个材质球。 其实多维子材质在我平常在游戏引擎里面是比较的不喜欢用的,因为一个模型用了多个材质球,本身就是多个pass。但针对这个例子本身来说,钢铁侠的身体材质本身会比较复杂,而发光的部位本身会比较的单纯,如果分开来计算,对性能反而是有帮助的。 在做了通道指定之后,在导入引擎使用时,就可以指定2个材质球了,第一个材质球是身体部分的,第二个材质球是发光部分的。 可以看出,上面的shader非常的简单,只是指定了一个lightCol作为灯光的颜色而已。 需要注意的是,这里的颜色定义使用了HDR [HDR]_lightCol("lightCol", Color) = (1,1,1,0)具体什么是HDR颜色,各位可以自己去搜一下。我简单说明就是,平常我们使用的颜色都是LDR,L指Low,它的颜色强度取值范围都是0-1的,而HDR的H指的是High,它的颜色强度取值范围是可以超过1的。 不过单纯是设置了HDR颜色之后,会发现模型也没有发光 然后我们再添加一个Bloom屏幕后处理: 可以看到现在是已经发光了。 在旧版本的Unity屏幕后处理,并没有支持HDR效果,所以旧版本的Bloom只是单纯的模糊再叠加,所以是越接近白色的地方越亮。 Unity新的Post-process后处理系统支持了HDR效果之后,就变成了根据HDR颜色来做辉光效果,就算是白色,但如果HDR强度小于等于0时,也不会发光。 知道了这个规则之后,我们就可以调整HDR颜色,做出不同的发光效果。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |