UnityShader入门
庸人自扰Eam
你若不想做,总会找到借口;你若想做好,总会找到方向!
展开
-
1.2 CPU与GPU间通信
参考自:Unity Shader入门精要,本文为本人 学习笔记,请读者尊重原著版权,多多支持冯乐乐前辈的著作。1.2 CPU与GPU之间的通信渲染流水线的起点是CPU,即应用阶段。该阶段大致可分为以下3个阶段:1.把数据加载到显存中所有渲染所需的数据都需要从硬盘(HDD)中加载到系统内存(RAM)中,然后,网格和纹理等数据又被加载到显卡上的存储空间–显存(VRAM)中。 这是因为:显卡对于显存的访原创 2017-06-05 23:04:57 · 4076 阅读 · 0 评论 -
[UnityShader基础]坐标系
本文转自大神:Rocky Lai 的技术博客,请点击链接查看原文,尊重楼主大大版权。3D坐标系这节从很平常一段对话开始: 甲跟乙说: 喂,你看到那个人没有? 乙: 你说的是哪个? 甲: 就是那棵树旁边那个。从对话里面我们知道:要描述一个物体的位置,我们需要借助参照物。 其实甲也可以这么说: 甲: 在那个个子很高的人左手边那位。所以说 参照物是可以选择的,可变的。我们把上面转载 2017-11-19 19:50:18 · 921 阅读 · 0 评论 -
[UnityShader基础]Shader土地上的语言们
本文转自大神:Rocky Lai 的技术博客,请点击链接查看原文,尊重楼主大大版权。这节是关于 Unity 平台上 shader 语言的选择。计算机行业的各公司(或者组织)似乎都遵循着某种规则。当他们在某个领域划出了一亩三分地,当上了地主后, 就要用方法圈住干活的农民。让他们觉得在我这里不会饿死,有饭吃,你要到别家干活的话,需要重头再来,这是一个很亏本的买卖。这个方法就是制定自己体系(软硬件中的各种转载 2017-11-19 19:38:32 · 1201 阅读 · 0 评论 -
1.1 渲染管线概述
参考自:Unity Shader入门精要 参考链接:Rocky Lai 的技术博客渲染管线(Rendering Pipeline)说的俗一点就是可以理解为流水线。渲染管线我们可暂时理解为 从得到模型数据到绘制出图像 这一过程的称呼。工作任务:由一个三维场景出发、生成(或者说渲染)一张二维图像。换句话说,计算机需要从一系列的顶点数据、纹理等信息出发,把这些信息最终转换成一张人眼可以看到的图像。 这原创 2017-05-29 17:39:41 · 960 阅读 · 0 评论 -
[UnityShader基础]GPU 与 Shader Model
本文转自:Rocky Lai 的技术博客,请点击链接查看原文,尊重楼主版权。 参考链接: https://en.wikipedia.org/wiki/Graphics_processing_unit https://baike.baidu.com/item/shader%20model?fr=aladdinCPU 之外的另外一个 PU - GPU随着计算机处理图形的计算量越来越来大,CPU难以转载 2017-11-19 19:08:37 · 2183 阅读 · 0 评论 -
[UnityShader基础]基本概念
本文片段摘自:猫都能学会的Unity3D Shader入门指南,请点击链接查看原文,尊重楼主版权。一些基本概念Shader和Material如果是进行3D游戏开发的话,想必您对着两个词不会陌生。Shader(着色器)实际上就是一小段程序,它负责将输入的Mesh(网格)以指定的方式和输入的贴图或者颜色等组合作用,然后输出。绘图单元可以依据这个输出来将图像绘制到屏幕上。输入的贴图或者颜色等,加上对应的S转载 2017-10-31 23:49:21 · 495 阅读 · 0 评论 -
[UnityShader基础]简单Shader本体
本文片段摘自:猫都能学会的Unity3D Shader入门指南,请点击链接查看原文,尊重楼主版权。Shader本体前面杂项说完了,终于可以开始看看最主要的部分了,也就是将输入转变为输出的代码部分。为了方便看,请容许我把上面的SubShader的主题部分抄写一遍CGPROGRAM #pragma surface surf Lambertsampler2D _MainTex;struct Input转载 2017-10-31 23:41:56 · 937 阅读 · 0 评论 -
[UnityShader基础]LOD
本文片段摘自:猫都能学会的Unity3D Shader入门指南,请点击链接查看原文,尊重楼主版权。LOD案例:Shader "Custom/Diffuse Texture" { Properties { _MainTex ("Base (RGB)", 2D) = "white" {} } SubShader { Tags { "Render转载 2017-10-31 23:31:49 · 2475 阅读 · 0 评论 -
[UnityShader基础]Properties属性
本文段落来自:猫都能学会的Unity3D Shader入门指南。 部分参考自:【浅墨Unity3D Shader编程】 请点击链接查看原文,尊重楼主版权。Property属性properties一般定义在着色器的起始部分,我们可以在Shader书写的时候定义多种多样的属性,而使用Shader的时候可以直接在材质检视面板(Material Inspector)里编辑这些属性,取不同的值或者纹理。这转载 2017-10-30 20:01:54 · 12123 阅读 · 0 评论 -
[UnityShader基础]Tags标签
参考链接:猫都能学会的Unity3D Shader入门指南 参考链接:Rocky Lai 的技术博客Tags标签表面着色器可以被若干的标签(tags)所修饰,而硬件将通过判定这些标签来决定什么时候调用该着色器。语法:Tags { “TagName1” = “Value1” “TagName2” = “Value2” … } 就是 Tags 语法块内带有若干键值对项(理论上可有很多很多个这种键值对转载 2017-10-31 23:28:46 · 3483 阅读 · 0 评论