您好,欢迎来到Unity之家!   unity.jb51.net 
  • 首 页
  • 你问我答
  • 当前位置:首页 > 学习培训 > Unity入门 >
    Lightmap贴图、加载、替换与切换
    时间:2015-03-20 08:50 来源:Unity之家 作者:unity.jb51.net 浏览:收藏 挑错 推荐 打印


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


    1.创建个ui


    Lightmap贴图、加载、替换与切换


    3.编辑JS脚本


    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这两个结构的掌握


    (责任编辑:脚印)
    免责声明:Unity之家部分内容来源于互联网,如有侵权,请联系我们,本站将立即进行处理。