Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Unity3d 使用OnTiggerEnter2D和OnTiggerStay2D时,Unity动画播放较晚_Unity3d_Animation_Collision - Fatal编程技术网

Unity3d 使用OnTiggerEnter2D和OnTiggerStay2D时,Unity动画播放较晚

Unity3d 使用OnTiggerEnter2D和OnTiggerStay2D时,Unity动画播放较晚,unity3d,animation,collision,Unity3d,Animation,Collision,我在游戏中创建了一个灯光效果动画,每当敌人与灯光杆碰撞时,它都会被激活。然而,我的灯光效果发生的时间有问题;我没有添加计时器限制或使用IEnumerator。由于我使用的是OnTiggerEnter2D函数,即已经与光棒碰撞的敌人,因此直到另一个敌人击中碰撞器,我的灯光效果动画才会播放。我猜这是因为第一个敌人已经击中了对撞机,取而代之的是我需要使用OnTiggerStay2D功能,但是这次灯光效果动画只在敌人与灯光棒碰撞后播放几秒钟,整个动画看起来不对劲。有没有办法让我的灯光效果动画在任何敌人与

我在游戏中创建了一个灯光效果动画,每当敌人与灯光杆碰撞时,它都会被激活。然而,我的灯光效果发生的时间有问题;我没有添加计时器限制或使用IEnumerator。由于我使用的是OnTiggerEnter2D函数,即已经与光棒碰撞的敌人,因此直到另一个敌人击中碰撞器,我的灯光效果动画才会播放。我猜这是因为第一个敌人已经击中了对撞机,取而代之的是我需要使用OnTiggerStay2D功能,但是这次灯光效果动画只在敌人与灯光棒碰撞后播放几秒钟,整个动画看起来不对劲。有没有办法让我的灯光效果动画在任何敌人与灯光杆碰撞的同时播放? 我的灯光效果动画基本上是打开或关闭蓝色面板

这是我的剧本:

public Animator fadeAnim;

// Use this for initialization
void Start () {

}

// Update is called once per frame
void Update () {
}

void OnTriggerEnter2D (Collider2D col) {  //Enter
    if (col.tag == "Enemy 1") {
        fadeAnim.SetBool ("flicker", true);
        StartCoroutine (wait ()); // this is meant for something else //
    }

}

可能您的动画有一个退出时间:。删除退出时间或缩短退出时间可能是一种解决方法。这可能是Greg所说的,即“退出时间”设置为特定的动画百分比或存在过渡时间。当与精灵动画一起使用时,过渡时间实际上是一个简单的延迟。