3D美术人员Technical Artist(TA技术美术)的学习之旅(4)

上一篇文章我讲了渲染管线以及我觉得美术应该有疑问的程序语法的书写格式.接下来我会根据我理解的冯乐乐老师Shader入门精要去说说Shader的基本语法结构有哪些(这里针对的是Unity3d的Shander)~.我会附上图片去最简单的去接受它到底是干什么用的.OK开始我们新的学习之旅~~~

在这里我希望各位能够下一个Visual Studio Code 这个编写程序的软件.它比VS要小一些,方便些.因为我们不去接触编写其他语言.所以这个完全够用了.

Shader(着色器)我把它分为3个部分,很好理解的三个部分.我把它比喻成一个人,之前我说过Shader就是一个美丽的女士,那么第一个部分Shader的名称(美丽女士的名称).第二部分是Shader的属性(这位女士什么样)第三部分Shader的呈现方式(美丽女士穿着的什么衣服)

这里我说的有点简便,只是我方便我自己去理解Shader去用的一个小技巧.希望我的这个小技巧能够帮助各位美术人员能够理解Shader的基本结构.

这里的Shader的名称,顾名思义就是这个Shader叫什么,例如Shader"XXXXX".  如3D美术人员Technical Artist(TA技术美术)的学习之旅(4)

3D美术人员Technical Artist(TA技术美术)的学习之旅(4)

这里我们给这位美女的女士命名了一个叫Black的名称.我们就叫她黑珍珠女士~

ok,黑珍珠女士诞生了,诞生这位女士长什么样呢.

这时候我们需要用Shader里的Properties去给这位女士定义一个属性,就像我们玩游戏角色有时候需要捏脸一样,把它捏成你想要的样子,当然你也可以选择默认,就是所谓的大众脸.就是什么都不去写,没有Properties这个定义属性,也没有关系.

例如3D美术人员Technical Artist(TA技术美术)的学习之旅(4)


这里你可以看见2个很明显的属性类型 Color,2D .这里代表的意思是这个Shader里,我们定义了一个为黑色的颜色以及一个没有图片名为picture的2d图片窗口.

3D美术人员Technical Artist(TA技术美术)的学习之旅(4)


蹡蹡,是不是突然明白了些什么,interesting,~~~~~

hold on hold on,稍微刹下车.  这里大家有没有意识到什么呢~  就是以为这么漂亮的黑珍珠女士样貌也出来了,但是她没有穿衣服,那在引擎世界里会允许她出来吗?   答案嘛~~就是下面这样子.

3D美术人员Technical Artist(TA技术美术)的学习之旅(4)

卧槽,这是一个什么. 

嗯,没错,这是一个充满紫色马赛克的黑珍珠.  万恶的马赛克= =

为什么会出现这种情况呢

我们接着看Shader给的错误提示.

3D美术人员Technical Artist(TA技术美术)的学习之旅(4)

它的意思是GPU读取不到Shader,因为它没有Subshader 和Fallback指令.

这里指的Subshader是什么呢 ,没错就是衣柜,这个衣柜里有无穷无尽的衣服.  没有衣服世界是会制裁你的,哪怕你穿个迷你小背带也可以啊~~~

emmm,那么Fallback是什么呢 ,Fallback,我把它看做能让美女出现的最低保证,就是穿一件普普通通的T恤~最普通那种,没有高大上,没有999.

那么接下来我们看下加上Fallback为什么什么样子

3D美术人员Technical Artist(TA技术美术)的学习之旅(4)

3D美术人员Technical Artist(TA技术美术)的学习之旅(4)

EMMM没有马赛克了是不是 ~~~~~~~~

这就是Fallback的用处.

至于我认为最重要的Subshader语义块,就是衣柜,黑珍珠的衣柜,我把它留到下一次去讲解.~~~~希望这浅层的理解能够帮助到各位(PS:如果有说的错误不好的地方希望大佬指出,我会及时纠正)

最后老规矩:致在TA道路上前行痛苦并快乐的人们~~~~~~~