![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
shader零基础到精通
文章平均质量分 75
OwenTA
专注TA的工作与学习
展开
-
shader学习过程1——图形硬件历史
最枯燥的东西,看了忘,忘了还不想看......了解一下吧。一、GPU发展简史 GPU英文全称Graphic Processing Unit,中文翻译为“图形处理器”,在现代计算机系统中的作用变得越来越重要。 20世纪六七十年代,人们只是从软件实现的角度考虑图形用户界面的规范问题,并没有GPU的概念。 20实际70年代末,GPU概念被提出,使用单片集...原创 2018-05-28 17:35:59 · 614 阅读 · 0 评论 -
Shader学习过程10——Cg函数
定制函数 函数的传参 函数的前向声明1.函数必须要在用之前声明void Func( ){ }void frag (inout float4 col:COLOR){ Func( );} 2.如果想把函数放在后面 需要提前声明void Func ();void frag (inout float4 col:COLOR){ Func...原创 2018-06-11 10:45:07 · 430 阅读 · 0 评论 -
Shader学习过程6——固定管线shader2
Shader "Custom/002"{ properties { //程序名 (“材质球选项显示名字”,类型)= 参数默认值 _Color("MainColor",Color) = (1,1,1,1) _Ambient("Ambient",Color) = (0.3,0.3,0.3,1) _Specular("Specular",color) = (1,1,1,1) _Shi...原创 2018-06-02 16:29:10 · 257 阅读 · 0 评论 -
Shader学习过程5——固定管线shader1
Fixe function shader : 固定功能的shader, 针对硬件能够执行的基本的命令进行编写的shader。这种shader功能有限,但是速度是最快的,可以在所有的硬件平台上运行。 properties material lighting settexture passshaderlab结构sh...原创 2018-06-01 11:06:20 · 300 阅读 · 0 评论 -
Shader学习过程4——shader的组织形式
unity当中有3中不同的编写shader的方案 1、surface shaders 表面着色器 推荐使用。 可以完成百分之90的效果,是在vertex and fragment shaders上做了包装,方便大家使用。 2、vertex and fragment shaders 顶点 和 片段 着色器。一切皆有可能 3、fixed function ...原创 2018-05-31 20:27:53 · 321 阅读 · 0 评论 -
shader学习过程3——shader编程语言
shader language最初是由汇编语言编写,难度高,入门难。现在由三种高级语言可以编写。 一 、HLSL 基于DirectX的High Level Shading Language,简称HLSL。DirectX简称DX,微软的产品。优点:与硬件无关的软件接口,只支持windows平台。 二、GLSL 基于OpenGL的...原创 2018-05-31 15:51:57 · 4958 阅读 · 0 评论 -
Shader学习过程9——Cg入门
渲染管线 可以定制顶点和片段程序,目的是对颜色进行计算顶点和片段程序的输入输出常用语义: POSITION COLOR TEXCOORD向量: swizzle操作 xyzw rgba float4(xy,0,1) 可以随便颠倒顺序 宏定义:# define MACROFL float4(0,1,0,1); 宏使用:float4 a = MACROFL; ...原创 2018-06-07 10:52:50 · 922 阅读 · 0 评论 -
shade学习过程2——shader和渲染管线
一 shader shader,也叫着色器,是一种较为短小的程序片段,用于告诉图形硬件如何计算和输出图像,过去由汇编语言来编写,现在也可以使用高级语言来编写。一句话概括:Shader是可编程图形管线的算法片段。 分为两类:Vertex Shader 和Fragment Shader. 二 、渲染管线 渲染管线也称为渲染流...原创 2018-05-30 11:21:20 · 902 阅读 · 0 评论 -
Shader学习过程8——5.x以前的SurfaceShader
Shader "Custom/SurfaceShader" { Properties { _Color ("Color", Color) = (1,1,1,1) _MainTex ("Albedo (RGB)", 2D) = "white" {} } SubShader { Tags { "RenderType"="Opaque" } LOD 200原创 2018-06-04 14:53:24 · 217 阅读 · 0 评论 -
Shader学习过程7——SurfaceShader
SurfaceOutput:Input:Lighting:光照shadow:阴影 只是对顶点和片段着色器的一种包装。Shader "Custom/SurfaceShader" { Properties { _Color ("Color", Color) = (1,1,1,1) _MainTex ("Albedo (RGB)", 2D) = "white" {}...原创 2018-06-04 11:43:06 · 325 阅读 · 0 评论 -
Shader学习过程11——3D数学基础
一、坐标系(2D坐标系 3D坐标系)1、模型坐标系2、世界坐标系3、摄像机坐标系4、屏幕坐标系原创 2018-07-12 20:37:57 · 482 阅读 · 0 评论