前提・実現したいこと
現在、Unityにて立方体を2つ作り、片方の立方体は親、もう片方の立方体は子にしています。
その状態で親立方体にWで前進、A,Dでそれぞれ左右旋回するスクリプトをアタッチしています。
子の立方体には左に旋回中にスペースを押すと左に子が回転、右に旋回中にスペースを押すと右に子が回転する・・・(わかりやすく言うと戦車の車体部分が親で、その上にある砲台が子というイメージです)というスクリプトをアタッチしています。
この状態で実現したいことが2つあります。
1:スペースを離したら子である立方体が親と同じY座標の角度に戻る
(砲台が回転しても、スペースを離せば砲台は戦車の正面に自動でゆっくり戻ってくるイメージです。
親のY座標取得→その位置まで子を回転させればいいのでは、と思っているのですが親を取得して子に取得したY座標を変数で代入して、かつゆっくりその座標まで回す方法がわかりません。)
2:この回転の制限を付けたい
(制限しようとしたんですが、ワールド軸での制限になってしまったり、子を制限したら親が旋回しようとしても子の方で制限がかかってしまい結局親子で旋回ができなくなってしまったりしました・・・)
恐れ入りますが助言いただけたらと思います。
宜しくお願い致します。
発生している問題・エラーメッセージ
該当のソースコード
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class M2 : MonoBehaviour
{
private float RotateForce = 0.3f; //回転させる値 void Start() { } // Update is called once per frame void Update() { if (Input.GetKey(KeyCode.A) && Input.GetKey(KeyCode.Space)) //左に回転させる { transform.Rotate(0, -RotateForce, 0); } if (Input.GetKey(KeyCode.D) && Input.GetKey(KeyCode.Space)) //右に回転させる { transform.Rotate(0, RotateForce, 0); } if (Input.GetKeyUp(KeyCode.Space)) {
//回転をもとに戻す何か
}
}
}
試したこと
補足情報(FW/ツールのバージョンなど)
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。