回答編集履歴
4
修正
answer
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
2.ConstraintsのFreeze Rotationにチェックを入れる
|
6
6
|
3.IsTriggerのチェックを外して物理演算の衝突で止める
|
7
7
|
|
8
|
-
詳細は下記記事
|
8
|
+
詳細は下記記事
|
9
9
|
https://qiita.com/_tybt/items/0e9605b7acc955078c64
|
10
10
|
|
11
11
|
**・方法2:キャラの向き1マス前に判定用のオブジェクトを置きそれを使って移動を止める**
|
3
修正
answer
CHANGED
@@ -8,9 +8,9 @@
|
|
8
8
|
詳細は下記記事等
|
9
9
|
https://qiita.com/_tybt/items/0e9605b7acc955078c64
|
10
10
|
|
11
|
-
**・方法2:キャラの向きに判定用のオブジェクトを置きそ
|
11
|
+
**・方法2:キャラの向き1マス前に判定用のオブジェクトを置きそれを使って移動を止める**
|
12
12
|
1.空のオブジェクトを新たに作成してCollider 2Dを設定
|
13
|
-
2.そのオブジェクトの位置がキャラの向いている方向に連動するようにする
|
13
|
+
2.そのオブジェクトの位置がキャラの向いている1マス前方向に連動するようにする
|
14
14
|
3.IsTriggerのチェックを入れ、これを使って移動前にオブジェクトの判定を行う
|
15
15
|
4.移動不可能なオブジェクトならばフラグなどを使って移動処理をおこなわせない
|
16
16
|
※OnTriggerEnter2Dのままで出来なくも無いがOnTriggerStay2Dの方が判定させ易いかもしれません
|
2
修正
answer
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
下記の3通りから出来そうなのを選んで下さい。
|
2
2
|
|
3
|
-
**・方法1**
|
3
|
+
**・方法1:物理演算の衝突で止める**
|
4
4
|
1.キャラとオブジェクトにCollider 2Dを設定(既に有るならばコレはおこなわない)
|
5
5
|
2.ConstraintsのFreeze Rotationにチェックを入れる
|
6
6
|
3.IsTriggerのチェックを外して物理演算の衝突で止める
|
@@ -8,16 +8,16 @@
|
|
8
8
|
詳細は下記記事等
|
9
9
|
https://qiita.com/_tybt/items/0e9605b7acc955078c64
|
10
10
|
|
11
|
-
**・方法2**
|
11
|
+
**・方法2:キャラの向きに判定用のオブジェクトを置きその判定で移動を止める**
|
12
12
|
1.空のオブジェクトを新たに作成してCollider 2Dを設定
|
13
13
|
2.そのオブジェクトの位置がキャラの向いている方向に連動するようにする
|
14
14
|
3.IsTriggerのチェックを入れ、これを使って移動前にオブジェクトの判定を行う
|
15
15
|
4.移動不可能なオブジェクトならばフラグなどを使って移動処理をおこなわせない
|
16
16
|
※OnTriggerEnter2Dのままで出来なくも無いがOnTriggerStay2Dの方が判定させ易いかもしれません
|
17
17
|
|
18
|
-
**・方法3**
|
18
|
+
**・方法3:2次元配列の要素判定で移動を止める**
|
19
|
-
1.マップ
|
19
|
+
1.マップ移動可否の情報を入れた二次元配列を作りクラスで保持しておく(int[][]配列)
|
20
|
-
※マップ
|
20
|
+
※マップ移動可否の情報とは「移動可能:0 移動不可:1」の様な数値
|
21
21
|
2.キャラ移動先の座標の二次元配列要素を参照する
|
22
22
|
3.移動不可能なオブジェクトならばフラグなどを使って移動処理をおこなわせない
|
23
23
|
|
1
修正
answer
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
下記の3通りから出来そうなのを選んで下さい。
|
2
|
+
|
1
3
|
**・方法1**
|
2
4
|
1.キャラとオブジェクトにCollider 2Dを設定(既に有るならばコレはおこなわない)
|
3
5
|
2.ConstraintsのFreeze Rotationにチェックを入れる
|