Unity
bill2ccssddnn
这个作者很懒,什么都没留下…
展开
-
Unity实时反射——AngryBots示例项目地面实时反射效果剖析
Angry Bots是Unity安装程序自带的开源示例项目。该示例项目虽然已经发布很久了,但是其很多设计和实现仍然具有参考价值。运行该项目仔细观察,可以发现其雨天地面效果是实时反射的。这里我们先阐明实时反射的原理,然后分析其绘制流程。构造反射相机视图矩阵反射相机的视图矩阵由反射矩阵变换得到,反射矩阵由反射平面确定,下面列出反射矩阵推导过程。反射位置 反射方向 M1*M2即得到示例代码所示的反射矩原创 2016-03-21 23:20:04 · 7623 阅读 · 0 评论 -
基于物理渲染的理论基础
作者 Jeff Russell基于物理的渲染(PBR)是近来实时渲染领域的趋势。PBR经常被提及,同时它的准确定义也经常被混淆。这里我们将来解释什么是PBR,它与之前的渲染模式区别在哪里?这篇文档的目标读者是非技术人员(主要是美术人员),文档中将不会出现任何数学公式或代码。 基于物理的着色(PBS)跟之前着色方式最大的区别在于PBS是建立在对光和物体表面行为准确推论的基础上的。当前硬件着色性能已经翻译 2016-05-29 19:07:52 · 2028 阅读 · 0 评论 -
HDR in OpenGL
HDRFramebuffer中的亮度和颜色值的范围被限制在0.0和1.0之间。我们在场景中设置光和颜色的时,也只能这个范围取值。这么做大部分情况下是OK的,结果也还可以,但是当场景中有一块多光源,亮度总合超过1.0的区域时,结果是什么样的?答案是所有的亮度或颜色值超过1.0的片段被直接截断到1.0。这并是我们想要的结果! 由于大量的片段亮度或颜色被直接截断到1.0,所以这些被截断的片段存的值都是白翻译 2016-05-09 14:35:36 · 2772 阅读 · 0 评论 -
模型勾边outline的实现与改进
简述在卡通渲染中一般会涉及到模型勾边。效率最高的方式是在shader中去做。render to texture的实现方式这里不讨论。Shader勾边实现流程大致为:对模型进行2遍(2个pass)绘制,第一遍(勾边pass)在vertex shader中对模型沿顶点法线方向放大,fragment shader设置输出颜色为勾边颜色;第二遍正常绘制模型,除被放大的部分外,其余被覆盖,这样就有了勾边的效果原创 2016-08-08 08:52:30 · 2243 阅读 · 0 评论 -
Normal Mapping
法线贴图技术的使用可以使得低面模型具有与高模接近的光照表现。这可极大的提高实时渲染的效率。下面的截图做了很好的对比: How it works模型的光照表现跟其表面的法线分布密切相关,一般参与逐像素光照计算的法线由模型顶点间的法线光栅化插值得到,可以想象由少量三角面构成的表面插值得到的法线会比较平均。而法线贴图技术就是在不增加模型面数,渲染时用贴图采样得到的法线代替插值得到的法线来参与光照计算。原创 2016-10-31 22:14:41 · 563 阅读 · 0 评论