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

質問編集履歴

3

詳細

2018/01/10 08:56

投稿

Yuki_Unity
Yuki_Unity

スコア129

title CHANGED
File without changes
body CHANGED
@@ -2,17 +2,97 @@
2
2
  [こちらの公式チュートリアル](https://unity3d.com/jp/learn/tutorials/s/multiplayer-networking)を参考にWindowsでのチュートリアルは終えたのですが、これをAndroidやIOSなどのモバイル端末で実現したいです。
3
3
  今はボタンでの操作がしたいのですがなかなかうまく行きません。
4
4
  ###したこと
5
- とりあえず自分で左右前後ボタン作って
6
- [このページ](https://unity3d.com/jp/learn/tutorials/topics/multiplayer-networking/networking-player-movement?playlist=29690)のc#スクリプトを少し変えてやってみました
5
+ [公式チュートリアル](https://unity3d.com/jp/learn/tutorials/s/multiplayer-networking)、[6.Networking Player Movement](https://unity3d.com/jp/learn/tutorials/topics/multiplayer-networking/networking-player-movement?playlist=29690)の「PlayerController」スクリプトの完成品少し変えました。
6
+ 具体的には変えようとしたものは、(下記は公式チュートリアルのもの)
7
7
  ```cSharp
8
+ using UnityEngine;
8
- public void ForwardDown()
9
+ using UnityEngine.Networking;
10
+
11
+ public class PlayerController : NetworkBehaviour
9
12
  {
10
- //前進
13
+ void Update()
14
+ {
15
+ if (!isLocalPlayer)
16
+ {
17
+ return;
18
+ }
19
+
20
+ var x = Input.GetAxis("Horizontal") * Time.deltaTime * 150.0f;
21
+ var z = Input.GetAxis("Vertical") * Time.deltaTime * 3.0f;
22
+
23
+ transform.Rotate(0, x, 0);
24
+ transform.Translate(0, 0, z);
25
+ }
11
26
  }
27
+ ```
28
+ しかし僕は
12
- public....
29
+ ```csharp
13
- //のように続ける
30
+ using UnityEngine;
31
+ using UnityEngine.Networking;
14
32
 
33
+ public class PlayerController : NetworkBehaviour
34
+ {
35
+ bool Forward = false;
36
+ bool Backward = false;
37
+ bool RightRotate = false;
38
+ bool LeftRotate = false;
39
+
40
+ void Update()
41
+ {
42
+ if (!isLocalPlayer)
43
+ {
44
+ return;
45
+ }
46
+
47
+ if(Forward == true)
48
+ {
49
+ //前方
50
+ }
51
+ if(Backward == true)
52
+ {
53
+ //後方
54
+ }
55
+ if(RightRotate==true)
56
+ {
57
+ //右回転
58
+ }
59
+ }
60
+
61
+ public void ForwardDown()
62
+ {
63
+ Forward = true;
64
+ }
65
+ public void ForwardUp()
66
+ {
67
+ Forward = false;
68
+ }
69
+ public void BackwardDown()
70
+ {
71
+ Backward = true;
72
+ }
73
+ public void BackwardUp()
74
+ {
75
+ Backward = false;
76
+ }
77
+ public void RightRotateDown()
78
+ {
79
+ RightRotate = true;
80
+ }
81
+ public void RightROtateUp()
82
+ {
83
+ RightRotate = false;
84
+ }
85
+ public void LeftRotateDown()
86
+ {
87
+ LeftRotate = true;
88
+ }
89
+ public void LeftRotateUp()
90
+ {
91
+ LeftRotate = false;
92
+ }
93
+ }
15
94
  ```
95
+ そして、「public void」をそれぞれボタンから関連付けます。
16
96
 
17
97
  しかし、これではボタンの**EventTrigger**から見つけることができませんでした。
18
98
  また、「Game」では実行したときにボタンすら表示されませんでした。

2

タイトルの編集

2018/01/10 08:56

投稿

Yuki_Unity
Yuki_Unity

スコア129

title CHANGED
@@ -1,1 +1,1 @@
1
- チュートリアルをAndroidで再現したい - Multiplayer Networking
1
+ Androidでプレイヤーを移動させたい - Multiplayer Networking
body CHANGED
@@ -19,6 +19,8 @@
19
19
 
20
20
  どうすればAndroid,IOS向けに移動させることができるでしょうか?
21
21
 
22
+ もしくは、ボタンからではなく、他に良い移動手段ありますかね?
23
+
22
24
  ###環境
23
25
  Windows8.1
24
26
  Unity3d

1

詳細の追加

2018/01/09 09:32

投稿

Yuki_Unity
Yuki_Unity

スコア129

title CHANGED
@@ -1,1 +1,1 @@
1
- Unity Multiplayer Networking - チュートリアルをAndroidで再現したい
1
+ チュートリアルをAndroidで再現したい - Multiplayer Networking
body CHANGED
@@ -1,5 +1,6 @@
1
1
  ###実現したいこと
2
2
  [こちらの公式チュートリアル](https://unity3d.com/jp/learn/tutorials/s/multiplayer-networking)を参考にWindowsでのチュートリアルは終えたのですが、これをAndroidやIOSなどのモバイル端末で実現したいです。
3
+ 今はボタンでの操作がしたいのですがなかなかうまく行きません。
3
4
  ###したこと
4
5
  とりあえず自分で左右前後のボタンを作って
5
6
  [このページ](https://unity3d.com/jp/learn/tutorials/topics/multiplayer-networking/networking-player-movement?playlist=29690)のc#スクリプトを少し変えてやってみました。
@@ -14,11 +15,11 @@
14
15
  ```
15
16
 
16
17
  しかし、これではボタンの**EventTrigger**から見つけることができませんでした。
17
- また、ボタンすら表示されませんでした。
18
+ また、「Game」では実行したときにボタンすら表示されませんでした。
18
19
 
19
20
  どうすればAndroid,IOS向けに移動させることができるでしょうか?
20
21
 
21
22
  ###環境
22
23
  Windows8.1
23
24
  Unity3d
24
- Unity2017
25
+ Unity2017.1.1f1