質問編集履歴
2
「解決しました」のAddForceしてる行が抜けてたので追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -134,4 +134,6 @@
|
|
134
134
|
|
135
135
|
Vector3 dir = new Vector3(0, Mathf.Sin(angle * Mathf.Deg2Rad), Mathf.Cos(angle * Mathf.Deg2Rad));
|
136
136
|
|
137
|
+
rb.AddForce(obj.transform.forward + dir * throwForcePow);
|
138
|
+
|
137
139
|
```
|
1
「解決しました」を追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -117,3 +117,21 @@
|
|
117
117
|
射出速度を計算して飛ばす方法をインターネットで見つけたのですが、場合によって算出が不可能な場面があったのでその方法は使えませんでした。
|
118
118
|
|
119
119
|
[参考](https://qiita.com/_udonba/items/a71e11c8dd039171f86c) https://qiita.com/_udonba/items/a71e11c8dd039171f86c
|
120
|
+
|
121
|
+
|
122
|
+
|
123
|
+
### 解決しました。
|
124
|
+
|
125
|
+
回答者様から三角関数とやらを使い new Vector3(0,0.3f,0.3f)を変えれば良いとの答えを頂きましたので
|
126
|
+
|
127
|
+
「Unity sin cos 回転」と調べたところ以下のように置き換えたらちゃんと動きました。
|
128
|
+
|
129
|
+
```
|
130
|
+
|
131
|
+
// 30度上に飛ばす
|
132
|
+
|
133
|
+
float angle = 30f;
|
134
|
+
|
135
|
+
Vector3 dir = new Vector3(0, Mathf.Sin(angle * Mathf.Deg2Rad), Mathf.Cos(angle * Mathf.Deg2Rad));
|
136
|
+
|
137
|
+
```
|