wy小骑士

初学总结

Unity——射线检测

有方向,距离和层级的检测 void Start () { num = LayerMask.GetMask("Default"); } // Update is called once per frame void U...

2018-04-25 11:09:41

阅读数 351

评论数 0

Unity_Shader基础篇_4.2_Unity Shader入门精要

4.8 Unity Shader 的内置变量(数学篇) 使用unity写Shader的一个好处在于,它提供了很多内置的参数,这使得我们不再需要自己手动计算一些值。本节将给出Unity内置的用于空间变换和摄像机以及屏幕参数的内置变量。这些内置变量可以在UnityShadrVariables.cgi...

2018-04-19 09:28:26

阅读数 165

评论数 0

Unity_Shader基础篇_4.1_Unity Shader入门精要

4.6坐标空间 4.6.1 为什么要使用这么多不同的坐标空间 因为一些概念只有在特定的坐标空间下才有意义,才更容易理解。 4.6.2 坐标空间的变换 关于定义一个坐标空间,必须指明其原点位置和3个坐标轴的方向。而这些数值实际上是相对于另一个坐标空间的(所有的都是相对的)。也就是说,坐标空间...

2018-04-18 18:02:29

阅读数 139

评论数 0

Unity_Shader基础篇_4_Unity Shader入门精要

第4章 学习Shader所需的数学基础 计算机图形学之所以深奥难懂,很大原因是在于它是建立在虚拟世界上的数学模型。数学渗透到图形学的方方面面,当然也包括Shader。在学习Shader的过程中,我们最常使用的就是矢量和矩阵(即数学的分支之一——线性代数)。 4.2 笛卡尔坐标系 在游戏制作中...

2018-04-16 18:17:44

阅读数 327

评论数 0

Unity_Shader扩展篇_19-20_Unity Shader入门精要

Unity 5相对于之前的版本来说,在shader方面做了许多重要的更新。例如,如果我们直接把在unity4中使用的一些shader源代码粘贴到Unity5中,往往会发现和unity4中得到的渲染结果不尽相同,甚至还会报错。 19.1 场景“更亮了” Unity5之前的Shader源码往往有下...

2018-04-13 16:47:30

阅读数 133

评论数 0

Unity_Shader扩展篇_18_Unity Shader入门精要

第18章 基于物理的渲染 在之前的章节中,我们学习了Lambert光照模型、Phong光照模型和Blinn-Phong光照模型。但这些光照模型的缺点在于,它们都是经验模型。如果我们需要渲染更高质量的画面,这些经验模型就显得不再能满足我们的要求了。 近年来,基于物理的渲染技术(Physical ...

2018-04-12 18:18:28

阅读数 200

评论数 0

Unity_Shader扩展篇_17_Unity Shader入门精要

第十七章 Unity的表面着色器探秘 * 表面着色器(Surface Shader)*实际上就是在顶点/片元着色器之上又添加了一层抽象。 17.1 表面着色器的一个例子 Shader "Unity Shaders Book/Chapter 17/Bumped Diffu...

2018-04-11 18:23:58

阅读数 205

评论数 0

Unity_Shader高级篇_16_Unity Shader入门精要_减少计算复杂度

16.8 减少计算复杂度 16.8.1 Shader的LOD技术 和16.5.2提到的模型的LOD技术类似,Shader的LOD技术可以控制使用的Shader等级。它的原理是,只有Shader的LOD值小于某个设定的值,这个Shader才会被使用,而使用了那些超过设定值的Shader的物体将不...

2018-04-10 15:37:14

阅读数 137

评论数 2

Unity_Shader高级篇_16_Unity Shader入门精要_节省带宽

16.7 节省带宽 大量使用未经压缩的纹理以及使用过大的分辨率都会造成由于带宽而引发的性能瓶颈。 16.7.1 减少纹理的大小 之前提过,使用纹理图集可以帮我们减少draw call的数目,而这些纹理的大小同样是一个需要考虑的问题。需要注意的是,所有纹理的长宽比最好是正方形,而且长宽值最好...

2018-04-10 15:02:11

阅读数 210

评论数 0

Unity_Shader高级篇_16_Unity Shader入门精要_减少需要处理的片元数目

16.6 减少需要处理的片元数目 另一个造成GPU瓶颈的是需要处理过多的片元。这部分优化的重点在于减少overdraw。简单来说,overdraw指的就是同一个像素被绘制了多次。 Unity还提供了查看overdraw的视图,我们可以在Scene视图左上方的下拉菜单中选中Overdraw即可。...

2018-04-10 11:53:16

阅读数 135

评论数 0

Unity_Shader高级篇_16_Unity Shader入门精要_减少需要处理的顶点数目

16.5 减少需要处理的顶点数目 尽管draw call是一个重要的性能指标,但顶点数目同样有可能成为GPU的性能瓶颈。 16.5.1 优化几何体 3D游戏制作通常后是模型制作开始的。而在建模时,有一条规则我们需要记住:尽可能减少模型中三角面片的数目,一些对于模型没用影响、或是肉眼非常难察觉...

2018-04-09 18:02:57

阅读数 190

评论数 0

Unity_关于编辑器意外崩溃怎么办

如果编辑器意外崩溃了,但此时场景未保存,这是可以打开工程目录,找到Temp__Backupscenes文件下,可以看到有后缀为.cackup的文件,将该后缀修改为.unity拖拽到项目视图,即可还原编辑器崩溃前的场景。...

2018-04-08 18:33:45

阅读数 416

评论数 1

Unity_Shader高级篇_16_Unity Shader入门精要_减少draw call 数目

在Unity手册的iOS硬件指南(https://docs.unity3d.com/Manual/iphone-Hardware.html)中我们可以了解到iOS平台的硬件条件则相对统一。 影响性能的因素 (1)CPU:过多的draw cal。过多的Draw call。复杂的脚本或者模拟的任务...

2018-04-08 18:22:46

阅读数 107

评论数 0

Unity_Shader高级篇_15_Unity Shader入门精要_全局雾效

15.3 全局雾效 13.3中实现效果是一个基于高度的均匀雾效,即在同一个高度上,雾的浓度是相同的。然而,一些时候我们希望可以模拟一种不均匀的雾效,同时让雾不断飘动,看起来更加缥缈。 实现 (1)创建场景(Scene_15_3)。 (2)搭建场景。 (3)新建脚本(FogWithNois...

2018-04-04 17:45:58

阅读数 471

评论数 2

Unity_Shader高级篇_15_Unity Shader入门精要_水波效果

15.2 水波效果 在模拟实时水平的过程中,我们往往也会使用噪音纹理。此时,噪音纹理通常会用作一个高度图,以不断修改水面的法线方向。为了模拟水不断流动的效果,我们会使用和时间相关的变量来对噪声纹理进行采样,当得到法线信息后,再进行正常的反射+折射计算,得到最后的水面波动效果。 本节中,我们将会...

2018-04-04 16:42:14

阅读数 901

评论数 0

Unity_Shader高级篇_15_Unity Shader入门精要_消融效果

第15章 使用噪音 很多时候,向规则的事物里添加一些“杂乱无章”的效果往往会有意想不到的效果。而这些“杂乱无章”的效果来源就是噪音。在本章中,我们将会学习如何使用噪音来模拟各种看似神奇的特效。在15.1中,我们将使用一张噪音纹理来模拟火焰的消融效果。15.2节则把噪音应用在模拟水面的波动上,从而...

2018-04-03 18:04:09

阅读数 390

评论数 0

Unity_Shader高级篇_14.1_Unity Shader入门精要

14.2 素描风格的渲染 另一种非常流行的非真实感渲染时素描风格的渲染。微软研究院的Praun等人在2001年的SIGGRAPH上发表了一篇非常著名的论文(Rraun E,Hoppe H,Webb M, et al. Real-time hatching[C]//Proceedings of t...

2018-04-03 18:03:01

阅读数 139

评论数 0

Unity_Shader高级篇_14_Unity Shader入门精要

第14章 非真实感渲染 游戏渲染一般都是以照相写实主义(photorealism)作为主要目标,但也有许多游戏使用了非真实感渲染(Non-Photorealistic Rendering ,NPR)的方法来渲染游戏画面。非真实感渲染的一个主要目标是,使用一些渲染方法使得画面达到和某些特殊的绘画风...

2018-04-02 18:08:52

阅读数 190

评论数 0

Unity_Shader高级篇_13.1_Unity Shader入门精要

13.4 再谈边缘检测 在12.3中,我们曾使用Sobel算子对屏幕图像进行边缘测试,实现描边的效果。但是,这种直接利用颜色信息进行边缘检测的方法会产生很对我们不希望得到的边缘线,如图13.8所示。 可以看出,物体的纹理、阴影等位置也被描上黑边,而这往往不是我们希望看到的。在本节中,我们将学习...

2018-04-02 17:25:21

阅读数 126

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭