0
私はUnityでブレークアウトスタイルのゲームをC#を使用して作業しており、ボールが移動する角度/方向を変えずに時間の経過とともにボールのスピードを上げる最良の方法を知りたかったパドルと衝突した後、同じ方向/角度(例えば45度)でボールを移動させたい。方向を一定に維持しながらユニティを増やすユニコーン
まず、パドルの左側のボックスコライダーに添付されている以下の簡単なコードを使用して、ボールを必要に応じて左に移動させます。これは正しい角度になりますが、時間の経過とともにスピードを上げたかったのですが、どうすればよいか分かりませんでした。
void OnCollisionEnter2D(Collision2D col) {
if (col.gameObject.tag == "ball") {
col.gameObject.GetComponent<Rigidbody2D>().velocity = new Vector2 (-10f, col.gameObject.transform.position.y);
}
}
最大速度に到達したい、または継続的に高速化したいですか? –
速度に触れないでください。代わりにAddForceを使用して、次に何が起こるかを物理学者に把握させてください。時間をかけてスピードアップするには、ボールのUpdate()メソッドを使用します。例えば。 if(isBallSpeeding)[ballGOのRB2D] .AddForce(amount、type); –
は絶えず速くなります – Kaz