1

こんにちはiamは、デバイスをスワイプすると、プレーヤーがコライダーの近くに入った後、90度回転するゲームを作成しようとしています。ボックスコライダーの中央でのみターンを発生させたい。現在、トリガーが入力されたときにプレーヤーが回転しています。助けてください。

4

1 に答える 1

3

これにより、コライダーの中心を取得できます。

Vector3 center = collider.center;

そして、あなたが望むものを実装するための提案があります:

  1. Collider.OnTriggerStay()を検出します。このイベントを受信したら、プレーヤーの入力の記録を開始します。
  2. Collider.OnTriggerExit()を検出します。このイベントを受信したら、プレーヤー入力の記録を停止し、プレーヤーが画面をスワイプした場合は、アクターを回します。
  3. トリガーの位置を変更します。

そして、以下はいくつかの疑似コードです:

bool shouldTurn = false;

void OnTriggerStay()
{
    if (true//player swiped)
    {
        shouldTurn = true;
    }
}

void OnTriggerExit()
{
    if (shouldTurn)
        //turn your actor

    shouldTurn = false;
}

お役に立てれば。

于 2013-03-26T08:03:44.010 に答える