0
나는 C + +로 공격 보트 게임을 만들었고 화면 주위에 마우스를 따라 보트에 문제가 있습니다. 나의 계획은 360도 회전을하는 데 약 4 초가 걸리며 보트를 마우스처럼 따라 다니는 것입니다 (느린 회전, 즉 360도 회전하는 데 약 4 초가 걸리는 반면 순간적으로 회전하는 것이 아닙니다).C++에서 보트 애니메이션의 회전
보트가 마우스를 따라 보트가 잘못된 방향으로 회전하고 360도 회전하므로 마우스가 화면 왼쪽에있을 때 버그가 발생합니다 (마우스가 -x 축을지나 자마자) 마우스를 따르는 대신.
이것은 보트 선회에 사용되는 코드입니다.
angle = atan2(delta_y, delta_x) * 180.0/PI;
//Rotate the boat towards the mouse and
//make the boat turn more realistically
if (angle - rotate > 0) {
rotate += 1.0f; // turns left
} else if (angle - rotate < 0) {
rotate -= 1.0f; // turns right
}
if (angle - rotate >= 360.0f) {
rotate = 0.0f;
}`