質問編集履歴

3

回答による追記

2021/07/11 13:47

投稿

tride
tride

スコア68

test CHANGED
File without changes
test CHANGED
@@ -255,3 +255,19 @@
255
255
  }
256
256
 
257
257
  ```
258
+
259
+
260
+
261
+ ### 追記_2021/07/11_22:43
262
+
263
+ Bongoさんのコードを実装してみた結果です。
264
+
265
+ 白立方体のRigitbody>抗力を45にしたところ、マウスの早い動きでも貫通しなくなって想定した動きにかなり近いものになりました。
266
+
267
+ (抗力が低いと反対方向に跳ねすぎて飛んでいった)
268
+
269
+ しかし、以下Gifを見てもらうと分かるかと思いますが、ビョンビョンビョンとかなり高速にバウンドしてしまいます。
270
+
271
+ できればもう少し跳ねないのが理想ですが、悩ましい所。
272
+
273
+ ![実装](acab6d2b8d1409c75e7369b02b9e9f5d.gif)

2

記入漏れを加筆

2021/07/11 13:47

投稿

tride
tride

スコア68

test CHANGED
File without changes
test CHANGED
@@ -1,4 +1,4 @@
1
- 表題の通りではありますが、オブジェクト(画像中の白立方体)をドラッグ&ドロップした時に、壁(画像中の青立方体)を通り抜けしないようにしたいです。
1
+ 表題の通りではありますが、オブジェクト(白立方体)をドラッグ&ドロップした時に、壁(青立方体)を通り抜けしないようにしたいです。
2
2
 
3
3
  現在のコードでは、カーソル操作と違い、マウスポジションにオブジェクトが瞬間移動するので、通り抜けしてしまう原因自体は理解しているのですが、ここから改善策が思い浮かばずに行き詰っています。
4
4
 
@@ -12,15 +12,15 @@
12
12
 
13
13
  **目的**
14
14
 
15
- ・オブジェクト(画像中の白立方体)をドラッグ&ドロップした時に、壁(画像中の青立方体)を通り抜けしないようにしたい
15
+ ・オブジェクト(白立方体)をドラッグ&ドロップした時に、壁(青立方体)を通り抜けしないようにしたい
16
-
16
+
17
- ・最終的には、この壁(画像中の青立方体)で四方を囲ったり、通路を作りたい。
17
+ ・最終的には、この壁(青立方体)で四方を囲ったり、通路を作りたい。
18
18
 
19
19
 
20
20
 
21
21
  **困ってる事**
22
22
 
23
- ・オブジェクト(画像中の白立方体)をドラッグ&ドロップした時に、壁(画像中の青立方体)を通り抜ける(埋まる)。
23
+ ・オブジェクト(白立方体)をドラッグ&ドロップした時に、壁(青立方体)を通り抜ける(埋まる)。
24
24
 
25
25
 
26
26
 
@@ -30,7 +30,9 @@
30
30
 
31
31
  ・下記ソースコードによるマウスによるドラッグ&ドロップでは、現在位置に瞬間移動しているので、このやり方がそもそもダメなのでは?
32
32
 
33
- ・壁(画像中の青立方体)Mathf.Clamp
33
+ ・壁(青立方体)にスクリプトを適用し、オブジェクト(白立方体)のMathf.Clampを反転してやればできるかもしれないが、範囲の反転方法が分からない。
34
+
35
+
34
36
 
35
37
 
36
38
 

1

誤記修正

2021/07/11 05:54

投稿

tride
tride

スコア68

test CHANGED
File without changes
test CHANGED
@@ -36,7 +36,7 @@
36
36
 
37
37
  **実施した事**
38
38
 
39
- 他回答で、「使うとしたらrigidbody.velocity~」とあったので、"壁に触れたらrigidbody.velocityを0にする"としたが、その後に移動できなくなる。
39
+ 類似の質問で、「使うとしたらrigidbody.velocity~」とあったので、試しに"壁に触れたらrigidbody.velocityを0にする"としたが、その後に移動できなくなる。
40
40
 
41
41
   →なんらかのアルゴリズムで実現できそうだけど、アルゴリズムの案が浮かばない。
42
42
 
@@ -72,7 +72,7 @@
72
72
 
73
73
 
74
74
 
75
- 他回答:[https://teratail.com/questions/139884](https://teratail.com/questions/139884)
75
+ 類似質問:[https://teratail.com/questions/139884](https://teratail.com/questions/139884)
76
76
 
77
77
  参考サイト:[https://www.ame-name.com/archives/4631](https://www.ame-name.com/archives/4631)
78
78