6
なぜ私はループで動けなくなるのですか
Unityは初めてです。私はコルーチンを学び、これを書いた。 private void Fire() { if(Input.GetButtonDown("Fire1")) { StartCoroutine(FireContinuously()); } if(Input.GetButtonUp("Fire1")) { StopAllCoroutines(); } } IEnumerator FireContinuously() { while(true) { GameObject laser = Instantiate(LaserPrefab, transform.position, Quaternion.identity) as GameObject; laser.GetComponent<Rigidbody2D>().velocity = new Vector2(0, 10f); yield return new WaitForSeconds(firetime); } } ボタンが押されるとコルーチンが呼び出され、「while」ループに入ります。ボタンを離れると、コルーチンが停止します。それは無限ループなので、「while」ループに引っかかってはいけませんか?どうして?