質問するログイン新規登録

回答編集履歴

1

記述部分が間違っていたので修正。

2018/01/16 07:12

投稿

jum6948
jum6948

スコア20

answer CHANGED
@@ -1,45 +1,2 @@
1
- ```C#
2
- IEnumerator NpcNormalKaiten()
3
- {
4
- nowExecCoroutine = true;
5
-
6
- //全てのアニメーションをリセット
7
- moveResaet();
8
-
9
- //初期値からいくつ回転したのかを調べる
10
- //float angle = Quaternion.Angle(transform.rotation, target.rotation);
11
-
12
- //今見ている方向
1
+ 回答では無い物を回答とししまました。
13
- float nowLook = transform.localEulerAngles.x;
14
- //ターゲットの方向
15
- float targetLook = target.transform.localEulerAngles.x;
16
- //次見る方向
2
+ 本文追記として載せております。
17
- float nextLook = nowLook - targetLook;
18
-
19
- //ターゲットへ旋回
20
- rb.rotation = Quaternion.Slerp(transform.rotation, Quaternion.LookRotation
21
- (targetP.transform.position - transform.position), Time.deltaTime * 10f);
22
- //見るだけなので動かない
23
- rb.velocity = Vector3.zero;
24
-
25
- if (nextLook >= 340f)
26
- {
27
- animator.SetBool("Idle", true);
28
- }
29
- else
30
- {
31
- animator.SetBool("Walk", true);
32
- }
33
- yield return null;
34
-
35
- nowExecCoroutine = false;
36
- }
37
- ```
38
- 数字の取得方法がわからなかったので、教えてもらったとおりに角度を取得。
39
- 完全に見たい方向に向いてるときが359fだったので、20fほど余裕を持たせて、それ以上だったら振り向きモーションを動作するようにしました。
40
-
41
- 今回は、もう疲れに疲れ切って、質問に書いたものが、もう途中も途中だったので回答していただく方には、本当に申し訳ないと思っております。
42
- Quaternion.Angle()を使う具体的な方法がわかる方、もしおられましたらご一報ください。
43
-
44
- 勉強不足なもので、コレ使ったらできるよ!
45
- では、ちょっとわからないので、書き方教えてもらえるとありがたいです。