質問編集履歴

3

追記説明

2021/07/27 02:39

投稿

DY2peace
DY2peace

スコア20

test CHANGED
File without changes
test CHANGED
@@ -146,7 +146,11 @@
146
146
 
147
147
   いただいた動画のように一つずつの発生方法について、ご教示いただけると幸いです。
148
148
 
149
+ ### 追記 ロープの巻き取りについて
149
150
 
151
+  「ホースリールのように」と申し上げましたが、実際は回転部分はダミーで、ただアニメーションで回すだけで、根本部分から今回のロープ発生を考えています。
152
+
153
+ ![イメージ説明](ff4c56b12746ca2e7b78303bd752faec.png)
150
154
 
151
155
 
152
156
 

2

本日分を追記

2021/07/27 02:39

投稿

DY2peace
DY2peace

スコア20

test CHANGED
File without changes
test CHANGED
@@ -138,9 +138,13 @@
138
138
 
139
139
  ```
140
140
 
141
+ ### 追記(2021年7月26日)
141
142
 
143
+  距離2m時点では、1個発生するのですが、 4mほど動かした結果、Instantiateが止まらず、ダダ洩れるような状態になってしまいました。
142
144
 
145
+ ![イメージ説明](4722fbdd47efc3a115c27c56eff89615.png)
143
146
 
147
+  いただいた動画のように一つずつの発生方法について、ご教示いただけると幸いです。
144
148
 
145
149
 
146
150
 

1

ご回答いただけなかったので、知りたいことの的を絞りました。

2021/07/26 12:19

投稿

DY2peace
DY2peace

スコア20

test CHANGED
@@ -1 +1 @@
1
- 長尺ロ延長・収縮の再現
1
+ instantiateを使ったボ連結
test CHANGED
@@ -1,4 +1,4 @@
1
- ### 実現したいこと
1
+ ### 背景
2
2
 
3
3
   長尺ロープ再現用に計算負荷を減らすことを目的としています。
4
4
 
@@ -6,47 +6,145 @@
6
6
 
7
7
  ![イメージ説明](47b1b726ad2098045ef7ec7e4174473d.gif)
8
8
 
9
- ※AssetStore『ObiRope』を使用
9
+ ※AssetStore『ObiRope』の画像
10
10
 
11
11
 
12
12
 
13
- ### 前提条件
13
+ ###今回やろうとしていること
14
14
 
15
- 1.ConfigrableJointで前側のボールと接続。RigidBody/Collider付
15
+  基準となるボール(JyakanBall)の初期位置からの移動量(2m毎)に移動したときに
16
16
 
17
-  発生したボールにConfigurableJointをうまくつなげてあげられる方法をご教示ただける幸いです。
17
+ 初期位置からボールをinstantiateで発生させ、 ジョイントで連結させたいと考えてます。
18
-
19
- ![イメージ説明](c18b261a824ab3619400bf41b2d346b8.png)
20
18
 
21
19
 
22
20
 
23
- 2.↑キーロープ延長、↓キーでロープ収縮
21
+  これでロープ形状を作ってみようと思います
24
-
25
-  いったん仮でこのキーとさせてください。
26
22
 
27
23
 
28
24
 
29
- 3.ボールカウント機能
30
25
 
26
+
27
+ ###知りたいこと
28
+
31
-  特定の個数(例えば10個)のボールが発生ロープの硬を変更しいと考えてます。ロープ硬さ変化はConfigurableJointのAngular Motionの角度制限量調整します。
29
+ instantiateで発生させ物体にすでに発生物体へConfigurableJointで連結させる方法を知りたいです。
32
30
 
33
31
 
34
32
 
35
- 4.できれば、バインドを使って、ボールを隠してロープ状にしたい
36
-
37
- ⇒これは以前教えていただいた方法で、自分でなんとか検討してみます。 
33
+ ![イメージ説明](5ccd908941f0beaa39a30ac856935220.png)
38
34
 
39
35
 
40
36
 
41
- ### 試したこと
42
37
 
43
-  当初Asset『ObiRope』で対応を考えていたのですが、
44
38
 
45
- ・延長・収縮際、ぶるぶる震えてしまうこと(物理接触させなくても発生。)
39
+ ### 現在作成途中C#
46
40
 
47
- ・途中で任意プ硬さを変えられない
41
+ 上下矢印キで一定速度で前後動せ、初期位置からの移動距離magnitude
48
42
 
43
+ ```
44
+
45
+   public GameObject JyakanBall;
46
+
47
+ public GameObject FirstBall ;//最初に出てくるボール。こいつの動きを基準にする。
48
+
49
+ public Transform FirstPosiBase; // ボール発射初期位置
50
+
51
+ public float speed = 10; // ボールの速度
52
+
53
+ private int counter = 0;//ボール採番用
54
+
55
+
56
+
57
+ private float Distance ;
58
+
59
+
60
+
61
+ // Start is called before the first frame update
62
+
63
+ Rigidbody Rb;
64
+
49
- という点で断念しました。
65
+ void Start()
66
+
67
+ {
68
+
69
+ Rb = FirstBall.GetComponent<Rigidbody>() ;
70
+
71
+  
72
+
73
+   Vector3 FirstPosition = FirstPosiBase.transform.position;//ボールの発生する位置の設定
74
+
75
+     Vector3 Direction = FirstBall.transform.forward;//初期ボール位置のZ軸方向
76
+
77
+
78
+
79
+  FirstBall.transform.position = FirstPosition;//初期位置に初期ボールを移動させる
80
+
81
+
82
+
83
+ }
84
+
85
+
86
+
87
+ // Update is called once per frame
88
+
89
+ void FixedUpdate()
90
+
91
+ {
92
+
93
+ Vector3 BallPosition = FirstBall.transform.position;
94
+
95
+ Vector3 FirstPosition2 = FirstPosiBase.transform.position;
96
+
97
+
98
+
99
+ Distance = (FirstPosition2 - BallPosition).magnitude;
100
+
101
+ Debug.Log (Distance) ;
102
+
103
+
104
+
105
+
106
+
107
+
108
+
109
+ if(Input.GetKey(KeyCode.UpArrow))
110
+
111
+ {
112
+
113
+ Rb.velocity = new Vector3(0,0,speed);
114
+
115
+ }
116
+
117
+
118
+
119
+ else if(Input.GetKey(KeyCode.DownArrow))
120
+
121
+ {
122
+
123
+ Rb.velocity = new Vector3(0,0,-speed);
124
+
125
+ }
126
+
127
+
128
+
129
+ else
130
+
131
+ {
132
+
133
+ Rb.velocity = Vector3.zero;
134
+
135
+ }
136
+
137
+
138
+
139
+ ```
140
+
141
+
142
+
143
+
144
+
145
+
146
+
147
+
50
148
 
51
149
 
52
150