Unity的渲染路径

作者:追风剑情 发布于:2016-9-27 16:13 分类:Shader

      在Unity里,渲染路径(Rendering Path)决定了光照是如何应用到Unity Shader中的。因此,如果要和光源打交道,我们需要为每个Pass指定它使用的渲染路径,只有这样我们才能在Unity Shader中访问到Unity为我们准备好的光照信息。       Unity...

阅读全文>>

标签: Shader

评论(0) 浏览(7217)

凹凸映射

作者:追风剑情 发布于:2016-9-23 22:04 分类:Shader

      纹理的另一种常见的应用就是凹凸映射(bump mapping)。凹凸映射的目的是使用一张纹理来修改模型表面的法线,以便为模型提供更多的细节。这种方法不会真的改变模型的顶点位置,只是让模型看起来好像是“凹凸不平”的,但可以从模型的轮廓处看出“破绽”。       有两种主要的方法可以用来进行凹凸映射:一种方...

阅读全文>>

标签: Shader

评论(0) 浏览(1083)

纹理的属性

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

纹理属性面板 Texture Type: 纹理类型。我们之所以要为导入的纹理选择合适的类型,是因为只有这样才能让Unity知道我们的意图,为Unity Shader传递正确的纹理,并在一些情况下可以让Unity对该纹理进行优化。 Alpha from Grayscale: 如果勾选了它,那么透明通道的值将会由每个像素的灰度值生成。 Wrap Mode...

阅读全文>>

标签: Shader

评论(0) 浏览(549)

利用Guid类生成唯一ID

作者:追风剑情 发布于:2016-9-22 19:41 分类:C#

using System; namespace TTest { class Program { static void Main(string[] args) { for (int i = 0; i < 100; i++) { Guid gui...

阅读全文>>

标签: C#

评论(0) 浏览(508)

单张纹理

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

使用一张纹理来代替物体的漫反射颜色。 Shader代码 Shader "Custom/Chapter7-SingleTexture" { Properties { _Color ("Color Tint", Color) = (1, 1, 1, 1) _MainTex ("Base (RGB)", 2D) = "white" {} _Specu...

阅读全文>>

标签: Shader

评论(0) 浏览(830)

Blinn-Phong光照模型

作者:追风剑情 发布于:2016-9-18 22:18 分类:Shader

       Blinn-Phong光照模型的高光反射部分看起来更大、更亮些。在实际渲染中,绝大多数情况我们都会选择Blinn-Phong光照模型。需要再次提醒的是,这两种光照模型都是经验模型,也就是说,我们不应该认为Blinn-Phong模型是对“正确的”Phong模型的近似。实际上,在一些情况下,Blinn-Phong模型更符合实验结果。 B...

阅读全文>>

标签: Shader

评论(0) 浏览(974)

高光反射光照模型——逐像素光照

作者:追风剑情 发布于:2016-9-14 22:33 分类:Shader

可以使用逐像素光照来得到更加平滑的高光效果。 Shader代码 Shader "Custom/Chapter6-SpecularPixelLevel" { Properties { //漫反射颜色 _Diffuse ("Diffuse", Color) = (1, 1, 1, 1) //高光反射系数,用于控制材质的高光反射颜色 _Specular ...

阅读全文>>

标签: Shader

评论(0) 浏览(732)

高光反射光照模型——逐顶点光照

作者:追风剑情 发布于:2016-9-13 23:33 分类:Shader

函数: reflect(i, n) 参数: i, 入射方向;n, 法线方向。可以是float、float2、float3等类型。 描述: 当给定入射方向i和法线方向n时,reflect函数可以返回反射方向。 Shader代码 Shader "Custom/Chapter6-SpecularVertexLevel" { Properties { //...

阅读全文>>

标签: Shader

评论(0) 浏览(1028)

Unity中的环境光和自发光

作者:追风剑情 发布于:2016-9-9 22:32 分类:Shader

在标准光照模型中,环境光和自发光的计算是最简单的。 在Unity5中,场景中的环境光可以在Windows->Lighting->Ambient Source/Ambient Color/Ambient Intensity中控制。 在Unity4中,场景中的环境光可以在Edit->Render Settings中控制。 在Shad...

阅读全文>>

标签: Shader

评论(0) 浏览(9145)

漫反射——半兰伯特(Half Lambert)光照模型

作者:追风剑情 发布于:2016-9-9 22:16 分类:Shader

广义的半兰伯特光照模型公式: 绝大多数情况下,α和β的值均为0.5,即公式为: 半兰伯特Shader代码 Shader "Custom/Chapter6-HalfLambert" { Properties { _Diffuse ("Diffuse", Color) = (1, 1, 1, 1) } ...

阅读全文>>

标签: Shader

评论(0) 浏览(2394)

漫反射——逐像素光照

作者:追风剑情 发布于:2016-9-8 23:26 分类:Shader

      逐像素光照可以得到更加平滑的光照效果。但是,即便使用了逐像素漫反射光照,有一个问题仍然存在。在光照无法到达的区域,模型的外观通常是全黑的,没有任何明暗变化,这会使模型的背光区域看来就像一个平面一样,失去了模型细节表现。实际上我们可以通过添加环境光来得到非全黑的效果,但即便这样仍然无法解决背光面明暗一样的缺点。为此,有一种改善技术被提出来,这就是半兰伯特(H...

阅读全文>>

标签: Shader

评论(0) 浏览(698)

漫反射——逐顶点光照

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

兰伯特光照模型Shader代码之逐顶点光照 Shader "Custom/Chapter6-DiffuseVertexLevel" { Properties { _Diffuse ("Diffuse", Color) = (1, 1, 1, 1) } SubShader { pass{ Tags { "LightMode"="ForwardBase" } ...

阅读全文>>

标签: Shader

评论(0) 浏览(606)

总结

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

      虽然标准光照模型仅仅是一个经验模型,也就是说,它并不完全符合真实世界中的光照现象。但由于它的易用性、计算速度和得到的效果都比较好,因此仍然被广泛使用。而也是由于它的广泛使用性,这种标准光照模型有很多不同的叫法。例如,一些资料中称它为Phong光照模型,因为裴祥风(Bui Tuong Phong)首先提出了使用漫反射和高光反射的和来对反射光照进行建...

阅读全文>>

标签: Shader

评论(0) 浏览(481)

逐像素还是逐顶点

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

      前面,我们给出了基本光照模型使用的数学公式,那么我们在哪里计算这些光照模型呢?通常来讲,我们有两种选择:在片元着色器中计算,也被称为逐像素光照(per-pixel lighting);在顶点着色器中计算,也被称为逐顶点光照(per-vertex lighting)。       在逐像素光照中,我们会以每...

阅读全文>>

标签: Shader

评论(0) 浏览(1070)

高光反射

作者:追风剑情 发布于:2016-9-4 11:06 分类:Shader

这里的高光反射是一种经验模型,也就是说,它并不完全符合真实世界中的高光反射现象。它可用于计算那些沿着完全镜面反射方向被反射的光线,这可以让物体看起来是有光泽的,例如金属材质。 计算高光反射需要知道的信息比较多,如表面法线、视角方向、光源方向、反射方向等。我们假设这些矢量都是单位矢量。 在这四个矢量中,我们实际上只需要知道其中3个矢量即可,而第四个矢量——反射...

阅读全文>>

标签: Shader

评论(0) 浏览(713)

漫反射

作者:追风剑情 发布于:2016-9-4 10:35 分类:Shader

      漫反射光照是用于对那些被物体表面随机散射到各个方向的辐射度进行建模的。在漫反射中,视角的位置是不重要的,因为反射是完全随机的,因此可以认为在任何反射方向上的分布都是一样的。但是,入射光线的角度很重要。 漫反射光照符合兰伯特定律(Lambert's law):反射光线的强度与表面法线和光源方向之间夹角的余弦值成正比。因此,漫反射部分的计...

阅读全文>>

标签: Shader

评论(0) 浏览(518)

Powered by emlog  蜀ICP备18021003号   sitemap

川公网安备 51019002001593号