質問編集履歴

3

解決しました!

2020/11/21 11:21

投稿

myanmy
myanmy

スコア13

test CHANGED
File without changes
test CHANGED
@@ -1,91 +1 @@
1
1
  【初心者です】animetorのステートをスクリプトから動かしたいです
2
-
3
-
4
-
5
- 実現したいこと
6
-
7
- ・ジョイスティックを上に倒した時に、動物が歩くアニメーションを再生したい
8
-
9
- ・ジョイスティックはAxis 2 negative方向です
10
-
11
- ・スティックを倒す角度で0.0 → 0.5 → 1.0といった値をアニメーターのパラメーターに渡したいです
12
-
13
- ・トランジションで 0.5…歩く 1.0…走る といった形に分岐させようと思って書いていましたが、初歩の初歩でつまづいているので下のコードは無視してもらっても大丈夫です(> <;)
14
-
15
-
16
-
17
- ```C#
18
-
19
- using System.Collections;
20
-
21
- using System.Collections.Generic;
22
-
23
- using UnityEngine;
24
-
25
-
26
-
27
- public class Script : MonoBehaviour
28
-
29
- {
30
-
31
- Animator animator;
32
-
33
- float speed;
34
-
35
-
36
-
37
- // AnimatorControllerにつけた名前はどこかにいれるのでしょうか?
38
-
39
-
40
-
41
- void Start()
42
-
43
- {
44
-
45
- animator = GetComponent<Animator>();
46
-
47
- }
48
-
49
- // "Move"はアニメーターで作ったパラメーターです
50
-
51
-
52
-
53
- void AnimParam()
54
-
55
- {
56
-
57
- animator.SetFloat("Move", speed);
58
-
59
- }
60
-
61
-
62
-
63
- // Update is called once per frame
64
-
65
-
66
-
67
- void Update()
68
-
69
- {
70
-
71
- speed = Input.GetAxis("Vertical");
72
-
73
- }
74
-
75
- }
76
-
77
- ```
78
-
79
-
80
-
81
- 勉強中で色々間違っていると思います、すみません????教えてもらえたら嬉しいです
82
-
83
-
84
-
85
- 使用しているunity...2020
86
-
87
- os...windows10
88
-
89
-
90
-
91
- *初心者マークをつけられるとみたのでつけました

2

初心者マークをつけました

2020/11/21 11:21

投稿

myanmy
myanmy

スコア13

test CHANGED
File without changes
test CHANGED
@@ -85,3 +85,7 @@
85
85
  使用しているunity...2020
86
86
 
87
87
  os...windows10
88
+
89
+
90
+
91
+ *初心者マークをつけられるとみたのでつけました

1

試行錯誤後コードを変更しましたがまだ動いていませんT T質問を継続させていただきます

2020/11/21 07:43

投稿

myanmy
myanmy

スコア13

test CHANGED
File without changes
test CHANGED
@@ -1,20 +1,20 @@
1
- 公式を探したり、ウェブ検索などしてみたのですが、動くスクリプトが書けな質問させてください
1
+ 【初心者です】animetorのテートをスクリプトから動かし
2
2
 
3
3
 
4
4
 
5
5
  実現したいこと
6
6
 
7
- ◇動物をジョイスティックしたい
7
+ ジョイスティックを上に倒した時に、物が歩くアニメーションを再生したい
8
8
 
9
- 動物…歩く、走る、右(左)へ曲がりながら歩く(走る)の6つのアニメーシンがありま
9
+ イスティックはAxis 2 negative方向で
10
10
 
11
- ジョイスティックを半分傾けた時に歩て、全て傾け時に走る、という入力前、右、左3方向へ行いたいです
11
+ ・スティックを倒す角度で0.0 → 0.5 → 1.0とアニメーターパラメーターに渡したいです
12
+
13
+ ・トランジションで 0.5…歩く 1.0…走る といった形に分岐させようと思って書いていましたが、初歩の初歩でつまづいているので下のコードは無視してもらっても大丈夫です(> <;)
12
14
 
13
15
 
14
16
 
15
- パラメーターはfloatで作ってみました
17
+ ```C#
16
-
17
-
18
18
 
19
19
  using System.Collections;
20
20
 
@@ -24,17 +24,37 @@
24
24
 
25
25
 
26
26
 
27
- public class スクリプトにつけた名前 : MonoBehaviour
27
+ public class Script : MonoBehaviour
28
28
 
29
29
  {
30
30
 
31
+ Animator animator;
32
+
33
+ float speed;
34
+
35
+
36
+
31
- // Start is called before the first frame update
37
+ // AnimatorControllerにつけた名前はどこかにいれるのでしょうか?
38
+
39
+
32
40
 
33
41
  void Start()
34
42
 
35
43
  {
36
44
 
37
- Animator anim = GetComponent<Animator>();
45
+ animator = GetComponent<Animator>();
46
+
47
+ }
48
+
49
+ // "Move"はアニメーターで作ったパラメーターです
50
+
51
+
52
+
53
+ void AnimParam()
54
+
55
+ {
56
+
57
+ animator.SetFloat("Move", speed);
38
58
 
39
59
  }
40
60
 
@@ -42,37 +62,19 @@
42
62
 
43
63
  // Update is called once per frame
44
64
 
65
+
66
+
45
67
  void Update()
46
68
 
47
69
  {
48
70
 
49
- if (Input.GetAxis("Horizontal"))
50
-
51
- {
52
-
53
- アニメーターコントローラーにつけた名前.SetFloat("横方向のパラメーターにつけた名前");
54
-
55
- パラメーターにつけた名前 mass = Horizontalf;
56
-
57
- }
58
-
59
- }
60
-
61
- {
62
-
63
- if (Input.GetAxis("Vertical"))
71
+ speed = Input.GetAxis("Vertical");
64
-
65
- {
66
-
67
- アニメーターコントローラーにつけた名前.SetFloat("縦方向のパラメーターにつけた名前");
68
-
69
- パラメーターにつけた名前 mass = Horizontalf;
70
-
71
- }
72
72
 
73
73
  }
74
74
 
75
75
  }
76
+
77
+ ```
76
78
 
77
79
 
78
80