◈GameMaker의 좌표
GameMaker에서 좌표는 가로가 X축 세로가 Y축입니다.
(▲ X축과 Y축의 좌표)
왼쪽 방향은 X-값
오른쪽 방향은 X+값
위쪽 방향은 Y-값
아래쪽 방향은 Y+값
(▲ X축과 Y축의 좌표)
GameMaker에서 방향(direction)은 우측 0도에서 시작해서 반시계방향으로 값이 올라갑니다.
(▲ 방향)
이것은 간단한 부분이지만 GameMaker에서 매우 중요한 부분이기도 합니다.
◈GameMaker의 기본 이동
이동방법에는 매우 다양한 방법을 사용합니다.
먼저 가장 기초적인 이동방법은 x와 y좌표를 제어하여 직접 이동시키는 방법입니다.
x축 오른쪽으로 이동시키려면
x + = 값
반대편으로 이동시키려면
x - = 값
이렇게 사용할 수 있습니다.
y축도 마찬가지입니다. 위쪽으로 이동시키려면,
y - = 값
아래쪽으로 이동시키려면
y + = 값
설정할 수 있습니다.
x+=5;//x축 오른쪽으로 5픽셀 이동시킴 |
(▲ X축과 Y축의 좌표를 이용하여 이동)
또한, 방향(direction)과 속도(speed)를 제어하여 이동시키는 방법입니다.
direction = 각도
speed = 속도
이렇게 각도와 속도를 지정하여 이동시킬 수 있지요.
direction=45; speed=5; |
위와 같이 하면 우측 상단을 향해 이동합니다.
(▲ direction 방향으로 speed 값의 속도만큼 이동)
speed 값으로 이동시키면 정지하기전까지 계속 이동하게 되는데, 정지하고 싶다면 speed 값을 0으로 설정하면
이동을 멈출 수 있습니다.
수평방향과 수직방향으로 값에 지정된 속도로 이동시킬 수 있는 방법도 있습니다.
수평방향은,
hspeed = 값
(▲ hspeed)
수직방향은,
vspeed = 값
(▲ vspeed)
이렇게 각각 값을 설정하여 이동 시키게 됩니다.
hspeed=-5; vspeed=-5; |
이동할 때 사용하면 수평으로 -5만큼 이동하고, 수직으로 -5만큼 이동하기 때문에 좌측 상단을 향해 x,y좌표가
이동 합니다. 만약 수평방향으로만 이동하려면 hspeed 값만 적용시키면 되겠지요. 반대로 수직방향으로
이동시키려면 vspeed 값만 설정하면 됩니다.
hspeed 와 vspeed 값으로 이동하면, speed 값으로 이동하는 것처럼 정지하기 전까지 계속 이동하게 되는데,
정지하고 싶다면 hspeed, vspeed 값을 각각 0으로 설정하면 이동을 멈출 수 있습니다(참고로 hspeed, vspeed는 speed 값을 0으로 설정해도 멈출 수 있습니다).
게임메이커에서는 중력을 설정할 수 있는 아래의 내장 변수가 있습니다.
gravity_direction = 방향
gravity = 값
이와 같이 설정할 수 있지요.
(▲ 중력)
예를 들어,
gravity_direction=270; gravity=0.3; |
위와 같이 사용하면 물체가 중력을 받아 땅으로 떨어지듯, 아래방향을 향해 이동합니다.
이동 방식은 스텝마다 지정된 gravity값만큼 계속 더해 이동 시키는 것입니다.
1 step = 0.3
2 step = 0.6
3 step = 0.9
...
이런식으로 이동하는 속도를 점점 증가시켜 중력 방향으로 이동하게 해요.
그리고 이동하는 와중에 마찰력에 대한 설정을 할 수가 있는데,
friction = 값
변수를 사용하면 됩니다.
(▲ friction은 이동 속도를 점차 줄이도록 만들어 미끌어지는 듯한 효과를 줄 수 있음)
이것을 사용하면 이동하는 속도를 점점 감소시켜 정지하게 만듭니다.
friction=0.1; |
위와 같이 이동할 때 friction을 사용하면 마찰력을 받는 이동 물체처럼 이동속도를 점점 감소 시켜 천천히
멈추게 합니다.
'GameMaker강좌[GM8] > 기초강좌' 카테고리의 다른 글
[게임메이커강좌-기초]스프라이트(sprite)및 마스크(mask) (4) | 2013.04.13 |
---|---|
[게임메이커강좌-기초]오브젝트(object)와 인스턴스(instance) (9) | 2013.04.05 |
[게임메이커강좌-기초]기본 이동대하여 (10) | 2013.02.08 |
[게임메이커강좌-기초]리소스 구성 (1) | 2013.02.04 |
[게임메이커강좌-기초]게임메이커에 대해 (11) | 2013.02.04 |
댓글