// Update is called once per frame
    void Update()
    {
        if (!skipUpdate)
        {
            if (Application.isPlaying && GetComponent <Animation>().clip == clip && GetComponent <Animation>().isPlaying)
            {
                Debug.Log(pointer);

                AnimatedFrameData frdata = this.animationFrames[pointer];

                for (int i = 0; i < LightmapSettings.lightmaps.Length; i++)
                {
                    SwitchLM.switchmaps(i, frdata.lightmaps[i].far, frdata.lightmaps[i].near);
                }
                if (pointer < animationFrames.Length - 1)
                {
                    pointer++;
                    skipUpdate = true;
                }
                else
                {
                    pointer = 0;
                }
            }
            else
            {
                pointer = 0;
            }
        }
        else
        {
            skipUpdate = false;
        }
    }
示例#2
0
 public static void SwitchLightmaps(GameObject obj, Texture2D far, Texture2D near)
 {
     if (obj.GetComponent <Renderer>() != null && obj.isStatic)
     {
         SwitchLM.switchmaps(obj.GetComponent <Renderer>().lightmapIndex, far, near);
     }
     else
     {
         Debug.Log("Lightmap Manager requires a static gameObject with a renderer to do this job.");
     }
 }
示例#3
0
    public void SwitchLightmaps(int indexfar, int indexnear)
    {
        SwitchLM.switchmaps(indexfar, indexnear, this.GetComponent <Renderer>().lightmapIndex, SwitchTexturesFar, SwitchTexturesNear);


        //LightmapData lmapData = new LightmapData();

        //Debug.Log("Swithching textures" + indexfar.ToString() + "," + indexnear.ToString());
        //if (indexfar != -1)
        //    lmapData.lightmapFar = SwitchTexturesFar[indexfar];
        //else
        //    lmapData.lightmapFar = LightmapSettings.lightmaps[this.renderer.lightmapIndex].lightmapFar;
        //if (indexnear != -1)
        //    lmapData.lightmapNear = SwitchTexturesNear[indexnear];
        //else
        //    lmapData.lightmapNear = LightmapSettings.lightmaps[this.renderer.lightmapIndex].lightmapNear;

        //LightmapSettings.lightmaps.SetValue(lmapData, this.renderer.lightmapIndex);
        //LightmapSettings.lightmaps[this.renderer.lightmapIndex] = lmapData;
    }