对于游戏场景的制作,完成模型和贴图的制作是一步,之后合理的使用光照,后处理,可以使游戏场景产生高级感。

光照影响有多大看看下面渲染对比图。

酒吧外部

素颜照

酒吧内部

素颜照

光照的使用

室外,开放的空间

在开阔的地方,光线在一次放射之后就会向周围逸散开,在附近的物体上产生的光照效果很弱,而且这种效果很均匀的光,这种效果很像环境光,另一方面,因为一般外部的场景面积都比较的大,产生贴图的话会消耗很多内存,综合这两点考虑,我在开阔的场景中使用,无影区域光,点光源,锥光源。

在场景中打光的时候,可分为两类,有光源的光(后称有源光),无光源的光(后称无源光)。

有源光很好处理,比如路灯的光,是一束直接的光,这是应该使用带有阴影的实时光,因为玩家会觉得如果路灯下没有阴影会很奇怪,但是阴影计算开销很大,不要使用大量的阴影光,可以使用一个主方向光带阴影,使用有赢点光源,锥光源是一定要限制他的照亮范围。

无源光用于烘托气氛,比如你想表示某个区域很诡异,你可以在在空气中加入一点紫色的光,或者你想创造一个魔法森林,你会加上许多无法解释的光线。

室外用到BakeGI的地方也是有的,比如大量的霓虹灯照射在周围建筑物体的光,这一类光的特点:照亮静态物体,数量多。所以使用了BakeGI。

对一个网格使用Emission贴图,它就变成了一个自定义形状的光源,但是注意,它不是像点光源,锥光源那样的光源,而是一个只用于照亮RealtimeGI或者BakeGI的lightmap光源,在不烘焙情况下他不会照亮任何物体。

室内,封闭的空间

与开阔的空间不同,光线在封闭的空间内,无法向四周逃逸,会在封闭的面之间反弹碰撞,产生丰富的效果。所以非常推荐在室内等封闭的空间内使用RealtimeGI,或者BakeGI,有大量的动态光源的时候使用RealtimeGI,有大量静态光源的时候使用BakeGI,BakeGI非常经济,再多的光源都不会产生更多额外的开销,所以尽可能使用静态的光。

酒吧内部的光线全部是BakeGI没有实时光,如果要照亮动态物体就需要光照探针。酒吧内光的来源有三个都是有源光,一,舞台上方的粉色照明(区域光),二,柜台蓝色的发光墙壁(区域光),三,墙壁贴纸上的发光条纹,之前提到五个贴上发光材质可以当自定义光源,不一定一整个物体发光,只要这个贴图有一部分发光,都可以当成光源,墙壁上黄色的灯光渐变就是贴图中发黄光的地方照亮的。

墙壁上的黄色发光贴图,可以充当光源

后处理

在一个赛博朋克的场景里,昏暗的巷道和霓虹Neon是必不可少的,亮处与暗处的对比强烈。

为了增强这种对比,有几种特效可以使用

Bloom

晕影,发光物体的光扩散。

Flare

光的芒刺,因为人眼和相机快门都不是完美圆形,而是类圆多边形,直视光源的时候产生衍射,就会看到光芒。现实世界的光芒都是向四周放射的星星形状,这种贯穿屏幕的芒刺只存在于虚拟世界,效果炫酷夸张,但是并不真实的特效

注意那个车灯是通过屏幕特效产生的芒刺

战地三这夸张的Flare,初看炫酷极了,很像迈克尔贝特别喜欢在自己的电影里加入这种晃瞎眼的莫名其妙的蓝光,那个年代镜头特效在游戏里边还是新鲜玩意,或许是战地三为了追求大片里边的视觉效果,也可能是为了遮掩寒霜引擎表现的寡淡色彩,加入大量的夸张的贯穿屏幕的芒刺,但是现在没有游戏会加入这么夸张的特效了,就像以前人们觉得网络游戏里边的金色闪光梦幻大翅膀炫酷极了,现在看就LOW爆了。

画面上的亮点就是DirtLens

Dirt Lens

镜头脏点,光线因为相机镜头上的灰尘散射,产生的光斑,梦幻的效果,但是不要太过了

添加细节(下次写)

为门帘添加布料系统<布料系统>

摇晃的监视器,飞行的监视器<动画>

随风摇摆的小广告,风吹起来的废纸屑<物理模拟>

汽车驶过吹起的气流<粒子系统>

你的评论将是对我极大的鼓励!

Unity中光照的实践与总结相关推荐

  1. Unity Shader入门精要学习笔记 - 第6章 开始 Unity 中的基础光照

    转自冯乐乐的<Unity Shader入门精要> 通常来讲,我们要模拟真实的光照环境来生成一张图像,需要考虑3种物理现象. 首先,光线从光源中被发射出来. 然后,光线和场景中的一些物体相交 ...

  2. unity入门精要之第6 章 Unity 中的基础光照--环境光和自发光

    Unity系列文章目录 文章目录 Unity系列文章目录 前言 一.Unity 中的环境光和自发光 二.在Unity Shader 中实现漫反射光照模型 参考 前言 但这种模型有很多局限性.首先,有很 ...

  3. unity入门精要之第6 章 Unity 中的基础光照---实现高光反射光照模型

    Unity系列文章目录 文章目录 Unity系列文章目录 前言 参考 前言 在6.2.4 节中,我们给出了基本光照模型中高光反射部分的计算公式: 从公式可以看出,要计算高光反射需要知道4 个参数:入射 ...

  4. 浅析Unity中的Enlighten与混合光照

    0x00 前言 在Unity的5.6版本之前的5.x中,主要使用了Geomerics公司的Enlighten[1]来提供实时全局照明以及烘焙全局照明,在5.6之后Unity引入了新的Lightmapp ...

  5. [专栏精选]Unity中的Git最佳实践

    本文节选自洪流学堂公众号技术专栏<大话Unity2018>,未经允许不可转载. 洪流学堂公众号回复专栏,查看更多专栏文章. 小新:"我昨天尝试了一下使用Git来管理Unity项目 ...

  6. Unity中的混合光照

    Unity中的混合光照 Baked Indirect Shadowmask Distance Shadowmask Subtractive Reference Unity支持三种混合光照模式,分别是B ...

  7. Unity 中的基础光照

    通常来讲,我们要模拟真实的光照环境来生成一张图像,需要考虑三种物理现象. 首先,光线从光源中被发射出来. 然后,光线和场景中的一些物体相交:一些光被物体吸收了,而另一些光被散射到其他方向. 最后,摄像 ...

  8. Unity中调整光照特效的7个技巧

    适当为游戏场景添加光照效果,能够有效增强场景氛围,让玩家体验更佳.今天将为大家分享在Unity中调整光照特效的7个技巧,让整个游戏场景氛围更引人入胜. 1.使用线性颜色空间 在为场景添加光照效果之前, ...

  9. Unity中的部分环境光照设置以及简单雾的效果

    Unity中的部分环境光照设置以及简单雾的效果 环境光照 为什么要使用环境光照 效果实现 灯光渲染窗口 第一部分 第二部分: 环境光照 雾 结尾 先发一张最近测试出的demo图片,这个项目是开启了UR ...

  10. 在自定义Shader中应用Unity全局光照

    目录 从一个简单的Diffuse Shader开始 接受间接光照--使用内置函数 贡献间接光照--meta pass 结果 上一篇是关于Unity全局光照系统的介绍和使用方法,但是用于测试效果的场景物 ...

最新文章

  1. 前端学习(507):垂直居中的第二种方式的优缺点
  2. RelativeLayout相对布局
  3. html阶梯统计,html,_有什么图表可以显示阶梯费率,html - phpStudy
  4. Oracle 11g 的官方支持周期和时限
  5. Java基础---Java---基础加强---内省的简单运用、注解的定义与反射调用、 自定义注解及其应用、泛型及泛型的高级应用、泛型集合的综合
  6. NETBEAN 启动报错 CANNOT LOCATE JAVA INSTALLATION IN SPECIFIED JDKHOME的解决办法
  7. 3D打印机 G代码解释
  8. 网易校招笔试第三题匈牙利算法
  9. camille mumu 模拟器 frida 踩坑记录
  10. java架构师线下培训,万分膜拜!
  11. 台式计算机启用时间查看,告诉你WIN7怎么查看电脑本次开机时间
  12. 大学计算机专业那些课 --左飞
  13. 长大后的我们为何贪恋年少?
  14. Python笔记 · Python语言的“动态性”
  15. China‘s Housing Market Economy Is Crumbling
  16. Unity尝试从零创建一个敌人
  17. 疫情期间 旅行社如何快速采集旅客信息 旅行社护照录入系统
  18. 树莓派:获取传感器数据
  19. 胡适致毕业生:在不健全的中国,如何不堕落?
  20. mysql 增加合计行_SQL:给查询添加一个合计行

热门文章

  1. 【NAND文件系统】UBI介绍
  2. IP地址、子网掩码、网络地址之间相关的计算
  3. Quartus 实现D触发器及时序仿真
  4. 数据结构之算法——递归
  5. Git学习8 Git分支操作
  6. 净资产收益率与市盈率的关系
  7. iOS12系统这5个隐藏小技巧!你一定要知道,好用到停不下来!
  8. cpu load是什么?
  9. 开源人脸识别项目 —— face_recognition
  10. 电子通讯录(文件保存版)