Unity中的内置CgInclude文件

作者:追风剑情 发布于:2016-2-28 17:09 分类:Shader

你可以在Unity安装目录Editor/Data/CGIncludes/下找到内置的CgInclude文件。 在着色器对物体的渲染过程中它们各司其职,有些是处理阴影和光照的,有些是处理辅助函数的,有些是管理平台依赖关系的。 你可以访问http://docs.unity3d.com/Manual/SL-BuiltinIncludes.html来查找相关信息。 示例...

阅读全文>>

标签: Shader

评论(0) 浏览(3876)

动态更改Shader属性值

作者:追风剑情 发布于:2016-2-15 17:36 分类:Shader

一、创建脚本 using UnityEngine; using System.Collections; public class ProceduralMaterialTest : MonoBehaviour { public Color mainColor; void Start () { renderer.materials[...

阅读全文>>

标签: Shader

评论(0) 浏览(5513)

自定义光照模型

作者:追风剑情 发布于:2016-1-17 18:31 分类:Shader

一、创建Shader Shader "Custom/BlinnPhong" { Properties { _MainTex ("Base (RGB)", 2D) = "white" {} _MainTint ("Diffuse Tint", Color) = (1,1,1,1)//色调 _SpecularColor ("Specular Color", Color)...

阅读全文>>

标签: Shader

评论(0) 浏览(3471)

动态创建纹理贴图

作者:追风剑情 发布于:2016-1-9 12:03 分类:Shader

using UnityEngine; using System.Collections; public class GenerateTexture : MonoBehaviour { public int widthHeight = 512; public Texture2D generatedTexture; private Material currentMater...

阅读全文>>

标签: Shader

评论(0) 浏览(3641)

色阶

作者:追风剑情 发布于:2016-1-3 16:08 分类:Shader

色阶Shader Shader "Custom/LevelsShader" { Properties { _MainTex ("Base (RGB)", 2D) = "white" {} _inBlack ("Input Black", Range(0, 255)) = 0 _inGamma ("Input Gamma", Range(0, 255)) = 1.61...

阅读全文>>

标签: Shader

评论(0) 浏览(3648)

Shader——创建Phong高光类型

作者:追风剑情 发布于:2015-9-19 19:28 分类:Shader

      Phong高光模型是最基础且表现最友好的调光类型。它会计算出光在物体表面的反射方向与观察者视线方向之间的对比结果。它是一种非常常见的调光模型,从游戏到电影都有诸多应用。虽然在镜面反射的精确建模上它并不是最接近现实的,但在大多数情况下它都显得极为逼真。另外,如果你的观察对象是远离相机的而且不需要对高光进行精确计算的时候,Phong高光模型是表现着色器高光效果...

阅读全文>>

标签: Shader

评论(0) 浏览(4564)

Shader——地形纹理混合

作者:追风剑情 发布于:2015-9-15 20:51 分类:Shader

函数 功能描述 lerp(a,b,f) 涉及线性插值(1-f)*a+b*f,在这里,a和b可以匹配为一个矢量或标题类型,f可以是一个标量或者与a、b同类型的矢量。 一、创建shader、material、Plane ...

阅读全文>>

标签: Shader

评论(0) 浏览(6372)

Shader——法线贴图

作者:追风剑情 发布于:2015-9-9 21:59 分类:Shader

     在当今的游戏开发可编程管线中,我们最常使用的一种贴图方式就是法线贴图。使用法线贴图我们可以在低分辨率的模型上实现一种模拟高分辨率效果。因为不同于对每个顶点(逐顶点级)进行光照计算,我们是将法线贴图中的各像素点作为模型的法线,这样我们的光照呈现高分辨率的效果,同时模型保持低多边形数。      在三维计算机图形学中,法...

阅读全文>>

标签: Shader

评论(0) 浏览(4525)

Shader——Unity内置的高光模型BlinnPhong

作者:追风剑情 发布于:2015-9-8 21:22 分类:Shader

一、创建Shader Shader "Custom/ShaderBlinnPhong" { Properties { _MainTex ("Base (RGB)", 2D) = "white" {} _MainTint ("Diffuse Tint", Color) = (1,1,1,1) _SpecColor ("Specular Color", Color) =...

阅读全文>>

标签: Shader

评论(0) 浏览(5478)

Shader——精灵表单动画

作者:追风剑情 发布于:2015-9-6 20:56 分类:Shader

一、准备一张精灵表单图片 二、创建shader Shader "Custom/SpriteSheet" { Properties { _MainTex ("Base (RGB)", 2D) = "white" {} _TexWidth ("Sheet Width", float) = 0.0 _CellAmount ("Cell...

阅读全文>>

标签: Shader

评论(0) 浏览(5222)

Shader——通过修改UV坐标实现纹理贴图的滚动

作者:追风剑情 发布于:2015-9-5 12:05 分类:Shader

Shader "Custom/UVMove" { Properties { _MainTint ("Diffuse Tint", Color) = (1,1,1,1) _MainTex ("Base (RGB)", 2D) = "white" {} _ScrollXSpeed ("X Scroll Speed", Range(0, 10)) = 2 _ScrollYSp...

阅读全文>>

标签: Shader

评论(0) 浏览(7171)

Shader——Alpha裁剪

作者:追风剑情 发布于:2015-8-30 11:26 分类:Shader

如果你的画面性能存在问题,使用这种类型的透明度是很有利的,因为处理半透明着色器的混合过程比裁剪透明消耗更大。但是在手机设备正好相反,因为检测贴图中的每一个像素对于手机那点可怜的GPU来说消耗太大。所以,如果你使用Unity3D来制作手机应用,记住要使用半透明技术,慎用裁剪透明技术。 Shader "Custom/LambertAlpha" { Properties { _Mai...

阅读全文>>

标签: Shader

评论(0) 浏览(4432)

使用alpha参数创建透明效果

作者:追风剑情 发布于:2015-8-27 23:10 分类:Shader

一、准备一张黑白图片512x512像素 一、创建LambertAlpha.shader和LambertAlpha.mat Shader "Custom/LambertAlpha" { Properties { _MainTex ("Base (RGB)", 2D) = "white" {} _TransVal ("Transparency Value", Ra...

阅读全文>>

标签: Shader

评论(0) 浏览(2866)

创建自定义漫反射光照模型

作者:追风剑情 发布于:2015-6-27 12:59 分类:Shader

漫反射: 投射在粗糙表面上的光向各个方向反射的现象。 镜面反射: 物体的反射面是光滑的,光线平行反射,如镜子,平静的水面等。 //一个漫反射Shader Shader "Custom/BasicDiffuse2" { Properties { _EmissiveColor ("Emissive Color", Color) = (1, 1, 1, 1) _A...

阅读全文>>

标签: Shader

评论(0) 浏览(4900)

在表面着色器中使用属性

作者:追风剑情 发布于:2015-6-26 21:45 分类:Shader

//一个漫反射Shader Shader "Custom/BasicDiffuse1" { Properties { _EmissiveColor ("Emissive Color", Color) = (1, 1, 1, 1) _AmbientColor ("Ambient Color", Color) = (1, 1, 1, 1) _MySliderValue ("...

阅读全文>>

标签: Shader

评论(0) 浏览(3693)

表面着色器的属性类型

作者:追风剑情 发布于:2015-6-25 22:02 分类:Shader

https://docs.unity3d.com/Manual/SL-Properties.html Shader "Custom/BasicDiffuse" { //http://docs.unity3d.com/Manual/SL-Properties.html Properties { //变量名 ("GUI Inspector面板上显示的名称", 变量类型) = 默认...

阅读全文>>

标签: Shader

评论(0) 浏览(3589)

Lighting Model函数

作者:追风剑情 发布于:2014-7-28 22:38 分类:Shader

Shader "Custom/LightingMyForwardLit" { Properties { _MainTex ("Base (RGB)", 2D) = "white" {} } SubShader { Tags { "RenderType"="Opaque" } LOD 200 //.1 Pass { Tags {"LightMode"...

阅读全文>>

标签: Shader

评论(0) 浏览(3080)

Surface Shader和Deferred渲染路径

作者:追风剑情 发布于:2014-7-26 11:48 分类:Shader

实验目的:在Deferred渲染路径下ForwardBass是否会被执行? Shader "Custom/noDeferredSurf_1" { Properties { _MainTex ("Base (RGB)", 2D) = "white" {} } SubShader { Tags { "RenderType"="Opaque" } LOD 200 ...

阅读全文>>

标签: Shader

评论(0) 浏览(3755)

exclude_path:prepass

作者:追风剑情 发布于:2014-7-24 20:59 分类:Shader

Shader "Custom/ExcludePathPrepass" { Properties { _MainTex ("Base (RGB)", 2D) = "white" {} } SubShader { Tags { "RenderType"="Opaque" } LOD 200 CGPROGRAM //exclude_path:prepas...

阅读全文>>

标签: Shader

评论(0) 浏览(6315)

漫反射和Lambert

作者:追风剑情 发布于:2014-7-19 23:43 分类:Shader

一、创建一个Cube和一个Directional light,并把光源颜色调成蓝色。 二、创建漫反射Shader Shader "Custom/Shader_Lambert" { Properties { _MainTex("MainTex",2D)="white"{} } SubShader { pass{ Tags{"LightMode"="...

阅读全文>>

标签: Lambert

评论(0) 浏览(13580)

ColorMaterial

作者:追风剑情 发布于:2014-7-17 0:54 分类:Shader

使用顶点色 ColorMaterial也可以配合Emission,从而使用顶点色作为自发光的色彩。 Shader "Custom/ColorMaterial" { Properties { _Color ("Main Color", Color) = (1, 1, 1, 1) } SubShader { Tags { "RenderType"="Opa...

阅读全文>>

标签: ColorMaterial

评论(0) 浏览(3852)

使用multi_compile编译Shader的多个版本

作者:追风剑情 发布于:2014-7-11 20:24 分类:Shader

一、新建一个Shader和一个Material Shader "Custom/Multi_Compile" { SubShader { Pass { CGPROGRAM #pragma vertex vert #pragma fragment frag #pragma multi_compile MY_multi_1 MY_multi_2 //告诉Uni...

阅读全文>>

标签: multi_compile

评论(0) 浏览(37036)

Powered by emlog  蜀ICP备18021003号-1   sitemap

川公网安备 51019002001593号