バージョン:Unity 2020.1.8f1 (64-bit)
無料アセット:DOTween (HOTween v2)
カプセルコライダーをつけたカプセルを動かしています。
なにかに接触したら止まる処理を
Dotweenでやろうとしているのですが
うまく止まらず、どうしても、障害物にめり込んでしまいます。
using System.Collections; using System.Collections.Generic; using UnityEngine; using DG.Tweening; public class Cc_dotween_mv_src : MonoBehaviour { public float Forward_speed = 0.5f; public float kaiten_speed = 10f; public bool kaiten_f = false; Tween tw; Sequence mySequence; bool hit_f = false; void Start() { } void Update() { if (Input.GetKeyDown(KeyCode.UpArrow)) { if (hit_f == false) { mySequence = DOTween.Sequence(); mySequence.Append(transform.DOMove(transform.forward * Forward_speed, 3.0f).SetRelative()); } } if (kaiten_f) { //その場で回転 if (Input.GetKey(KeyCode.RightArrow)) { transform.Rotate(new Vector3(0, kaiten_speed, 0)); } if (Input.GetKey(KeyCode.LeftArrow)) { transform.Rotate(new Vector3(0, -kaiten_speed, -0)); } } else { //水平移動 if (Input.GetKey(KeyCode.RightArrow)) { transform.position += transform.right * Forward_speed; } if (Input.GetKey(KeyCode.LeftArrow)) { transform.position -= transform.right * Forward_speed; } } } void OnTriggerEnter(Collider col) //衝突した瞬間 { if (hit_f == false) { mySequence.Pause(); //停止させたい hit_f = true; } } }
DotweenのKillをつかってもめり込んでしまいました。
いろいろ調べたのですが、停止や終了はこれ以外では見つからなかったのですが
なにか使い方が間違っているのでしょうか。
あなたの回答
tips
プレビュー