Game Programming

[게임 프로그래밍] 2D 세계에서 캐릭터의 대각선 이동

니니스 2008. 7. 14. 19:24

2D 상에서..

캐릭터가 이동할때 동서남북으로는 이동시키기는 쉽습니다.

그냥 캐릭터의 x, y좌표 값만 변화 시켜주면 되니깐요.

하지만 대각선으로 이동하게 되면 이 방법만으로는 움직임이 이상해지는 것을 볼수 있을껍니다.

그럴때 사용하는 함수가 바로..

atan2();

입니다.











사용할때는..

atan2( y축 증가량 , x축 증가량 );

을 해주면 이 함수는 위 그림에서 보이는 빨간색 막대의 크기( = 캐릭터의 이동량 )을 리턴해 줍니다.

캐릭터의 x, y 좌표에 구해진 이동량만 더해주면..

대각선 이동은 끝!