回答編集履歴

11

更新

2018/12/29 02:55

投稿

Hawn
Hawn

スコア1222

test CHANGED
@@ -104,6 +104,8 @@
104
104
 
105
105
  `public int interval`に変更してインスペクタから変更出来るようにすると良いです。
106
106
 
107
+
108
+
107
109
  ---
108
110
 
109
111
  ランタイム中の適用に関しての追記3は質問の先の段階なので削除しました。

10

更新

2018/12/29 02:55

投稿

Hawn
Hawn

スコア1222

test CHANGED
@@ -103,3 +103,7 @@
103
103
  直接コードから`30`の部分を書き換えて調整するか、
104
104
 
105
105
  `public int interval`に変更してインスペクタから変更出来るようにすると良いです。
106
+
107
+ ---
108
+
109
+ ランタイム中の適用に関しての追記3は質問の先の段階なので削除しました。

9

更新

2018/12/29 02:55

投稿

Hawn
Hawn

スコア1222

test CHANGED
@@ -80,7 +80,17 @@
80
80
 
81
81
 
82
82
 
83
+ ### 追記1:Optionを2個以上に増やす場合
84
+
85
+
86
+
87
+ 1.上記の状態から更にシーン上にOption2を追加した場合、**Option1**に`OptionMoveControll`をアタッチしてインスペクタから`optionObj`にはOption2を入れて下さい。
88
+
89
+ 2.これを繰り返せばオプションの数は制限無く増やせます。
90
+
91
+
92
+
83
- ### 追記1:Optionとの間隔を変える
93
+ ### 追記2:Optionとの間隔を変える
84
94
 
85
95
 
86
96
 
@@ -93,13 +103,3 @@
93
103
  直接コードから`30`の部分を書き換えて調整するか、
94
104
 
95
105
  `public int interval`に変更してインスペクタから変更出来るようにすると良いです。
96
-
97
-
98
-
99
- ### 追記2:Optionを2個以上に増やす場合
100
-
101
-
102
-
103
- 1.シーン上にOption2を追加した場合、**Option1**に`OptionMoveControll`をアタッチしてインスペクタから`optionObj`にはOption2を入れて下さい。
104
-
105
- 2.これを繰り返せばオプションの数は制限無く増やせます。

8

追記3は先の段階なので削除

2018/12/29 02:51

投稿

Hawn
Hawn

スコア1222

test CHANGED
@@ -80,10 +80,6 @@
80
80
 
81
81
 
82
82
 
83
- 追記3は質問内容の次の段階の上、現状だと難度高く感じると思います。
84
-
85
-
86
-
87
83
  ### 追記1:Optionとの間隔を変える
88
84
 
89
85
 
@@ -107,43 +103,3 @@
107
103
  1.シーン上にOption2を追加した場合、**Option1**に`OptionMoveControll`をアタッチしてインスペクタから`optionObj`にはOption2を入れて下さい。
108
104
 
109
105
  2.これを繰り返せばオプションの数は制限無く増やせます。
110
-
111
-
112
-
113
- ### 追記3:ゲーム再生中にオプションを増やして追随をさせる場合
114
-
115
-
116
-
117
- ここは今の習熟度で文章だけだと失敗すると思いますが一応書いておきます。
118
-
119
- 2パターンあります。
120
-
121
-
122
-
123
- **・Optionを生成する毎にOptionMoveControllをアタッチする方法**
124
-
125
-
126
-
127
- 1.PrefabからOptionを`Instantiate`する際に`AddComponent<OptionMoveControll>()`でOptionMoveControllを**追随させる側のオブジェクト**にアタッチします。
128
-
129
- 例:最初のオプション生成であればPlayerにアタッチして下さい。
130
-
131
- 2.コード内から**追随させる側**の`optionObj`に生成したオプションを代入して下さい。
132
-
133
- 3.Playerを動かせば追随します。
134
-
135
-
136
-
137
- **・シーン上のPlayerとProject内のPrefab化したOptionに最初からOptionMoveControllをアタッチしておく方法**
138
-
139
-
140
-
141
- 1.nullエラーが発生し得るので`optionObj.transform.localPosition = playerPosition[0];`を`if(optionObj != null) optionObj.transform.localPosition = playerPosition[0];`に変更します。
142
-
143
- 2.シーン上のPlayerとProject内にPrefab化したOptionにOptionMoveControllを取り付けます。
144
-
145
- これでOptionを生成する毎に最初からOptionMoveControllが付いています。
146
-
147
- 3.コード内から**追随させる側**の`optionObj`に生成したオプションを代入して下さい。
148
-
149
- 4.Playerを動かせば追随します。

7

更新

2018/12/29 02:47

投稿

Hawn
Hawn

スコア1222

test CHANGED
@@ -114,7 +114,7 @@
114
114
 
115
115
 
116
116
 
117
- ここは今のレベルで文章だけだと失敗すると思いますが一応書いておきます。
117
+ ここは今の習熟度で文章だけだと失敗すると思いますが一応書いておきます。
118
118
 
119
119
  2パターンあります。
120
120
 
@@ -130,7 +130,7 @@
130
130
 
131
131
  2.コード内から**追随させる側**の`optionObj`に生成したオプションを代入して下さい。
132
132
 
133
- 3.間違っていなければPlayerを動かせば追随します。
133
+ 3.Playerを動かせば追随します。
134
134
 
135
135
 
136
136
 
@@ -138,7 +138,7 @@
138
138
 
139
139
 
140
140
 
141
- 1.nullが発生し得るので`optionObj.transform.localPosition = playerPosition[0];`を`if(optionObj != null) optionObj.transform.localPosition = playerPosition[0];`に変更します。
141
+ 1.nullエラーが発生し得るので`optionObj.transform.localPosition = playerPosition[0];`を`if(optionObj != null) optionObj.transform.localPosition = playerPosition[0];`に変更します。
142
142
 
143
143
  2.シーン上のPlayerとProject内にPrefab化したOptionにOptionMoveControllを取り付けます。
144
144
 
@@ -146,4 +146,4 @@
146
146
 
147
147
  3.コード内から**追随させる側**の`optionObj`に生成したオプションを代入して下さい。
148
148
 
149
- 4.間違っていなければPlayerを動かせば追随します。
149
+ 4.Playerを動かせば追随します。

6

更新

2018/12/29 02:45

投稿

Hawn
Hawn

スコア1222

test CHANGED
@@ -78,7 +78,9 @@
78
78
 
79
79
  上記が問題無く動作すれば追記1,2に進んで下さい。
80
80
 
81
+
82
+
81
- 追記3は現状だと難度高く感じると思います。
83
+ 追記3は質問内容の次の段階の上、現状だと難度高く感じると思います。
82
84
 
83
85
 
84
86
 

5

更新

2018/12/29 02:44

投稿

Hawn
Hawn

スコア1222

test CHANGED
@@ -76,6 +76,12 @@
76
76
 
77
77
 
78
78
 
79
+ 上記が問題無く動作すれば追記1,2に進んで下さい。
80
+
81
+ 追記3は現状だと難度高く感じると思います。
82
+
83
+
84
+
79
85
  ### 追記1:Optionとの間隔を変える
80
86
 
81
87
 
@@ -92,15 +98,13 @@
92
98
 
93
99
 
94
100
 
95
- ### 追記2:Optionが複数場合
101
+ ### 追記2:Optionを2以上に増やす場合
96
102
 
97
103
 
98
104
 
99
- 1.上の続きでシーン上にOption2を追加した場合、Option1にOptionMoveControll.cs付けてインスペクタ上の`optionObj`にはOption2を入れて下さい。
105
+ 1.シーン上にOption2を追加した場合、**Option1**`OptionMoveControll`アタッチしてインスペクタから`optionObj`にはOption2を入れて下さい。
100
106
 
101
- 2.Playerを動かせばPlayerにOption1が追随してOption1にOption2が追随します。
102
-
103
- 3.これを繰り返せばオプションの数は特に制限無く増やせます。
107
+ 2.これを繰り返せばオプションの数は制限無く増やせます。
104
108
 
105
109
 
106
110
 

4

更新

2018/12/29 02:40

投稿

Hawn
Hawn

スコア1222

test CHANGED
@@ -73,3 +73,71 @@
73
73
 
74
74
 
75
75
  シーンのオブジェクト配置やPlayerの移動制御の方法によっては変な動きすると思うのでそれが発生したら教えて下さい。
76
+
77
+
78
+
79
+ ### 追記1:Optionとの間隔を変える
80
+
81
+
82
+
83
+ `int interval`で間隔を決めています。
84
+
85
+ ここの数値が大きくなれば距離が離れ小さくすれば距離が短くなります。
86
+
87
+
88
+
89
+ 直接コードから`30`の部分を書き換えて調整するか、
90
+
91
+ `public int interval`に変更してインスペクタから変更出来るようにすると良いです。
92
+
93
+
94
+
95
+ ### 追記2:Optionが複数個の場合
96
+
97
+
98
+
99
+ 1.上の続きでシーン上にOption2を追加した場合、Option1にOptionMoveControll.csを付けてインスペクタ上の`optionObj`にはOption2を入れて下さい。
100
+
101
+ 2.Playerを動かせばPlayerにOption1が追随してOption1にOption2が追随します。
102
+
103
+ 3.これを繰り返せばオプションの数は特に制限無く増やせます。
104
+
105
+
106
+
107
+ ### 追記3:ゲーム再生中にオプションを増やして追随をさせる場合
108
+
109
+
110
+
111
+ ここは今のレベルで文章だけだと失敗すると思いますが一応書いておきます。
112
+
113
+ 2パターンあります。
114
+
115
+
116
+
117
+ **・Optionを生成する毎にOptionMoveControllをアタッチする方法**
118
+
119
+
120
+
121
+ 1.PrefabからOptionを`Instantiate`する際に`AddComponent<OptionMoveControll>()`でOptionMoveControllを**追随させる側のオブジェクト**にアタッチします。
122
+
123
+ 例:最初のオプション生成であればPlayerにアタッチして下さい。
124
+
125
+ 2.コード内から**追随させる側**の`optionObj`に生成したオプションを代入して下さい。
126
+
127
+ 3.間違っていなければPlayerを動かせば追随します。
128
+
129
+
130
+
131
+ **・シーン上のPlayerとProject内のPrefab化したOptionに最初からOptionMoveControllをアタッチしておく方法**
132
+
133
+
134
+
135
+ 1.nullが発生し得るので`optionObj.transform.localPosition = playerPosition[0];`を`if(optionObj != null) optionObj.transform.localPosition = playerPosition[0];`に変更します。
136
+
137
+ 2.シーン上のPlayerとProject内にPrefab化したOptionにOptionMoveControllを取り付けます。
138
+
139
+ これでOptionを生成する毎に最初からOptionMoveControllが付いています。
140
+
141
+ 3.コード内から**追随させる側**の`optionObj`に生成したオプションを代入して下さい。
142
+
143
+ 4.間違っていなければPlayerを動かせば追随します。

3

更新

2018/12/29 02:32

投稿

Hawn
Hawn

スコア1222

test CHANGED
@@ -30,13 +30,13 @@
30
30
 
31
31
 
32
32
 
33
- List<Vector3> playerPotion = new List<Vector3>();
33
+ List<Vector3> playerPosition = new List<Vector3>();
34
34
 
35
35
  void Start()
36
36
 
37
37
  {
38
38
 
39
- playerPotion.Add(transform.localPosition);
39
+ playerPosition.Add(transform.localPosition);
40
40
 
41
41
  }
42
42
 
@@ -44,21 +44,21 @@
44
44
 
45
45
  {
46
46
 
47
- if (playerPotion[playerPotion.Count - 1] != this.transform.localPosition)
47
+ if (playerPosition[playerPosition.Count - 1] != this.transform.localPosition)
48
48
 
49
49
  {
50
50
 
51
- playerPotion.Add(transform.localPosition);
51
+ playerPosition.Add(transform.localPosition);
52
52
 
53
53
 
54
54
 
55
- if (playerPotion.Count > interval)
55
+ if (playerPosition.Count > interval)
56
56
 
57
57
  {
58
58
 
59
- optionObj.transform.localPosition = playerPotion[0];
59
+ optionObj.transform.localPosition = playerPosition[0];
60
60
 
61
- playerPotion.RemoveAt(0);
61
+ playerPosition.RemoveAt(0);
62
62
 
63
63
  }
64
64
 

2

更新

2018/12/28 13:55

投稿

Hawn
Hawn

スコア1222

test CHANGED
@@ -69,3 +69,7 @@
69
69
  }
70
70
 
71
71
  ```
72
+
73
+
74
+
75
+ シーンのオブジェクト配置やPlayerの移動制御の方法によっては変な動きすると思うのでそれが発生したら教えて下さい。

1

更新

2018/12/28 09:33

投稿

Hawn
Hawn

スコア1222

test CHANGED
@@ -1,4 +1,6 @@
1
- まずオプション一つで想定した動きをするのか確認したいため下記内容試して下さい。
1
+ まずオプション一つで想定した動きをするのか確認したい為、
2
+
3
+ 下記内容試して下さい。
2
4
 
3
5
 
4
6