Unity3d 统一的AR动画问题
我正在尝试使用unity和Metaio sdk制作AR动画。 我必须一步一步地播放那个动画 当我尝试下面的脚本时,它在ipad和android移动设备上运行得非常好Unity3d 统一的AR动画问题,unity3d,augmented-reality,metaio,Unity3d,Augmented Reality,Metaio,我正在尝试使用unity和Metaio sdk制作AR动画。 我必须一步一步地播放那个动画 当我尝试下面的脚本时,它在ipad和android移动设备上运行得非常好 Variable declaration ******************** public GUIStyle buttonTextStyle; public Texture aTexture; priv
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(眼镜)上运行此脚本时,它不接受按钮单击事件,因此我使用OnMouse ButtonDown作为以下脚本:-
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++;
}
}
动画不是一步一步播放的。
它按不同的顺序播放
有人能帮我吗,
或者请引导我犯错误的地方。
我在团结和发展方面是新手
我完全理解鼠标事件。
问题是在动画中还是在鼠标单击中。。
请帮忙。谢谢bl0z0,
我已经用OnGUI()函数编写了这段代码
我终于解决了我的问题。。
我不明白背后的原因
问题出在可变电流阶跃中,
当我这样做的时候
curretnStep++;
它增加了2,而不是1。(仅在Epson Moverio中)
因此,它没有采取适当的切换案例,动画播放错误。显然,该设备(爱普生Moverio)的帧速率高于标准设备(手机,我猜这些眼镜在Android上运行)以及您在输入时得到正确的事实。GetMouseButtonDown(0)两次让我认为这实际上是一个bug(对于该平台)
我并不推荐使用OnGUI,因为它对于移动开发来说有点沉重,你可以做的是在播放动画时使用一个标志,只有在播放完动画后,这个标志才会亮起