본문 바로가기
엔트리/엔트리 RPG만들기 기본

엔트리 RPG 게임만들기2. 장애물을 인식시키는 방법

by 할거없네 2019. 12. 11.

 

 

 

이번에는 장애물을 인식하는 방법입니다.

장애물이라는 것은 벽이나 땅을 의미합니다.

여러가지 방법이 있지만 기본적인 게임만들기 이기 때문에 렉이 다소 발생하지만 만들기 쉬운 '스프라이트 인식'으로 하겠습니다.

나중에 조금 더 고급적인 방법으로, 좌표로 인식하는 것을 만들 예정입니다. (이 경우 렉이 거의 없고 매우 최적)

 

먼저 장애물 오브젝트를 만듭니다.

적당히 그려줍니다. 여기서 한가지 주의해야 할 점은 '두께'입니다.

두께가 너무 얇으면 벽을 인식할 수 없을지도 모릅니다.

캐릭터의 최대 이동속도를 생각하여 만들어 주는 것이 좋습니다.

이 장애물은 인식하는 것은 속도만큼 이동 한 후에 닿았는지 확인하는 것이기 때문에 캐릭터가 너무 빠른 나머지 벽을 넘어가버리면 안되기 때문입니다.

캐릭터의 크기와 속도에 따라서 벽의 두께를 적당히 둘러주면 됩니다.

캐릭터가 너무 작아도 벽은 인식할 수 없을수도 있습니다.

 

다음은 엔트리봇을 코딩합니다.

지난 시간까지는 엔트리봇을 키보드로 움직이게 만들었었습니다. 속도만큼 이동하도록 되어 있는데요...

 

전체적인 블록은 위와 같습니다.

이 블록은 크게 2가지의 기능으로 나눌 수 있습니다.

첫번째 이동에서는 키보드를 누르면 속도 변수가 증감합니다.

이 값은 캐릭터가 다음에 이동해야 하는 좌표값을 정해주는 것이라고 보시면 됩니다.

그 다음에 이동을 한 다음에 벽에 닿으면 뒤로 되돌아 오도록 하는 것입니다.

 

이것은 사람이 눈으로 보이는 것보다 매우 빨리 되기 때문에 실제로 벽에 닿았다가 뒤로 가는 듯한 모습은 보이지 않습니다.

 

 

 

 

여기서 한가지 주의해야 할 점은

장애물을 너무 복잡하게 만들지 말야 합니다.

가능하면 직선으로 단순하게 표현하는 것을 권장합니다.

복잡한 그림일수록 렉이 유발합니다.

또한 장애물이 닿지 않는 부분은 '투명'해야 합니다.

그래서 투명한 이미지를 반드시 써야 합니다.

 

 

코딩 확인하기:

http://naver.me/xPwNCmRu

 

Entry

 

playentry.org

 

완성작보기:

http://naver.me/FgzNCvLF

 

Entry

 

playentry.org

 

댓글