前提・実現したいこと
UnityでUFOキャッチャーをつくっています。
右にいって奥に行ったらアームを開くようにしたいです。
アームの開き方はHinge Jointでしています。
Hinge JointのMotorのtargetVelocityをいじりたいですがうまくいきません。
発生している問題・エラーメッセージ
特にありません
該当のソースコード
C#
1using System.Collections; 2using System.Collections.Generic; 3using UnityEngine; 4 5public class LeftArm : MonoBehaviour 6{ 7 [Header("開いたかどうか?")] 8 public bool ArmOpen = false; 9 10 [Header("Script")] 11 [SerializeField] 12 private UFO ufo; 13 [SerializeField] 14 private BodyHit bodyHit; 15 [SerializeField] 16 private ArmHit armHit; 17 [SerializeField] 18 private ArmHit _armHit; 19 20 void Update() 21 { 22 var hinge = GetComponent<HingeJoint>(); 23 var Motor = hinge.motor; 24 hinge.motor = Motor; 25 26 if (ufo.RightMove == true && ufo.BackMove == true) 27 { 28 ArmOpen = true; 29 } 30 31 if (armHit.CloseStart == true || bodyHit.CloseStart == true || _armHit.CloseStart == true) 32 { 33 ArmOpen = false; 34 } 35 36 if (ArmOpen == true) 37 { 38 Motor.targetVelocity = 100f; 39 } 40 else Motor.targetVelocity = -100; 41 } 42} 43
試したこと
Unityの設定画面でMotorの値をいじったらできました
Unityのスクリプトリファレンスも読んで作ってみましたがうまく動きませんでした。
HingeJoint.motor
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/12/04 02:37