[我给Unity官方视频教程做中文字幕]beginner Graphics – Lessons系列之灯光介绍Lights

上一篇分享了中文字幕的摄像机介绍Cameras后,本篇分享一下第2个已完工的视频,即《beginner Graphics – Lessons系列之灯光介绍Lights》。听译、时间轴、压制者均为本人。请勿将视频用于非法目的。

有需要本篇高清视频的同学麻烦支付100元并留下你的Email~

有视频有真相

视频中的重点

类似现实世界,Unity中用灯光照亮场景

没有灯光,场景中的物体在摄像机中是不可见的

宽泛的说,Unity中有两种灯光

动态(Dynimic)光和烘焙(Bake)光

动态光在游戏运行中是实时计算的

你只需在场景中添加灯光对象就可以了

烘培光是在线下(Off-line)计算并保存成纹理(Texture)的

这些灯光纹理被贴到烘培的物体上以提升性能

为了照亮场景,要使用灯光组件(light component)

和其它组件一样,灯光组件也要附加到游戏对象(Game Object)上

我们可以用这个游戏对象的Transform属性来移动灯光

灯光组件提供了4种灯光类型

点光(Point Light)

平行光(Directional Light)

聚光灯(Spot Light)

和只用于烘培的面光(Area Light)

不同类型的灯光对游戏的照明效果差异很大

点光就像一个小光球

点光根据其所在位置照射场景中的物体

对点光进行旋转是没有意义的

因为点光照射到各个方向的光是相同的

平行光就像太阳

平行光能够照射到场景中所有的物体

根据旋转角度进行照射

位置属性对平行光是没有意义的

聚光灯就像是手电筒

或者汽车的头灯

它根据其位置和旋转角度对一个圆锥体范围内的物体进行照射

所以聚光灯的位置和旋转角度属性都是有意义的

面光只用在烘培时

面光从平面的一侧向一个矩形范围内发射任意方向的光

除了这4种灯光外,还有另外两种光源

环境光(Ambient Light)和发光材质(Emissive Material)

环境光控制场景中的无方向全局光

环境光在动态光和烘培光中都发挥作用

如果想去掉环境光的影响

就把环境光的颜色设置为黑色(在RenderSettings里)

然后在场景中添加上文介绍的4种灯光

想用发光材质的话

只需给物体设置合适的自发光着色器(shader)

自发光材质只在烘培光中发挥作用

灯光有一些属性供你设置

灯光组件的"Range"属性决定了光线照射的距离远近

"Range"只对点光或聚光灯类型的灯光有意义

在聚光灯下还可以设置"Spot Angle"属性

"Spot Angle"属性决定了聚光灯的圆锥体照射范围的角度大小(单位为度)

"Color"控制灯光的颜色

场景会根据灯光颜色的变化而改变颜色

"Intensity"控制灯光的强弱

这个属性和"Range"是相互独立的

在场景中使用灯光时,需要配合使用各项属性才能做出令人动容的效果

无论是增大"Intensity"还是增大"Range"属性

灯光看上去的确会显得更亮

但是他们照亮场景的方式是不同的

除了基本的渲染外

我们还可以使用一些高级设置

阴影(Shadows)、光晕(Halos)、耀斑(Flare)和Cookie

Cookie是一个虚拟遮罩或者标记

它挡在光源前面来产生某种阴影

Cookie使用贴图的Alpha通道来给光源产生阴影

聚光灯和平行光使用Cookie时,Cookie必须使用2D贴图

点光使用Cookie时,Cookie必须使用立方体贴图(Cube map)

这很符合常识

因为聚光灯和平行光只沿着一个方向照射

点光却向所有方向照射

使用平行光时,有一个改变Cookie大小的选项

让你可以缩放Cookie阴影

面光不能使用Cookie

在烘培时,只有聚光灯能使用Cookie

Cookie对点光和平行光则无效

光照有2种阴影类型

硬阴影(Hard)和软阴影(Soft)

硬阴影能满足大部分情况

软阴影看起来更舒服,但渲染更耗时

渲染阴影有一些调节选项

"Strength"控制阴影的黑色程度

调整这个属性直到阴影在场景中看起来很和谐

"Strength"调整到1的时候往往太强

"Resolution"(分辨率)是渲染质量选项

其默认选项是"Use Quality Settings"

你可以在此修改

"Bias"(乖离率)控制某一光照产生的阴影外围强度

"Bias"影响影子起始点到物体的距离

"Bias"太小会使物体的影子太假(artifact)

太大则会使物体看起来漂浮着(hovering)

使用平行光+软阴影时,会有2个额外配置项

柔和度(Softness)和柔化淡出(Softness Fade)

柔和度是指阴影边界清晰程度

柔化淡出是指从多远开始给物体绘制软阴影

"Draw Halo"(绘制光晕)会在灯光周围绘制场景默认的光晕

光晕和"Range"、"Intensity"属性都相关

光晕的详细设置可以在场景的"Render Settings"中找到

想重写(Override)默认光晕的话

必须关闭灯光的"Draw Halo"选项

然后给灯光添加一个"Halo"组件

眩光(Flare)和光晕很像

但是它是模仿透过玻璃照射的亮光源的效果

当"Flare"属性被赋予一个光晕材质后

灯光会被渲染成具有镜头光晕(Lens Flare)的样子

"Flare"只受"Intensity"属性控制

你可以直接给灯光物体添加一个镜头光晕(Lens Flare)组件

不过灯光的"Flare"属性就应当清空了

否则这个灯光会有2个光晕

必须给摄像机添加一个"Flare Layer"组件

摄像机才能渲染光晕

渲染动态灯光的方式有2种

顶点光照(vertex lighting)和像素光照(per-pixel lighting)

顶点光照一般是最快的渲染方式

它通过计算物体的网格顶点的颜色来渲染场景

然后通过插值(interpolate)渲染网格的表面

像素光照是逐个像素渲染的,所以更耗时

虽然像素光照渲染时慢

但是它能实现一些顶点光照无法实现的效果

法线贴图(normal mapping)、灯光cookies和实时阴影(Realtime shadow)

只在像素光照下才能使用

聚光灯形状、某些特殊高光(high light)在像素光照下的效果也更好

光照对渲染速度有很大的影响

像素光照的数量可以在"Render Settings"中设置

只要设置"Pixel Light Count"属性即可

当你使用正向渲染路径(forward rendering path)时

灯光组件提供给你一个选项"Render Mode"来指定其渲染模式

"important"会强制此灯光逐个像素地渲染

"not important"会强制此灯光使用更快的方式渲染

例如逐个顶点的方式或球面调和(Spherical?Harmonics)的方式

有需要本篇高清视频的同学麻烦支付100元并留下你的Email~

[我给Unity官方视频教程做中文字幕]beginner Graphics – Lessons系列之灯光介绍Lights的更多相关文章

  1. [我给Unity官方视频教程做中文字幕]beginner Graphics – Lessons系列之摄像机介绍Cameras

    [我给Unity官方视频教程做中文字幕]beginner Graphics – Lessons系列之摄像机介绍Cameras 最近得到一些Unity官方视频教程,一看全是纯英文的讲解,没有任何字幕或者 ...

  2. [我给Unity官方视频教程做中文字幕]beginner Graphics – Lessons系列之纹理Textures

    [我给Unity官方视频教程做中文字幕]beginner Graphics – Lessons系列之纹理Textures 本篇分享一下第6个已完工的视频,即<beginner Graphics ...

  3. [我给Unity官方视频教程做中文字幕]beginner Graphics – Lessons系列之网格Meshes

    [我给Unity官方视频教程做中文字幕]beginner Graphics – Lessons系列之网格Meshes 本篇分享一下第5个已完工的视频,即<beginner Graphics – ...

  4. [我给Unity官方视频教程做中文字幕]beginner Graphics – Lessons系列之材质了解Materials

    [我给Unity官方视频教程做中文字幕]beginner Graphics – Lessons系列之材质了解Materials 既上一篇分享了中文字幕的灯光介绍Lights后,本篇分享一下第3个已完工 ...

  5. Unity 现代室内环境场景高效流程视频教程 附源文件 中文字幕

    大小1.83G,中文字幕 章节内容:1.项目介绍2.准备maya工程文件3.素材资产(assets)结构4.管理unity中的maya资产5.整合场景6.unity游戏对象及材质7.第一人称控制器8. ...

  6. BIT祝威博客汇总(Blog Index)

    +BIT祝威+悄悄在此留下版了个权的信息说: 关于硬件(Hardware) <穿越计算机的迷雾>笔记 继电器是如何成为CPU的(1) 继电器是如何成为CPU的(2) 关于操作系统(Oper ...

  7. 海蜘蛛网络科技官方网站 :: 做最好的中文软路由 :: 软件路由器 :: 软路由 :: 软件路由 :: RouterOs

    海蜘蛛网络科技官方网站 :: 做最好的中文软路由 :: 软件路由器 :: 软路由 :: 软件路由 :: RouterOs 企业简介 武汉海蜘蛛网络科技有限公司成立于2005年,是一家专注于网络新技术研 ...

  8. MAYA逼真手枪制作视频教程 中文字幕

    下载地址 更多中文字幕教程请关注微镜映画网,有各类CG教程提供

  9. Unity3D Substance designer Sub 欧洲小镇场景制作视频教程 中文字幕

    大小6.53G,中文字幕 扫码时备注或说明中留下邮箱 付款后如未回复请至https://shop135452397.taobao.com/ 联系店主

随机推荐

  1. Cassandra-几个基本测试常识

    一 使用ycsb进行装载,每次装载都不会删除以前装载过的. 因此如果想在空数据库中装载,需要先情况数据表. drop命令删除整个表,因此需要重建标头. truncate命令删除表的所有行,只留下表头, ...

  2. SQLite in Windows Store Apps

    Using SQLite in Windows Store Apps : https://channel9.msdn.com/Shows/Visual-Studio-Toolbox/Using-SQL ...

  3. python第一天基础1-2

    python入门 1 第一个python代码: 在linux上创建第一个.py脚本 #!/usr/bin/env python #-*- coding:utf-8 -*- print "He ...

  4. Javascript日期比较

    var date1=Date.parse("2014-9-3 11:40:14".replace(/-/g,"/")); var date2=Date.pars ...

  5. while语句(1)

    <?php     for ($i=1; $i<=10  ; $i++) {        echo $i."-".($i*10)."<br>&q ...

  6. Android adb常用指令

    Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器 的状态. 可以通过下列几种方法加入adb: 在设备上运行shell命令 通过端口转发来管理模拟器或设备 从模拟器或 ...

  7. mac OS X 配置Python+Web.py+MySQLdb环境

    MAC默认支持Python 2.7所以不用安装. 1.安装pip sudo easy_install pip 2.安装Web.py sudo pip install Web.py 3.安装MySQLd ...

  8. 【NHibernate】列“ReservedWord”不属于表 ReservedWords

    NHibernate+FluentNHibernate+MySql 运行时黄页显示下边的异常,项目中找了半天没出现过这个列的关键字. [ArgumentException: 列“ReservedWor ...

  9. [转]oracle job有定时执行的功能,可以在指定的时间点或每天的某个时间点自行执行任务。

    oracle job有定时执行的功能,可以在指定的时间点或每天的某个时间点自行执行任务. 一.查询系统中的job,可以查询视图 --相关视图 select * from dba_jobs; selec ...

  10. html 页面中显示单行省略号

    <!DOCTYPE html>   <html>   <head>   <meta charset="UTF-8">   <t ...