0
유니티에서 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