[Unity] unity3d着色器-Shaders(1)概述

查看:1145 |回复:18 | 2014-10-11 01:49:48

您需要 登录 才可以下载或查看,没有账号?注册

x
本帖最后由 大西几 于 2021-2-24 16:34 编辑

Unity中的所有的渲染都是通过着色器来完成的,着色器可以让开发人员对图形硬件的渲染功能进行设置。Unity中有超过60个的内置着色器,开发人员可以方便的对其进行扩展,也可以开发自己的着色器。

Unity主要有三种不同的着色器:

1.表面着色器--Surface Shaders
在大多数情况下,表面着色器是最好的选择。如果着色器需要与灯光、阴影、投影器等进行交互,可以使用表面着色器。表面着色器可以以简洁容易的方式实现更复杂的功能。其可以有效地与多个实时灯光进行互动。

2.顶点和片元着色器--Vertex and Fragment Shaders
如果需要一些表面着色器不能处理的奇特效果,着色器不需要与光照活动或者只是图像效果,顶点和片元着色器会是最灵活有效的。但是使用顶点和片元着色器需要编写比表面着色器跟多的代码,并且很难与光照互动。

3.固定功能着色器--Fixed Function Shaders
这是为不支持可编程着色器的旧硬件编写的,它能确保游戏在就硬件或者简单易懂平台上运行时渲染出来的物体时正常合理的。

(表面着色器、顶点和片元着色器使用CG或者HLSL语言编写的,而固定功能着色器则是完全使用ShaderLab着色语言编写的。ShaderLab着色语言是Unity提供的一种专用的着色器开发语言,比CG或者HLSL更为简单。)

开发着色器时的基本框架结构:


Shader "Custom/MyShader" {
Properties {
_MainTex ("Base (RGB)", 2D) = "white" {}
//其他属性如颜色或者向量将以此排列于此
}
SubShader {
//这里放置由所选的着色器类型所决定的特定格式的着色器代码
}
SubShader{
//当着色器运行在一个较古老的显卡时所用的简单兼容版本
}
}
(一个完善的着色器中会有多个SubShader以适应众多不同的图形硬件,实际的着色器代码都是内嵌在ShaderLab的SubShader中的) image.png
2014-10-11 01:49:48  
 赞 赞 1

使用道具 登录

18个回答,把该问题分享到群,邀请大神一起回答。
2#
不错 虽然看不懂
回复 收起回复
2014-10-11 01:52:49   回复
 赞 赞 1

使用道具 登录

3#
不错 虽然看不懂
回复 收起回复
2014-10-11 01:52:52   回复
 赞 赞 1

使用道具 登录

4#
好专业
回复 收起回复
2015-6-29 09:36:28   回复
 赞 赞 1

使用道具 登录

5#
给力!元素有你更精彩
回复 收起回复
2015-7-19 08:02:39   回复
 赞 赞 1

使用道具 登录

6#
给力!元素有你更精彩
回复 收起回复
2015-7-21 11:06:17   回复
 赞 赞 1

使用道具 登录

7#
元素那么大,我想来看看!
回复 收起回复
2015-7-23 22:38:59   回复
 赞 赞 1

使用道具 登录

8#

好专业
回复 收起回复
2015-7-31 12:22:39   回复
 赞 赞 1

使用道具 登录

9#
资源发布哪家强?元素首发称大王!
回复 收起回复
2015-8-5 21:30:45   回复
 赞 赞 1

使用道具 登录

10#
为了元素币,拼了!
回复 收起回复
2015-8-10 07:41:14   回复
 赞 赞 1

使用道具 登录

11#
元素那么大,我想来看看!
回复 收起回复
2015-8-10 14:13:05   回复
 赞 赞 1

使用道具 登录

12#
不错学习学习
回复 收起回复
2015-10-11 13:01:13   回复
 赞 赞 1

使用道具 登录

13#
给力!元素有你更精彩
回复 收起回复
2015-10-11 20:16:36   回复
 赞 赞 1

使用道具 登录

14#
为了元素币,拼了!
回复 收起回复
2015-10-19 19:38:52   回复
 赞 赞 1

使用道具 登录

15#
小手一抖 金币带走
回复 收起回复
2015-10-21 10:56:14   回复
 赞 赞 1

使用道具 登录

16#
小手一抖 金币带走
回复 收起回复
2015-10-21 10:56:40   回复
 赞 赞 1

使用道具 登录

18#
{:1_148:}  老版本
回复 收起回复
2015-11-3 10:50:36   回复
 赞 赞 1

使用道具 登录

19#
牛逼
回复 收起回复
2018-10-23 11:28:32   回复
 赞 赞 1

使用道具 登录

20#

元素那么大,我想来看看!
回复 收起回复
2018-10-23 11:57:55   回复
 赞 赞 1

使用道具 登录

CG 游戏行业专业问题

Unity3D技术手机游戏引擎手游引擎
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表