
Shader
WarrenMondeville
苦逼码农
展开
-
Shader自学笔记 3.4.1 shader实现photoshop 中颜色混合模式
photoshop中的功能其实是封装了图形学算法,所以理论上其中的功能都可以用unity shader实现,下面模拟一下photoshop颜色混合模式中著名的加色模式和减色模式,也就是模拟自发光物体显像原理和反射光显像原理。 下面是一些常见混合模式计算公式: 上面的计算Unity已经封装,但是看看计算方法更有助于理解。Shader "Unity Shaders Book/Chapter 8/原创 2017-01-21 04:24:32 · 5297 阅读 · 2 评论 -
Shader自学笔记 3.3.2 采样遮罩纹理 使高光部分更加柔和
// Upgrade NOTE: replaced '_Object2World' with 'unity_ObjectToWorld'Shader "Custom/texture/test4" {// 定义纹理属性 增加法线纹理 Properties { _Color ("Color", Color) = (1,1,1,1) _MainTex ("Main原创 2017-01-17 01:50:40 · 1138 阅读 · 0 评论 -
Shader自学笔记 3.3.1 采样渐变纹理应用于BlinnPhong光照模型
Shader "Custom/texture/test1" {// 定义纹理属性 Properties { _Color ("Color", Color) = (1,1,1,1) _MainTex ("Main Tex", 2D) = "white" {} _Specular("Specular",Color)=(1,1,1)原创 2017-01-17 01:12:50 · 756 阅读 · 0 评论 -
Shader自学笔记 3.2.2用世界空间计算法线纹理
// Upgrade NOTE: replaced '_Object2World' with 'unity_ObjectToWorld'Shader "Custom/texture/test3" {// 定义纹理属性 增加法线纹理 Properties { _Color ("Color", Color) = (1,1,1,1) _MainTex ("Main原创 2017-01-16 04:03:48 · 909 阅读 · 1 评论 -
Shader自学笔记 3.2.1 用切线空间计算法线纹理
// Upgrade NOTE: replaced '_Object2World' with 'unity_ObjectToWorld'Shader "Custom/texture/test2" {// 定义纹理属性 增加法线纹理 Properties { _Color ("Color", Color) = (1,1,1,1) _MainTex ("Main原创 2017-01-16 03:31:01 · 1681 阅读 · 0 评论 -
Shader自学笔记 3.1.1 采样纹理加入到光照模型中
Shader "Custom/texture/test1" {// 定义纹理属性 Properties { _Color ("Color", Color) = (1,1,1,1) _MainTex ("Main Tex", 2D) = "white" {} _Specular("Specular",Color)=(1,1,1)原创 2017-01-16 01:46:15 · 417 阅读 · 0 评论 -
Shader自学笔记 2.2.3 BlinnPhong光照模型
Shader "Custom/two/LightModel6" { Properties { _Diffuse ("Diffuse", Color) = (1,1,1,1) _Specular("Specular",Color)=(1,1,1,1) _Gloss("Gloss",Range(8.0,256))=20 } SubSha原创 2017-01-15 07:35:30 · 497 阅读 · 0 评论 -
Shader自学笔记 2.2.2 逐像素高光反射光照模型
Shader "Custom/two/LightModel5" { Properties { _Diffuse ("Diffuse", Color) = (1,1,1,1) _Specular("Specular",Color)=(1,1,1,1) _Gloss("Gloss",Range(8.0,256))=20 } SubSha原创 2017-01-15 07:18:43 · 529 阅读 · 0 评论 -
Shader自学笔记 2.2.1 逐顶点高光反射光照模型
Shader "Custom/two/LightModel4" { Properties { _Diffuse ("Diffuse", Color) = (1,1,1,1) _Specular("Specular",Color)=(1,1,1,1) _Gloss("Gloss",Range(8.0,256))=20 } SubSha原创 2017-01-15 06:51:06 · 630 阅读 · 0 评论 -
Shader自学笔记 2.1.3 半兰伯特光照模型实现
// Upgrade NOTE: replaced '_World2Object' with 'unity_WorldToObject'// Upgrade NOTE: replaced '_World2Object' with 'unity_WorldToObject'Shader "Custom/two/LightModel" { Properties {// 定义Color类型属性原创 2017-01-15 05:50:42 · 843 阅读 · 0 评论 -
Shader自学笔记 2.1.2 逐像素漫反射光照模型实现
// Upgrade NOTE: replaced '_World2Object' with 'unity_WorldToObject'// Upgrade NOTE: replaced '_World2Object' with 'unity_WorldToObject'Shader "Custom/two/LightModel" { Properties {// 定义Color类型属性原创 2017-01-15 05:36:22 · 505 阅读 · 0 评论 -
Shader自学笔记 2.1.1 逐顶点漫反射光照模型实现
Shader "Custom/two/LightModel1" { Properties {// 定义Color类型属性 _Diffuse ("Diffuse", Color) = (1,1,1,1) } SubShader { Pass{ Tags{"LightMode"="ForwardBase"} CGPROGRAM原创 2017-01-15 05:09:46 · 513 阅读 · 0 评论 -
Shader自学笔记 1.3 使用属性控制渲染效果
Shader "Custom/one/simple shader" { Properties{// 声明Color属性 _Color("Color",Color)=(1.0,1.0,1.0,1.0) } SubShader { pass{ CGPROGRAM //定义顶点函数 #pragma verte原创 2017-01-15 02:49:06 · 543 阅读 · 0 评论 -
Shader自学笔记1.2 结构体作为函数的参数和返回值
Shader "Custom/one/simple shader" { SubShader { pass{ CGPROGRAM //定义顶点函数 #pragma vertex vert //片元函数 #pragma fragment frag// 使用结构体来定义顶点着色器的输入原创 2017-01-15 02:30:32 · 864 阅读 · 0 评论 -
Shader自学笔记1.1 Hello Shader
对Shader一直比较感兴趣,开启学习,顺便把学习过程在此记录,程序猿在开启任何新语言的学习都会Say hello,好吧,今天表示正式和Shader问好 Hello Shader!Shader "Custom/one/simple shader" { SubShader { pass{ CGPROGRAM //定义顶点函数 #pr原创 2017-01-15 01:34:22 · 578 阅读 · 0 评论