看的是浅墨大大的shader编程,入门建立工程到后面啥?虽然我才看了前两篇,先把重要知识点记一记,防止以后忘记
https://blog.youkuaiyun.com/poem_qianmo/article/list/3?t=1& 这是大大的shader教程的总界面链接。其实不确定自己会记录多少,因为可能只会用到着色器中深度缓存和深度测试部分,不过从建立一个着色器开始,到单看Ztest和Zwrite有点迷糊,所以花点时间看看基础的,不知道shader后期会不会用,无用功也罢,理解一波,毕竟只有自己动手写一句话才清楚自己是不是真的get到了。
https://blog.youkuaiyun.com/poem_qianmo/article/details/40723789 第一篇知识点
-
入门讲了编写shader的语言shaderLab(裹着一层皮的CG着色器语言,CG用于图形的C语言),HLSL和CG其实是同一种语言,很多时候,我们会发现用HLSL写的代码可以直接当中Cg代码使用。高阶着色器语言(High Level Shader Language,简称HLSL),由微软拥有及开发的一种语言,HLSL 独立的工作在 Windows 平台上,只能供微软的Direct3D使用。 HLSL是微软抗衡GLSL的产品,同时不能与OpenGL标准兼容。他跟Nvidia的Cg非常相似。摘自 https://baike.baidu.com/item/HLSL/9676830 这段其实就是介绍下HLSL和CG的渊源,理解一下,感觉不用刻意就记!
-
用Unity新建场景,给了很多package可以直接下载导入,不过导入第一人称相机略有不同。在Unity5之后标准资源包是需要自己下载的,所以需要在Asset Store里面搜索Standard asset 再导入,参照 https://jingyan.baidu.com/article/ca2d939d449b04eb6c31cee4.html 选择你需要的资源,导入之后会在Assets文件夹下出现Standard asset的文件夹,在其中找到FPSController,路径如下:
拖入Hierarchy之后game界面由原来黑色的No Camera rendering 可以看到原先导入的画面 -
所见即所得
-
作者给的Qianmo Toolkit,图不多说,看脚本。ShowGameInfo,它是用于显示帧率等相关文字消息的,Show Logo和show UI倒是没有什么重要的
-
书写shader首先建立相应的文件夹给予放置,shader需要材质material这个媒介才能作用与游戏物体,shader的语句讲解 https://onevcat.com/2013/07/shader-tutorial-1/ 不过在给材质添加纹理照片哪里,是你在shader里面定义几个纹理就有几个要添加的texture,作者定义了“纹理Texture”和“凹凸纹理Bumpmap”所以对应添加了两张纹理图(需要看看5给的链接关于语句讲解,属性定义,简单理解之后可以继续在shader后面添加更多的东西)。这里用到了ShowObjectInfo,就是4.之中的Toolkit的其中之一脚本,在场景中和游戏窗口中分别显示附加给任意物体文字标签信息的工具脚本,在被添加该物体的inspector键入索要显示的文本内容
-
第一篇知识点over