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

質問編集履歴

3

```を付け加えました。

2020/07/28 05:30

投稿

pasta3
pasta3

スコア1

title CHANGED
File without changes
body CHANGED
@@ -21,7 +21,7 @@
21
21
 
22
22
  ### 試したこと
23
23
 
24
- using System;
24
+ ```using System;
25
25
  using UnityEngine;
26
26
  using UnityStandardAssets.CrossPlatformInput;
27
27
 
@@ -74,8 +74,8 @@
74
74
  }
75
75
  }
76
76
  }
77
+ ```
77
78
 
78
-
79
79
  ### 補足情報(FW/ツールのバージョンなど)
80
80
 
81
81
  public floatをfloatに書き換えると23個のエラーメッセージが消えます。

2

補足事項に検証した内容を記載しました。

2020/07/28 05:30

投稿

pasta3
pasta3

スコア1

title CHANGED
File without changes
body CHANGED
@@ -76,4 +76,11 @@
76
76
  }
77
77
 
78
78
 
79
- ### 補足情報(FW/ツールのバージョンなど)
79
+ ### 補足情報(FW/ツールのバージョンなど)
80
+
81
+ public floatをfloatに書き換えると23個のエラーメッセージが消えます。
82
+ しかし、unity上でエラーが発生します。
83
+ 未割り当てのローカル変数「BraekPower」の使用
84
+ 未割り当てのローカル変数「AccelPower」の使用
85
+ とでます。
86
+ 解決できていませんが補足事項として。

1

回答してもらえた内容を書き換えたところ以上のようなエラーメッセージがでてきててんやわんやしています。 対応できる方お願いします...

2020/07/28 04:21

投稿

pasta3
pasta3

スコア1

title CHANGED
File without changes
body CHANGED
@@ -11,43 +11,69 @@
11
11
 
12
12
  ### 発生している問題・エラーメッセージ
13
13
 
14
- スタンダードアセットで作成した車
14
+ CS1022
15
+ CS0116
16
+ CS8124
17
+ CS1519
18
+ CS1513
19
+ CS1026
15
- USBハンコンを接続
20
+ 計23エラーています。
16
21
 
17
- 再生を押すと何も入力ていない状態で車がバックする。
22
+ ### 試たこと
18
23
 
24
+ using System;
25
+ using UnityEngine;
26
+ using UnityStandardAssets.CrossPlatformInput;
19
27
 
20
- ### 試したこと
28
+ namespace UnityStandardAssets.Vehicles.Car
29
+ {
30
+ [RequireComponent(typeof(CarController))]
31
+ public class CarUserControl : MonoBehaviour
32
+ {
33
+ private CarController m_Car; // the car controller we want to use
21
34
 
22
- スタンダードアセットのcar user controlerのスクリプトに
23
- float a = CrossPlatformInputManager.GetAxis("accel");
24
- float b = CrossPlatformInputManager.GetAxis("braek");
25
- a = a / 2 - 0.5f;
26
- b = b / 2 + 0.5f;
27
35
 
36
+ private void Awake()
37
+ {
38
+ // get the car controller
39
+ m_Car = GetComponent<CarController>();
40
+ }
41
+
42
+
43
+ private void FixedUpdate()
44
+ {
45
+ // pass the input to the car!
46
+ float h = CrossPlatformInputManager.GetAxis("Horizontal");
47
+ float v = 0;
48
+ float a = CrossPlatformInputManager.GetAxis("accel");
49
+ float b = CrossPlatformInputManager.GetAxis("braek");
50
+ public float AccelPower;
51
+ public float BreakPower;
52
+
53
+ var NewA = -a * PulsPower;
54
+ var NewB = b / BreakPower;
55
+
28
56
  if (b > 0)
29
57
  {
30
- v = b;
58
+ v = NewB;
31
59
  }
32
- if (a > 0)
60
+ else if (a > 0)
33
61
  {
34
- v = -a;
62
+ v = NewA;
35
- }
63
+ }
36
- と追加入力し初期状態の変更を図りました。
37
- imputマネージャーにaccel,brakeの仮想軸を作り対応する軸を設定した。
38
64
 
39
- 入力することはできますが、ずっとバックしっぱなしです。
40
- いろいろ数値を変えて検証しているのですが問題のボトルネックがわからないまま2,3日考えている状態です。
41
65
 
42
66
 
43
- ### 補足情報(FW/ツールのバージョンなど)
44
67
 
68
+ #if !MOBILE_INPUT
45
- コントローラーテストというアセットを用いてアクセルブレーキの状態をチェックしたところ以下のようになりました。
69
+ float handbrake = CrossPlatformInputManager.GetAxis("Jump");
70
+ m_Car.Move(h, v, v, handbrake);
71
+ #else
72
+ m_Car.Move(h, v, v, 0f);
73
+ #endif
74
+ }
75
+ }
76
+ }
46
77
 
47
- 何も入力していない状態
48
- axis 3 positive (アクセル)
49
- axis 4 positive (ブレーキ)
50
78
 
51
- アクセル、ブレーキを踏めるところまで踏むと
52
- axis 3 negative (アクセ)
79
+ ### 補足情報(FW/ツーのバージョンなど)
53
- axis 4 negative (ブレーキ)