360度画像のカメラアニメーションで
X軸(縦?)のカメラ回転および回転制限で行き詰っております。
アドバイス頂いてからボタンを押してカメラのY軸アニメーション(反転)やFOVアニメーションは
うまくいったのですがX軸になると(0,0,0)から始まると正常に動くのですが
マウスで少し動かしてX軸ボタンを押すとY軸もZ軸も動いてしまう現象になっています。
制限の仕方も Mathf.Clampを使用することは調べてわかったのですがうまくいきませんでした。
よろしくお願い致します。
public class RollX : MonoBehaviour
{
[SerializeField] private ControlCamera cameraController; public float yMinLimit = 90.0f; public float yMaxLimit = -90.0f; private float eulerAngleX; public void OnClick() { cameraController.MouseControlIsEnabled = false; var preRotation = transform.localRotation; transform.DORotate(new Vector3(30f, 0f, 0f), 2f, RotateMode.WorldAxisAdd).SetEase(Ease.InOutQuart).OnComplete( () => { cameraController.RotX += (transform.localRotation * Quaternion.Inverse(preRotation)).eulerAngles.x; eulerAngleX = Mathf.Clamp(eulerAngleX, yMinLimit, yMaxLimit); transform.rotation = Quaternion.Euler(eulerAngleX, 0, 0); cameraController.MouseControlIsEnabled = true; }); }
}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/07/05 00:32