前提・実現したいこと
(初心者です)Unityで下記のようなプログラムを作っています。
【プログラム内容】
「A」キーを押すと、指定角度を表示。
「Space」キーでオブジェクトを指定角度に合うまで回転させる。
「Enter」キーで指定角度とオブジェクトの角度が合っているか否かを判定。
発生している問題・エラーメッセージ
指定角度とオブジェクトの回転角度の表示が合っていても、判定で合っていない場合があります。 どうして、こうなるか分かりません。助言をお願いします。
該当のソースコード
C# using System.Collections; using UnityEngine; public class test : MonoBehaviour { public GameObject sample; //ゲームオブジェクトsample public Quaternion sample_quaternion; //sampleの回転情報 public static float sample_z = 0; //sampleの回転角度 public static float i = 0; //指定値 public static float i_answer = 0; //指定角度 void Start() { } void Update() { if (Input.GetKeyDown(KeyCode.A)) { i = Random.Range(1, 12); i_answer = 360 - (i * 30); Debug.Log(i_answer); } if (Input.GetKeyDown(KeyCode.Space)) { sample.transform.Rotate(0, 0, -30); sample_quaternion = sample.transform.rotation; sample_z = sample_quaternion.eulerAngles.z; } if (Input.GetKeyDown(KeyCode.Return)) { if (sample_z == i_answer) { Debug.Log("合っている"); } else { Debug.Log("合っていない"); Debug.Log(sample_z); Debug.Log(i_answer); } } } }
試したこと
角度が微妙にズレている可能性が考えられますが、解決策が見つかりませんでした。
補足情報(FW/ツールのバージョンなど)
なし

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/06/20 01:56