unity Shader
非学,无以致疑;非问,无以广识!
对酒当歌﹏✍
游戏融入生活,快乐无处不在!
展开
-
Shader编程学习笔记(十五)—— 3D数学基础3 - 矩阵
目录1、引言2、矩阵2.1、矩阵的维度和记法2.2、矩阵的转置2.3、矩阵和标量的乘法2.4、 矩阵和矩阵的乘法2.5、 单位矩阵3、结束语1、引言 这一篇主要了解矩阵的相关知识点,本篇涉及的知识点:矩阵的维度和记法矩阵的转置矩阵和标量的乘法矩阵和矩阵的乘法2、矩阵2.1、矩阵的维度和记法3×23\times23×2的矩阵:[m11m12m21m22m31m32]\be...原创 2019-06-29 14:27:56 · 317 阅读 · 0 评论 -
Shader编程学习笔记(十四)—— 3D数学基础2 - 向量
目录1、引言2、向量2.1、向量2.2、向量的运算2.2.1、向量的加法2.2.2、向量的减法2.2.3、向量与标量的乘法2.2.4、向量的单位化2.2.5、向量的点积2.2.5.1、向量的点积运算2.2.5.2、向量的点积的几何意义2.2.6、向量的叉积2.2.6.1、向量的叉积计算2.2.6.2、向量的叉积的几何意义3、结束语1、引言 这一篇主要复习中学知识向量的相关知识,涉及知识点如...原创 2019-06-29 11:42:18 · 367 阅读 · 0 评论 -
Shader编程学习笔记(十三)—— 3D数学基础1 - 坐标系
目录1、引言2、各坐标系介绍2.1、2D中的模型坐标系2.2、2D中的世界坐标系2.3、3D中的模型坐标系2.4、3D中的世界坐标系2.5、摄像机视坐标系2.6、屏幕坐标系3、总结4、结束语1、引言 从这一篇开始了解一些3D数学知识,这一片主要是关于坐标系的。本篇涉及知识点:模型坐标系世界坐标系摄像机坐标系屏幕投影坐标系2、各坐标系介绍2.1、2D中的模型坐标系 在2...原创 2019-06-28 11:23:05 · 385 阅读 · 0 评论 -
CG 标准函数库
目录1、数学函数2、几何函数3、纹理映射函数4、偏导函数1、数学函数 数学函数 函数 功能描述 示例 abs(x)返回输入参数的绝对值 acos(x)反余切函数,输入参数范围为[-1,1], 返回[0,π]区间的角度值 all(x)如果输入参数均不为0,则返回ture; 否则返回flase。&&运算 ...原创 2019-06-27 14:49:33 · 370 阅读 · 0 评论 -
Shader编程学习笔记(十二)—— Cg语言入门4 -函数
目录1、引言2、示例2.1、函数2.2、函数的前项声明2.3、函数的参数传递2.4、Cg include3、总结4、结束语1、引言 这一篇我们俩了解下Cg语言中的函数,这里涉及到的知识点包括以下内容:定制函数函数的前项声明函数的传参Cg include2、示例 这我们将一一举例说明!开始之前我们先搭建好场景,便于演示。创建一个场景,一个cube,一个材质球和一个顶点片元s...原创 2019-06-27 10:54:40 · 394 阅读 · 0 评论 -
Shader编程学习笔记(十一)—— Cg语言入门3 -流程控制
目录1、引言2、示例2.1、验证switch...case条件语句2.2、if...else条件语句2.3、if...else条件语句1、引言 这一篇我们我们来了解下流程控制语句,在CG语言中支持条件语句和循环语句。if…else 条件语句while 循环do … while 循环for 循环需要注意的是早期版本Cg不支持switch…case语句,但是保留了这些关键字!但...原创 2019-06-25 20:26:39 · 961 阅读 · 0 评论 -
Shader编程学习笔记(十)—— Cg语言入门2 - 数据类型和Swizzle操作
目录1、引言2、演示2.1、布尔(bool)类型2.2、int2.3、sampler2.4、向量2.5、Swizzle操作2.6、使用别名2.7、宏定义2.8、矩阵2.9、数组2.10、结构体3、总结4、结束语1、引言 上一篇我们讲述了基本数据,这里我们主要讲解数据类型和Swizzle操作,涉及的知识点如下:向量Swizzle操作矩阵数组结构体2、演示 这里我们对上面的...原创 2019-06-25 11:42:52 · 788 阅读 · 0 评论 -
Shader编程学习笔记(九)—— Cg语言入门1 - 输入输出、语义、profile和基本数据类型
目录1、引言2、示例3、结束语1、引言 这里我们开始了解CG语言。本篇涉及知识点:输入输出语义 这里我们使用一个示例来了解一个简单的shader的顶点和片段程序的输入输出以及常用语义。2、示例 编写一个简单的顶点和片段着色器,代码如下:Shader "lxt610/fragmentVertexShader"{ SubShader{ pass{...原创 2019-06-23 15:17:47 · 813 阅读 · 2 评论 -
Shader编程学习笔记(八)—— Surface Shader 2
目录1、引言2、surface函数3、SurfaceOutput”和“SurfaceOutputStandard”两种结构体的对比1、引言 上一篇我们主要了解了Surface Shader使用了“#pragma surface surf Standard fullforwardshadows”指令的意义,这里我们主要了解“surf”surface函数。void surf (Input I...原创 2019-06-23 10:52:39 · 352 阅读 · 0 评论 -
Shader编程学习笔记(七)—— Surface Shader 1
目录1、了解Surface Shader2、了解默认Surface Shader3、了解默认SubShader4、使用示例5、结束语1、了解Surface Shader 这里我们对Surface Shader做一个了解!主要了解在Surface Shader当中比较重要的几个部分,如下:SurfaceOutputInputlighingshadow 首先查看一下Unit...原创 2019-06-18 10:56:34 · 414 阅读 · 0 评论 -
Shader编程学习笔记(六)—— Fixed Function Shader 2
目录1、Fixed Function Shader的知识点2、示例演示2.1、场景搭建2.2、settexture命令2.3、primary关键字2.4、double关键字2.5、previous关键字2.6、透明处理2.6.1、透明处理——Blending2.6.2、透明处理——Tags标签2.6.3、透明处理——texture命令2.6.4、透明处理——constantColor命令1、F...原创 2019-06-15 11:47:19 · 523 阅读 · 0 评论 -
Shader编程学习笔记(五)—— Fixed Function Shader 1
目录1、Fixed Function Shader涉及的知识点2、ShaderLab的基本结构3、示例介绍3.1、搭建场景3.2、物体着色3.3、漫反射3.4、环境光(diffuse)3.5、高光反射(specular)3.6、高光强度(shininess)3.7、自发光(emission)3、总结4、结束语1、Fixed Function Shader涉及的知识点 在学习固定管线着色器中...原创 2019-06-14 10:04:29 · 413 阅读 · 0 评论 -
Shader编程学习笔记(四)—— Unity Shader的组织形式(ShaderLab)
目录1、Unity Shader的形态2、ShaderLab基本结构3、总结1、Unity Shader的形态 Unity官方手册上讲Unity Shader有三种不同的编写方案,这三种编写方案分别是surface shaders、vertex and fragment shaders和fixed function shaders。 从前面几篇笔记中可以了解到,可编程图形管线中能够编写sh...原创 2019-06-12 11:29:27 · 368 阅读 · 0 评论 -
Shader编程学习笔记(三)—— 三大主流编程语言 HLSL/GLSL/Cg
目录1、Shader Language2、OpenGL简介3、DirectX简介4、Cg5、总结1、Shader Language Shader Language的发展方向是设计出在便携性方面可以和C++、Java等相比的高级语言,“赋予程序员灵活而方便的编程方式”,并“尽可能的控制渲染过程”同时“利用图形硬件的并行性,提高算法效率”。 Shader Language目前主要有3种语言...原创 2019-06-12 11:29:16 · 921 阅读 · 0 评论 -
Shader编程学习笔记(二)—— Shader和渲染管线
目录1、什么是Shader2、什么是渲染管线3、Shader和材质、贴图的关系4、总结1、什么是Shader Shader,中文翻译即着色器,是一种较为短小的程序片段,用于告诉图形硬件如何计算和输出图像,过去由汇编语言来编写,现在也可以使用高级语言来编写。一句话概括:Shader是可编程图形管线的算法片段。 它主要分为两类:Vertex Shader和Fragment Shader。...原创 2019-06-12 11:28:58 · 562 阅读 · 0 评论 -
Shader编程学习笔记(一)—— 图形硬件简史与可编程管线
目录1、图形处理器(GPU)简史1.1、GPU发展简史1.2、GPU的优越性1.3、GPU的缺陷2、GPU的更多应用3、总结1、图形处理器(GPU)简史1.1、GPU发展简史 GPU英文全称Graphic Processing Unit,中文翻译为“图形处理器”,在现代计算机系统中的作用变得越来越重要。 20世纪六、七十年代,受硬件条件的限制,图形显示器只是计算机输出的一种工具。限于...原创 2019-06-12 11:28:39 · 423 阅读 · 0 评论