• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

이동,3강 강좌에 질문있습니다.

22.04.21 15:43 작성 조회수 291

0

1.

지금 타일별로 정수형(int)으로 이동하고, 맵도 이동가능한 지역,불가능한 지역 0,1 정수형(int)으로 따로 값을 저장해서 처리하고 있는데

만약에 실수형(float)으로 구현할때는 어떤식으로 구현하나요?

1칸식 딱딱하게 움직이는거보다 좀더 세밀하게 움직이고 충돌처리하는 프로젝트는

클라을 믿고 서버에 위치값만 보내야만 할까요? 그게 구현하기 편하긴 하지만 어떻게 구현하는지 궁금하네요

2.

기본적으로 유니티를 써봐서 3강 유니티 강좌는 빼고 듣고 있습니다.

7강좌 오니까 따로 코드를 짜놓으신게 있으시더군요. 코드를 보니까 전체적인 흐름 몇몇 코드는 왜이렇게 했는지 코드 의도? 것도 잘 모르겠더라구요, 생소한 문법도 몇몇 보이고

실무기준으로 코드를 만드시니 비경험자 입장에서는 조금 이해학 어렵네요 3강을 들어보는게 좋을까요?

 

답변 1

답변을 작성해보세요.

1

1.
온라인 게임이 크게 2 종류 있는데
보통 충돌 판정이 있어야 하는 게임 (ex. 리니지)는 그리드 단위로 이동합니다.
반면 [세밀하게 움직이면서 충돌하는 프로젝트]는, 적어도 MMO에선 본적이 없습니다.
테라도 와우도 충돌이 없고 있더라도 벽 충돌같이 클라에서 판별하는 기본적인 충돌만 있고
유닛간 충돌은 구현하지 않습니다 (못합니다)

2.
유니티 구조가 처음보면 이해하기 어려울 수 있는데
이전에 크래프톤에 근무하면서 배운 구조라
개인적으로 UI 작업할 때 굉장히 용이해서 좋아합니다.
저렇게 작업한 이유에 대해 궁금하시다면 강의가 도움이 될 수 있습니다.

카카누님의 프로필

카카누

질문자

2022.04.21

1번 질문에 대해 보충 질문이 있습니다

다른 MMORPG를 보면

로아,와우처럼 움직여보면 7강의 프로젝트와 달리

미세하게 움직이고(참새눈물만큼 바로 옆에 이동 클릭을 할때) 유저와 충돌시 유저 크기에 맞게 동그라게 판정이 되는데 이 같은 경우는 Gird를 세밀하게 해서 그런가요?

+ 추가 질문

2d는 Tile맵에서 갈수 있는곳 없는곳을 받아오는데

3d 게임은 맵 정보를 어떻게 받아오나요?

로아는 안해봤지만 와우는 기본적으로 충돌이 없고
근접하면 공격이 가능한 것은 공격 사정거리가 있기 때문이지 충돌의 개념과는 다릅니다.
Grid를 세밀하게 하는 것은 리니지2M 같은 게임이고,
기본적으로 경험상 모든 경우를 종합해보면 [Grid = 충돌] 필요 입니다.

3D 게임은 여러가지 방법이 있는데 이전 프로젝트에선
3D 게임도 일정 거리마다 쪼개서 타일을 받아온 경우도 있었습니다.
평균적인 지형 높이를 ㅁ 형태로 받아와서 연산을 했는데,
물론 클라만큼 정밀하게 판별할 수는 없지만 러프한 체크를 담당했습니다.