首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >“统一”中的动画问题

“统一”中的动画问题
EN

Stack Overflow用户
提问于 2014-09-02 07:27:35
回答 1查看 349关注 0票数 0

我正在使用unity和Metaio尝试使用AR动画。我必须一步一步地播放动画,当我尝试下面的脚本时,它在ipad和android移动设备上工作得很完美。

代码语言:javascript
复制
         Variable declaration
         ********************
               public GUIStyle buttonTextStyle;
               public Texture aTexture;
               private int curretnStep=1;
               GameObject gameObject;
               float SizeFactor;
               Texture2D texture;                  
               Animator CMTD42M ;
               bool isplaystarted = false;
               int[] videolengtharray = new int[6];
               int CurrentFrame=0;  
               bool islocked = false;

               *************
                  if (GUIUtilities.ButtonWithText (new Rect (Screen.width - 160,                            Screen.height - 100, 160, 100), "Next", null, buttonTextStyle)) {
            CMTD42M.speed=1;

            switch (curretnStep) {
            case 1:
                CMTD42M.Play ("First");
                break;
            case 2:
                CMTD42M.Play ("Second");
                break;
            case 3: 
                CMTD42M.Play ("Third");
                break;
            case 4:
                CMTD42M.Play ("Four");
                break;
            case 5:
                CMTD42M.Play ("Five");
                break;
            case 6:
                CMTD42M.Play ("Six");
                break;
            }
            curretnStep++;
            //isplaystarted = true;
        }

当我在Epson Moverio(眼镜)上运行这个脚本时,它不接受按钮单击事件,所以我使用了onMouseButtonDown,如下脚本所示:-

代码语言:javascript
复制
    if (Input.GetMouseButtonDown (0)) {

            if ((new Rect (Screen.width - 160, Screen.height - 100, 160, 100)).Contains (Event.current.mousePosition))
            {

                CMTD42M.speed=1;

                switch (curretnStep) {
                case 1:
                    CMTD42M.Play ("First");
                    break;
                case 2:
                    CMTD42M.Play ("Second");
                    break;
                case 3: 
                    CMTD42M.Play ("Third");
                    break;
                case 4:
                    CMTD42M.Play ("Four");
                    break;
                case 5:
                    CMTD42M.Play ("Five");
                    break;
                case 6:
                    CMTD42M.Play ("Six");
                    break;
                }
                curretnStep++;
            }

        }

动画没有一步一步地播放。它按不同的顺序播放。

ANybody能帮我吗,或者请指点我犯了什么错。我是团结与AR发展的新手。

我明白鼠标事件的意义了。是动画中的问题还是鼠标单击中的问题。请帮忙..。

EN

回答 1

Stack Overflow用户

发布于 2014-09-03 19:06:57

显然,这款设备(爱普生·莫维奥)的帧率比标准设备(手机,我猜那些眼镜是运行在安卓系统上的)要高,而且你在Input.GetMouseButtonDown(0)上两次成功的事实让我觉得这实际上是一个错误(对那个平台而言)。

我不建议使用OnGUI,因为它对于移动开发来说很重,您可以做的是使用一个标志,它在播放动画时发出,只有在播放完动画后才会继续。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25618031

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档