광산김가네

[모각코][Unity/유니티]0804TIL_기본맵 구성_player,land 스프라이트 설정(2d 탑뷰) 본문

TIL(Today I Learn)

[모각코][Unity/유니티]0804TIL_기본맵 구성_player,land 스프라이트 설정(2d 탑뷰)

어둠의 그림자 2021. 8. 6. 16:44

1. 스프라이트 디자인

1-1) 시행착오

처음엔 저번회차 모각코 게시글에 올렸던바와 같이, 1)게임플레이 시점은 2d 쿼터뷰 2)스타듀밸리 디자인 활용 에 초점을 맞춰서 화면 구성을 해보았다.

하지만 각각의 문제가 있었다.

1) 2d 쿼터뷰 <-스타듀밸리 혹은 보편적인 디자인들은 2d "탑뷰"에 맞춰서 설계되므로 디자인을 구하기 어렵다..

2) 스타듀밸리 스프라이트 시트 <- 아래의 사진과 같이, 규칙적으로 배치되어있는게 아니고 시트가 커서, automatic slice 기능이 먹히지않았다ㅠㅠ

(그래서 시트중 필요한 스프라이트라도 살리려고 크기별로 자를수있는 기능을 사용했는데, 쉽지않았다ㅠㅠ

결국 드래그하면 영역이 선택된다는걸 알게되서 아래 그림과 같이 하나하나 드래그해서 영역을 잡아주었다..!

하지만 이렇게 해도 벛꽃나무같은 스프라이트의 경우, 영역에 겹치는 이미지들이 있는데 중복되는게 제거되지않아서

 저런 이미지들은 살릴수없었다)

진짜 하나하나 다 선택해서 거의 1시간걸린거같다..

그래서 1)<- 2인칭 탑뷰로 수정했고 2)<-하나하나 영역을 선택해서 잘라서 사용하기로 했다.

1-2) 타일맵 기능 시도

보통 타일맵을 사용하면 맵을 구성할때 있어서 반복적인 작업을 줄일수있기때문에 많이들 사용하는기능이다

그래서 유튜브를 참고해서 해보려고했는데

이런식으로..이어지는 스프라이트를 배치해도 크기가 안맞았다.

크기를 맞게 수정하면 게임화면이 너무 작아지는 시행착오를 계속 보다가 타일맵 기능말고,

이런식으로 에셋에서 드래그앤 드랍하는 식으로.. 구성해보았다. 

1-3) 2d collider 설정

전에 만들었던 플랫포머 게임의 경우, 2d 콜라이더의 영역을 설정할때 스프라이트 전체를 감싸주면 됐다.

 

이런식으로

하지만 해당 게임의 경우 

검정색으로 표시된 부분만 2d collider로 설정하면된다.

사진에 표시된 영역밖에만 나가지않으면 된다. 따라서 랜드에서 플레이어가 딛는 부분을 2d collider로 감싸주지않아도 되는것이다.

이런 부분에서 플랫포머게임과 굉장히 달랐다.

2. Player 설정 

기본적인 움직임 설정

저번 2d 플랫포머에서는 1)rigidbody2d 라는 컴포넌트를 사용했었고 2)horizontal key(양옆 방향키)만을 사용해서 c#스크립트를 작성했었다.

하지만 이번 프로젝트는 1) 위의 1-3)에서 기재한바와 같이 플레이어 이동 양상이 다르다(rigidbody2d 사용할수없음) 2)vertical key도 사용해야함(위아래방향키)라는 점에서의 차이점이 있었다.

(스크립트를 작성할때 https://www.youtube.com/watch?v=EdsVx9yN2Cc 해당영상을 참고했다.)

<최종결과물>

2d collider를 설정했으나 제대로 적용되진않아서, 영역상관없이 player에 해당하는 스프라이트가 돌아다니긴한다..

 

[다음시간 목표]

https://keidy.tistory.com/search/2D%20RPG

 

케이디의 티스토리

유니티 2D 3D 강좌, 쯔꾸르 강좌 관련 블로그입니다. 이상세계, 패러독스, 인귀역설 단간론파 X : 절망 게획의 시작

keidy.tistory.com

해당 블로그를 참고하여, 6번째에 해당하는 게시글까지 참고하여 맵이동까지 구현해보려고한다

+ 2d collider 적용안되는 문제 <- 3번째 게시글 참고하여 해결