Unity3D API 知识点积累

来源:互联网 发布:软件开发人员薪酬 编辑:程序博客网 时间:2024/06/07 04:40

一、通过脚本添加 动画事件   AnimationEvent

        AnimationEvent evt=new AniamtionEvent();

       evt.intPareameter=12345;

       evt.time=1.0f;

       evt.functionName="PrintEvnet";

       public void PrintEvent(int i)

       {

            print("PrintEvent:"+i+"called at:"+Time.time);

       }

二、AniamtionState.normalizedTime 决定了动画开始的时间,0.5f 从动画的中间开始播放,1.0f,动画的末尾(直接j结束);nomalizedSpeed控制动画播放速度

       Animation[Animation.clip.name].normalizedTime=0.5f;

       Animation[Animation.clip.name].normalizedSpeed=0.5f;

三、Application.persistentDataPath 持久性数据路径,在ios、android发布时,persistentDataPath指向设备上的公用目录,APP的每次更新都将不会删除此位置的文件;删除SD卡将使存储在其上的数据无法访问。 请注意,构建应用程序时,将根据Bundle标识符生成GUID,此GUID将成为persistentDataPath的一部分。 如果您在将来的版本中保留相同的软件包标识符,那么应用程序将在每次更新时继续访问相同的位置。

四、Application.targetFrameRate 默认的targetFrameRate是一个特殊值-1,表示游戏应该以平台的默认帧速率呈现;使用VR Unity时,将使用SDK指定的目标帧率,并忽略游戏指定的值;如果设置了QualitySettings.vSyncCount属性,targetFrameRate将被忽略,而游戏将使用vSyncCount和平台的默认渲染速率来确定目标帧速率。例如,如果平台的默认渲染速率为每秒60帧,并且vSyncCount设置为2,则游戏将以每秒30帧为目标;在移动平台上,由于需要节省电池电量,默认帧速率低于最大可实现的帧速率。通常在移动平台上,默认帧速率为每秒30帧

五、Application.GetStreamProgressForLevel(int levelindex)  返回加载进度[0.....1]

       Application.CanStreamedLevelBeLoaded(int levelindex or string levelName) 检查是否可以加载“LevelName or LevelIndex",如果可以加载,则加载它。

    void Update()
    {
        if (Application.GetStreamProgressForLevel(1) == 1)
        {
            progressText.text = "Level at index 1 has been fully streamed!";
        }
        else
        {
            percentageLoaded = Application.GetStreamProgressForLevel(1) * 100;
            progressText.text = percentageLoaded.ToString();
        }
    }

六、Application.Unload 卸载unity,unity3d嵌入在ios、windows Store时,想关闭app中unity部分,但又不想卸载unity3d的内存,此方法可用

七、Application.lowMemory+=function 当程序内存过低的时候执行改代码,降低内存使用

原创粉丝点击