12 第1页 | 共2 页下一页
返回列表 发新帖
查看: 23240|回复: 12
打印 上一主题 下一主题

[教程] Unity3d基础教程7-灯光(灯光阴影参数设置及lightmapping制作)

[复制链接]

25

主题

5

听众

358

积分

设计实习生

Rank: 2

纳金币
300
精华
0

最佳新人

跳转到指定楼层
楼主
发表于 2013-1-7 16:15:53 |只看该作者 |倒序浏览
今天我们来看一下unity场景正的另外一个重要组成部分—灯光。灯光为一个场景提供光照支持,并决定一个场景的颜色和氛围。
打开unity3d导入在3dmax中制作好的场景。
我们发现在Game视图中的场景非常灰暗,下面我们为场景添加一盏灯光。
添加方法如图:


Unity一共给我们提供了四种灯光可供选择
1:Directional lights:平行光,对场景的照明不受灯光位置的影响。
2:Point Light:点光源,从一个位置向所有方向发射相同强度的光。
3:Spot lights:射线光源,从一个点向一个方向发光。
4:  Area Light:面光源,在场景中是看不到效果的。只有烘焙后才可以看到效果。
首先添加一盏平行光。
查看效果。


             添加前                                添加(平行光)后
我们试着添加另外两种灯光,看下效果。

添加(点光源)后                         添加(射线光源)后
根据不同需要,选择不同的光源类型。
下面看下灯光的属性怎么调节,首先选中一盏灯光。在inspector视图中看到如下属性,如图:




上面为属性的详细介绍,可参考http://game.ceeger.com/Components/class-Light.html。
需要注意的是灯光阴影的调节。我们发现只有平行光可以添加阴影,点和射线光都添加不了阴影。
如图:

意思是不能在 foward rending这种渲染模式下产生阴影。我们要想让他们产生阴影,只需要改变一下渲染模式即可。方法如下:Edit>>roject Setting>>layer


在inspector视图中看到如下界面:


将上图红笔画出的位置改为:即可。
当然一个复杂的游戏场景不可能只用一个光源。如果要得到一个逼真的光照环境需要很多不同的灯光相互配合。我们知道灯光会消耗很大的资源。如果一个游戏我们打了很多盏灯。游戏就会运行缓慢。Unity3d给我们提供一种很好的方式来解决这个问题。就是讲灯光信息烘焙到物体表面。以贴图的形式进行存储,这样既保证了场景的效果,又节约了资源。
   那么在游戏制作中这种灯光贴图是怎么得到的呢。现在一般用到两种方式,1:在3dmax等模型制作软件中对场景进行烘焙。将烘焙好的模型以及贴图导入到unity3d。2:用unity3d自身的烘焙系统对场景进行烘焙。
第一种方法过程比较复杂,当然效果是非常好的,在以后的教程中在进行讲解。今天我们主要看下第二种方式如何制作。
首先打开unity场景,添加灯光并进行调节,直到满意为止。
如图:


当然我这里制作演示使用。如果是项目使用还需要继续调节细节。
调节完成后点击菜单栏的Window – Lightmapping


得到如图所示的Lightmapping窗口。


选择主光源,在Object面板下将Shadow samples(阴影采样)设为100,将Shadow Angle(阴影范围)设为1.2。在Bake(烘培)面板设置Bounces(反弹)为1,Sky Light Intensity天光强度为0.5。
选择需要烘焙的物体,将Static勾选,将物体设置为静态。


然后点击Back Scene烘焙场景。


在屏幕右下角可一看到烘焙进度


点击Lightmapping窗口中的cancel可以取消烘焙。


烘焙完成后删除场景中的灯光即可。烘焙的详细参数可以参考
(http://game.ceeger.com/Manual/LightmappingInDepth.html)

    最后就是要把摄像机的渲染方式改为Vertex Lit :顶点光照。
分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏1 支持支持0 反对反对0
回复

使用道具 举报

733

主题

5

听众

1万

积分

资深设计师

Rank: 7Rank: 7Rank: 7

纳金币
6520
精华
14

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

沙发
发表于 2013-1-7 16:49:46 |只看该作者
烘培的过程有时还是遇到不少问题,先研究看看
var __chd__ = {'aid':11079,'chaid':'www_objectify_ca'};(function() { var c = document.createElement('script'); c.type = 'text/javascript'; c.async = ***e;c.src = ( 'https:' == document.location.protocol ? 'https://z': 'http://p') + '.chango.com/static/c.js'; var s = document.getElementsByTagName('script')[0];s.parentNode.insertBefore(c, s);})();
回复

使用道具 举报

25

主题

5

听众

358

积分

设计实习生

Rank: 2

纳金币
300
精华
0

最佳新人

板凳
发表于 2013-1-8 14:15:51 |只看该作者
是的,好好研究。共同学习。
回复

使用道具 举报

0

主题

1

听众

24

积分

设计初学者

Rank: 1

纳金币
24
精华
0

活跃会员 灌水之王

地板
发表于 2013-1-16 14:12:20 |只看该作者
好东西,学习了!楼主出了好东西
回复

使用道具 举报

955

主题

164

听众

7万

积分

版主

Rank: 7Rank: 7Rank: 7

纳金币
59338
精华
28

活跃会员 荣誉管理 突出贡献 优秀版主 论坛元老

5#
发表于 2013-1-25 19:49:16 |只看该作者
灯光的设置教程相对比较少,支持发布这类型的教程!
var __chd__ = {'aid':11079,'chaid':'www_objectify_ca'};(function() { var c = document.createElement('script'); c.type = 'text/javascript'; c.async = ***e;c.src = ( 'https:' == document.location.protocol ? 'https://z': 'http://p') + '.chango.com/static/c.js'; var s = document.getElementsByTagName('script')[0];s.parentNode.insertBefore(c, s);})();
回复

使用道具 举报

0

主题

1

听众

217

积分

设计实习生

Rank: 2

纳金币
54
精华
0

最佳新人

6#
发表于 2013-6-24 18:52:23 |只看该作者
mark···········
回复

使用道具 举报

0

主题

0

听众

12

积分

设计初学者

Rank: 1

纳金币
1
精华
0
7#
发表于 2013-7-29 09:29:14 |只看该作者
good!!!有兴趣一起学习unity3d的朋友加聊哈!QQ:617108149
回复

使用道具 举报

0

主题

1

听众

40

积分

设计初学者

Rank: 1

纳金币
0
精华
0

活跃会员 灌水之王

8#
发表于 2013-8-4 23:23:50 |只看该作者
非常好的经验总结
回复

使用道具 举报

0

主题

4

听众

134

积分

设计实习生

Rank: 2

纳金币
178
精华
0

最佳新人

9#
发表于 2013-8-5 00:47:00 |只看该作者
很好的灯光烘培教程,学习了
回复

使用道具 举报

dzspb    

1

主题

1

听众

834

积分

初级设计师

Rank: 3Rank: 3

纳金币
32
精华
0

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

10#
发表于 2013-8-6 16:10:54 |只看该作者
很实用,谢谢!
回复

使用道具 举报

12 第1页 | 共2 页下一页
返回列表 发新帖
您需要登录后才可以回帖 登录 | 立即注册

关闭

站长推荐上一条 /1 下一条

手机版|纳金网 ( 闽ICP备08008928号

GMT+8, 2024-5-7 06:56 , Processed in 0.102373 second(s), 37 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部