首页 > Web开发 > 详细

unity3d lightmap贴图加载、替换、切换

时间:2014-09-11 09:33:31      阅读:321      评论:0      收藏:0      [点我收藏+]

unity中烘过图的场景很难做lightmap的平滑过渡,只能实现按钮的切换。难点是多套lightmap的加载,还有如何替换。

  步骤:

  1.创建个ui

<ignore_js_op>bubuko.com,布布扣 

 

<ignore_js_op>bubuko.com,布布扣 

  3.编辑js

[AppleScript] 纯文本查看 复制代码
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
var lightmapDay:Texture2D[];//第一套图
 
var lightmapNight:Texture2D[];//第二套图
 
private var lightDataFirst:LightmapData[];//第一套图的数据结构
 
private var lightDataSecond:LightmapData[];//第二套图的数据结构
 
private var ok:boolean=true;//切换开关
 
private var indexnum:int;//每套图的数量。注意两套图要一样多,并且序号要一致
 
function Start () {
 
//初始化数据结构
 
indexnum=lightmapDay.Length;
 
lightDataFirst=new LightmapData[indexnum];
 
lightDataSecond=new LightmapData[indexnum];
 
if(ok){
 
//将两套图写入数据结构
 
for(var i=0;i<indexnum;i++){
 
lightDataFirst[i]=new LightmapData();
 
lightDataFirst[i].lightmapFar=lightmapDay[i];
 
lightDataSecond[i]=new LightmapData();
 
lightDataSecond[i].lightmapFar=lightmapNight[i];
 
}
 
}
 
}
 
function OnMouseDown () {
 
if(ok){
 
LightmapSettings.lightmaps=lightDataFirst;//切入第一套图
 
}
 
else
 
{
 
LightmapSettings.lightmaps=lightDataSecond;//切入第二套图
 
}
 
ok=!ok;
 
}


  4.将js添加到ui上

  总结:这个问题的解决是靠LightmapData,LightmapSettings这两个结构的掌握。


        游戏蛮牛:http://www.unitymanual.com

unity3d lightmap贴图加载、替换、切换

原文:http://www.cnblogs.com/carrie901/p/3965717.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!