Unity Shader概念描述

Shader的作用

在Unity中渲染一个物体的外观是通过材质Material来完成的,其中材质上可以包含一个Shader脚本

材质决定了一个物体表面怎么样被渲染,包括对纹理Textures的引用,颜色的信息等,材质Material发挥什么样的具体功能操作,是通过Shader来完成的。

比如现在有一个红色的球,那么材质Material的颜色信息是红色的,我们想把球变成绿色的就是通过Shader来操作的.

Shader是一个脚本,里面包含一些算法,比如会有一些算法,根据输入的光的信息和材质的信息影响每个像素点Pixel的渲染,

我们可以通过shader实现很多效果,比如水的流动,粒子效果,夜视效果,模型一部分高光,草的折射效果,序列帧动画等

下图我们使用一个汽车纹理图,两个shader(一个控制颜色为红色的shader,一个控制颜色为绿色的shader),三个材质(汽车轮子的材质,红车的材质,绿车的材质)实现了两种颜色的汽车,这样我们就不需要用两张纹理图了


物体会受到环境中各种光的影响,比如环境光,反射光,直射光等,我们可以通过shader来控制各种光对我们的物体产生的影响

比如我们在unity中创建一个小球和一个直射光,如下图




我们看到小球的左上角明显比小球的右下角亮,这是因为我们在创建小球的时候,unity已经默认为我们的小球添加了一个材质,材质上有一个默认的shader

这个默认的shader控制了物体受到光照时所产生的影响















评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值