ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Land Of Memories - Tile Map (2)
    유니티 프로젝트/RPG-2D

     

    안녕하세요. 

     

    "세상에서 하나뿐인" 저만의 맵이 완성되었습니다.

     

    두둥!

     


     

    기존 Water, Grass, Ground 세 가지를 조합해서 만들어 주었습니다.

     

    이후 동작 테스트를 해보던 중 해결하지 못한 것들이 있어서 하나씩 해결을 해주었는데요.

     

     

    첫 번째로 맵 밖으로 플레이어가 나가지 못하게

     

    외각 Collider를 타일맵으로 입혀 주었습니다.

     

     

     

    현재 Gird는 총 3가지가 있습니다.

    1. 기본 지형.

    2. Collider를 가진 지형.

    3. 투명화 된 Collider를 가진 지형.


    두 번째 로는 맵 밖으로 카메라가 이동되는 걸 방지하기 위해 로직을 걸어 주었습니다.

     

    기존 "CameraFollow2D" 의 스크립트에서 작성을 하였습니다.

     


     

    카메라가 움직일수 있는 최소, 최대 값입니다.

     

    인스펙터창에서 테스트를 하며 값을 맞추려고 [SerializeFiled]로 선언해 주었습니다.


     

    Mathf.Clamp 함수는 값을 지정된 최솟값과 최댓값 사이로 제한하는 데 사용됩니다.

     

    if-else 문으로 고정을 하려 했다가, 기억이 나서 사용을 해보았습니다.

     

     

    첫 번째 인자는 제한하고자 하는 실제 값입니다.

     

    다음과 같이 targetPosition의 값은 x와 y가 플레이어의 포지션에 값을 받아오고 있습니다.

     

    두 번째 인자와 세 번째 인자는 각 최소, 최댓값입니다.

     

    즉 첫 번째 인자가 허용되는 최소와 최대 값을 정해주며,

     

    minX 보다 작을 경우 minX를 반환.

    maxX 보다 클 경우 maxX를 반환.

    minX ~ maxX 사이에 있으면 그대로 반환을 합니다.

     

     

    예시로 다음과 같이도 많이 사용한다고 합니다.

     


     

     

     

    감사합니다.

     

    댓글

김효겸 / Tel. 010-7735-0580 / E-mail. dollzzang2@hanmail.net