博客专栏  >  编程语言   >  untiy ShaderLab学习之路

untiy ShaderLab学习之路

Shader 即着色器,是一款运行在 GPU 上的程序,用来对三维物体进行着色处理,光与影的计算, 纹理颜色的呈现等,从而将游戏引擎中 一个个作为抽象的几何数据存在的模型、场景和特效,以和 真实世界类似的光与影的形式呈现于玩家的眼中。

关注
11 已关注
39篇博文
  • untiy 3d ShaderLab_第9章_3_球体阴影(三) 点光源对球体的投影

    如图所示,淡黄色的是阴影的淡入淡出,淡紫色的是点光源的阴影。在接受阴影的Shader 中计算了平行光和点光源两种阴影

    2016-10-26 11:25
    536
  • untiy 3d ShaderLab_第9章_2_球体阴影(二) 阴影的淡入/淡出

    在上一节的例子中,我们仅仅判断了是否能看到光源,其实不仅仅能判断是否可以看到光源,当我们看不到光源时,还可以计算出此时点距离光亮地带的远近程度,等价于到阴影中心的远近程度,这样就可计算一个带浓淡变化的...

    2016-10-26 10:56
    470
  • untiy 3d ShaderLab_第9章_2_球体阴影(一) 平行光对球体的投影

    然后,当我们需要计算一个点是否在球体的投影区域时,我们需要知道这个点到灯光的方向,到球体中心的方向以及距离,然后根据这两个方向的夹角,通过相似三角形的计算,考察透过这个方向在球体的此半径内能不能看到光...

    2016-10-21 11:06
    666
  • untiy 3d ShaderLab_第9章_1_平面阴影(三) 点光源对平面的投影

    这个方法还有一个显而易见的问题,那就是物体本身是立体的,不是一个平面,因此这个计算前后的点的距离是包括物体本身厚度的,这个厚度就会表现在阴影上。要解决这个问题,我们可以先把物体变换到灯光空间,使用_W...

    2016-09-28 15:55
    710
  • untiy 3d ShaderLab_第9章_1_平面阴影(二) 点光源对平面的投影

    点光源也是类似的,对于通过使用WorldSpaceLightDir()方法来计算光源方向

    2016-09-28 15:23
    804
  • untiy 3d ShaderLab_第9章_1_平面阴影(一)

    在此Shader中,我们首先使用固定管线对物体做了一个简单的照明。在计算阴影的ForwardBase中,首先使用一个可以叠加阴影的混合模式,然后使用z偏移保证出来的阴影在接受平面之上。_World2G...

    2016-09-28 11:49
    654
  • untiy 3d ShaderLab_第8章_4_ 单光照贴图在Deferred 渲染路径下的实时阴影

    单光照贴图在Deferred 渲染路径下的实时阴影     另外,我们可以将相机的RenderingPath切换为Deferred模式,在这种模式里,可以尝试移动实时光源,你会发现,不论是静态的还是非...

    2016-06-24 15:17
    1278
  • 升级Unity5-----Unity5灯光烘焙与Unity4 灯光烘焙实际应用中的差别

    Skybox:会直接影响你的环境光 Ambient Source:环境源,这里选 的skybox Ambient Intensity: 环境光的强度值,也就是环境光的亮度值 Reflection So...

    2016-06-24 16:27
    3381
  • Unity_二维纹理 Texture 2D_4_总结细节

    Unity支持下面的文件格式:PSD, TIFF, JPG, TGA, PNG, GIF, BMP, IFF, PICT。应注意,Unity可以导入多层PSD和TIFF文件,在导入时,层将自动被塌陷,...

    2016-06-06 11:49
    1919
  • Unity_二维纹理 Texture 2D_3_按平台覆盖

    当你在不同的平台构建(游戏),你必须考虑为目标平台决定你的纹理,尺寸和质量。使用Unity3,你可以覆盖这些选项,并根据你要部署的平台指定具体的值。注意,当你构建项目时,如果你没有选择任何值覆盖,编辑...

    2016-06-06 11:04
    1609
  • Unity_二维纹理 Texture 2D_2_高级纹理

    Non Power of 2 不是2的幂:如果纹理大小不是2的幂,这将定义在导入时的缩放行为(更多信息请参阅下文纹理尺寸部分): None 无:纹理将被填充到下一个较大的2的幂大小以便与GUI...

    2016-06-06 10:26
    1996
  • Unity_二维纹理 Texture 2D_1_Properties 属性

    纹理使你的网格、粒子、和界面更生动!它们是你覆盖或环绕着对象的图片或影片文件。由于它们是如此的重要,它们有很多的属性。如果你是第一次阅读这一点,跳到细节,当你需要一个参考时返回到实际设置。 ...

    2016-06-05 15:16
    1047
  • Unity渲染路径 Rendering Paths_3_Vertex Lit 顶点光照

    顶点光照(Vertex Lit) 是最低保真度的光照、不支持实时阴影的渲染路径。最好是用于旧机器或受限制的移动平台上。1.顶点照明渲染路径通常在一个通道中渲染物体,所有光源的照明都是在物体的顶点上进行...

    2016-06-02 11:29
    2076
  • Unity渲染路径 Rendering Paths_2_Forward Rendering 正向渲染

    正向渲染一个基于着色器的渲染路径。它支持逐像素计算光照(包括法线贴图和灯光Cookies)和来自一个平行光的实时阴影。在默认设置中,少数最亮的灯光在逐像素计算光照模式下渲染。其余的灯光计算对象顶点的光...

    2016-06-02 11:41
    2636
  • Unity渲染路径 Rendering Paths_1_Deferred Lighting 延时光照

    延时光照是有着最高保真度的光照和阴影的渲染路径。如果你有很多实时灯光,最好是使用延时光照。它需要一定水平的硬件支持,仅在 Unity Pro可用,移动设备上不支持。 延迟光照是一种当前最...

    2016-06-02 11:18
    2718
  • Unity渲染路径 Rendering Paths介绍

    Unity支持不同的渲染路径。应具体取决于你的游戏内容和目标平台/硬件来选择使用哪一个。不同的渲染路径有不同的特点和性能特点,主要影响灯光和阴影。 项目所使用的渲染路径在Player S...

    2016-06-02 11:09
    1525
  • untiy 3d ShaderLab_第8章_3_ 单光贴图和Forward 渲染路径

    在单光照贴图的情况下,Camera的RenderingPath为VertexLit时,有一个不理想的地方就是被烘焙过的静态物体,默认的材质不会受到实时光照的影响。当然,可以通过提供自定义的材质改变这一...

    2016-06-01 21:14
    3568
  • untiy 3d ShaderLab_第8章_2_在效果和性能间进行权衡

    Resolution 分辨率: 每世界单位中光照图分辨率的大小。因此当设置分辨率为50的一个10单位乘以10单位的平面将产生一张500*500像素的光照贴图。 Scale In Lightmap 光照...

    2016-05-11 20:52
    3415
  • untiy 3d ShaderLab_第8章_ 基于光照贴图的烘焙照明

    和刚刚的Shader不同的是,此Shader多了一个LightMode为VertexLMRGBM的Pass,在这个Pass中,我们读取了Beast的烘焙结果unity_Lightmap,然后将其输出。...

    2016-05-10 20:08
    1948
  • untiy 3d ShaderLab_第7章_ Forward渲染路径_4_Forward渲染路径总结

    在ForwardBase的Pass内,_WorldSpaceLightPos0和_LightColor0只会含有第一个Pixel行光的有效组合。在没有Pixel平行光时,_WorIdSapceLigh...

    2016-05-10 14:10
    1032
img博客搬家
img撰写博客
img发布 Chat
img专家申请
img意见反馈
img返回顶部