Unity Shader之路(二)什么是ShaderLab?

在这里插入图片描述

前言

众所周知,要想当游戏开发工程师,Unity中的Shader编写不得不摸,这一系列文章我将描写我的Shader学习之路,致敬冯乐乐的书Unity Shader入门精要,此篇什么是ShaderLab?希望能给后人一点方向

一句话解释ShaderLab

ShaderLab就是编写UnityShader的语言

一张图解释ShaderLab

大卫惠勒说过“计算机科学中的任何问题都可以通过增加一层抽象来解决”
UnityShader就是Unity为开发者提供的一层抽象,打个比方,如果我们要修理一个大机器,这个机器就是我们要解决的问题,那么这个机器上面设置的旋转的螺丝钉和旋钮就是一层抽象,那么钳子和螺丝刀就是操作抽象的器材,对于Unity,unity就是大机器,机器上面设置的旋转的螺丝钉和旋钮就是UnityShader,钳子和螺丝刀就是ShaderLab

没有UnityShader

如果没有UnityShader,开发者要操作深层渲染,就要如下图直接和很多东西打交道
在这里插入图片描述

有UnityShader

在这里插入图片描述

一段代码解释ShaderLab

那么既然ShaderLab是一个语言,那么它的HelloWorld是什么呢,走起

Shader "HelloWorld"{
Properties{
//属性
}
SubShader{
//显卡使用的着色器
}
SubShader{
//另一个显卡使用的着色器
}
Fallback"VertexLit"
}

这些ShaderLab写的代码会被Unity编译成真正的shader语言,而作为Unity开发者不需要管这些,只要能用好ShaderLab写shader就行

©️2020 CSDN 皮肤主题: 精致技术 设计师:CSDN官方博客 返回首页
实付 9.90元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值