質問編集履歴
1
プレイヤーと床の衝突時に実現させたい挙動を変更した。
test
CHANGED
@@ -1 +1 @@
|
|
1
|
-
Unity kinematic設定のプレイヤーが床
|
1
|
+
Unity kinematic設定のプレイヤーが床と接触したときに色が変わるようにしたい
|
test
CHANGED
@@ -4,11 +4,13 @@
|
|
4
4
|
|
5
5
|
プレイヤーは空中を浮遊させたいのでRigidBody2DのBodyTypeをkinematicにしています。
|
6
6
|
|
7
|
-
また床も重力
|
7
|
+
また床も重力のせいで下に落ちないようにkinematicにしています。
|
8
8
|
|
9
|
-
プレイヤーは矢印キーで上下左右に動くように設定し
|
9
|
+
プレイヤーは矢印キーで上下左右に動くように設定し、床と接触したときにプレイヤーの色が青になるようにCollisionモードのOnCollisionStay2Dで制御しようと試みたのですが上手くいかず、色が変わりません。
|
10
10
|
|
11
|
-
ちなみにプレイヤーと床両方にPolygon collider 2Dをアタッチして、IsTriggerの項目にチェックは入れていません。
|
11
|
+
ちなみにプレイヤーと床両方にPolygon collider 2Dをアタッチして、IsTriggerの項目にチェックは入れていません。そして、プレイヤーをkinematicからdynamicに変更すると上手くいって青になります。
|
12
|
+
|
13
|
+
どうしたらkinematicのまま青に変えることができるでしょうか。
|
12
14
|
|
13
15
|
教えていただけたら嬉しいです。
|
14
16
|
|
@@ -42,8 +44,6 @@
|
|
42
44
|
|
43
45
|
Rigidbody2D rigid2D;
|
44
46
|
|
45
|
-
float progression;
|
46
|
-
|
47
47
|
|
48
48
|
|
49
49
|
// Start is called before the first frame update
|
@@ -72,9 +72,7 @@
|
|
72
72
|
|
73
73
|
key = -1;
|
74
74
|
|
75
|
-
progression = 0.1f;
|
76
|
-
|
77
|
-
transform.Translate(-
|
75
|
+
transform.Translate(-0.1f, 0.0f, 0.0f);
|
78
76
|
|
79
77
|
}
|
80
78
|
|
@@ -82,25 +80,19 @@
|
|
82
80
|
|
83
81
|
key = 1;
|
84
82
|
|
85
|
-
progression = 0.1f;
|
86
|
-
|
87
|
-
transform.Translate(
|
83
|
+
transform.Translate(0.1f, 0.0f, 0.0f);
|
88
84
|
|
89
85
|
}
|
90
86
|
|
91
87
|
if(Input.GetKey(KeyCode.UpArrow)) {
|
92
88
|
|
93
|
-
progression = 0.1f;
|
94
|
-
|
95
|
-
transform.Translate(0.0f,
|
89
|
+
transform.Translate(0.0f, 0.1f, 0.0f);
|
96
90
|
|
97
91
|
}
|
98
92
|
|
99
93
|
if(Input.GetKey(KeyCode.DownArrow)) {
|
100
94
|
|
101
|
-
progression = 0.1f;
|
102
|
-
|
103
|
-
transform.Translate(0.0f, -
|
95
|
+
transform.Translate(0.0f, -0.1f, 0.0f);
|
104
96
|
|
105
97
|
}
|
106
98
|
|
@@ -130,11 +122,13 @@
|
|
130
122
|
|
131
123
|
{
|
132
124
|
|
133
|
-
|
125
|
+
if(collision.gameObject.name == "Floor"){
|
126
|
+
|
127
|
+
GetComponent<Renderer>().material.color = Color.blue;
|
128
|
+
|
129
|
+
}
|
134
130
|
|
135
131
|
}
|
136
|
-
|
137
|
-
}
|
138
132
|
|
139
133
|
```
|
140
134
|
|