2017-01-27 11 views
-1

임 종류로 마우스 위치에 객체를 이동하려고 플레이어.C++ Sfml 특정 양의 난이 기능을 만들었지 만 몇 가지 이유로 내가 단지의 오른쪽에있는 개체를 이동할 수 있습니다</p> <p>이 문제에 붙어의 모든 프레임

개체를 플레이어의 왼쪽으로 이동하려고하면 오른쪽으로 이동합니다.

int Speed = 8; 
int x = Player_x - Mouse_x; 
int y = Player_y - MOuse_y; 

float deg = atan(y/x); 

float erg_x = Speed * cos(deg); 
float erg_y = Speed * sin(deg); 

erg_x/y는 내가 객체를 이동 마지막에 사용하는 숫자 :

여기 내 접근 방식입니다.

제발 도와주세요 :)

답변

0

바와 같이 here 설명, atan는 제 4 사분면에서 작동합니다. 왼쪽으로가는 것은 두 번째 사분면을 포함하기 때문에, 이것은 효과가 없을 것입니다. 이와 같이

, 당신은

float deg = atan(y/x); 

float deg = atan2(y, x); 
을 변경할 수 있습니다