Unity surface shader 学习1:Material, Shader, Texture

Unity surface shader 学习(一)

写在前面的话:

本博客是我学习Unity shader过程中所记录的笔记,前期的学习都是跟随unity官方文档来学习的

一. unity shader的分类
  • 表面着色器
  • 定点着色器和片段着色器
  • 固定功能着色器

其中,固定功能着色器不做深入学习,这里的学习主要指的是表面着色器定点、片段着色器

二. unity中的渲染方式

在unity中,渲染是通过材质shader纹理来实现的。下面,简单来介绍一下这三者在渲染中各自的功能以及相互之间的联系。
1. 材质(Material):
描述了一个模型表面的渲染细节和方式。包括了引用的纹理(Texture), 以及纹理是如何覆盖在模型表面的(通过UV来实现),以及颜色,等各种表现出来的视觉效果。具体有多少,这跟这个材质引用的shader有关。这里我觉得和我们生活中所说的材质很类似:生活中我们分辨一个物体的材质最直观快捷的办法就是通过它的外在表现形式。
2. 着色器(Shader):
先来看看官网是如何描述的

Shaders are small scripts that contain the mathematical calculations and algorithms for calculating the colour of each pixel rendered, based on the lighting input and the Material configuration.

意思就是说着色器就是负责计算每个被渲染的像素的颜色,它是基于光照的,并且可以通过材质来调节一些细节和配置。其实,经常在3D引擎中听到的渲染就是通过shader来实现的。
3. 纹理(Textuer):
一般说的纹理,其实就是一张2D位图(bitmap)。没什么深层次的含义。

他们之间的区别:
一个材质通常需要指定一个shader,而shader却决定了材质可用的选项(指的是材质的功能和那些可调节的部分,在MaterialInspector面板中可调节的部分),shader还指定了一个或者多个纹理
结论: unity中的材质是shader的载体,提供了一种可视化的方式来对shader的一些参数做调节。材质所表现出来的渲染效果是shader通过计算和处理了它所引用纹理之后所达成的。纹理则是渲染中必不可少的一部分(如果你需要华丽的效果)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值