1. 스프라이트 셰이프 사용하기

Closed는 벽이 다 둘러쌓여진 상태를 말하고, 우리는 둘러쌓인 벽 안 쪽으로 내용을 채워넣을 것이기 때문에
Closed를 넣는다
또 Inspector를 들어가보면 Profile이 있는데, 이 기본 Profile을 변경해야하기 때문에
새로 만들 것이다

이제 아까 본 Inspector의 profile에다가 새로 만든 스프라이트 프로파일을 넣는다

이제 Snow Porfile에서 Texture에는 blue-fill을 채우고 Sprites에는 Snow-tile-low-res를 넣으면
자연스러운 눈밭이 완성된다...

이 스프라이트 모양을 수정하면 Edit Spline을 건드리면 되는데
점을 잡고 움직일 수 있고, 빈 공간을 클릭해 새로운 점을 만들 수도 있다
이렇게 잡고 움직이면서 여기저기 점을 옮기다보면...

이상하게도 생겼지만 어쨌든 만들었다
추후에 필요하다면 점프할 곳을 더 추가하던가하면 되니까 지금은 여기서 마무리 하겠다
2. 엣지 콜라이더 사용하기
우리가 만든 비탈길... ... 이라고 할 수 없는 무언가지만 아무튼 이걸 선택한 뒤에
inspector에서 Add Compenent, Edge Collider 2D를 추가해주면
우리가 만든 길을 따라 콜라이더가 추가가 된다
다음으로는 공을 만들어서 비탈길을 내려가도록 해볼 것이다
이 부분은 과제로 내주신 부분이었는데, 우선 혼자 해보도록 하겠다
우선 공을 만들기위해 Hierachy 우클릭, Create를 통해 2d circle을 만들어준다
여기서 한 번 더 생각해서 땅과 부딪혀서 굴러야하니까
Collider를 추가해줬다...
그리고 물리 구현을 위해 Rigidbody 2D까지 적용하면 끝이다!
하지만 강사님은 조금 다른 방법으로 하신 것 같다
바로 Dynamic Sprite를 쓰는 방법인데, 이 방법으로 하면 콜라이더와 리지드바디가 적용되어 있기 때문에
훨씬 빠르고 편하다
구 외의 모양을 만들 수 있는지는 아직 모르지만 유용한 방법인 것 같다
이렇게 구를 만들어서 굴려보면 돌돌돌 잘 굴러가는데 사실 잘 보면 한 가지 문제가 있다

바로 공이 지표면보다 살짝 떠 있다는 것이다
이건 콜라이더의 오프셋 문제인데, 콜라이더가 얼마나 떨어져있는지를 나타내는 게 오프셋이다
그리고 이 오프셋을 조정하면 눈길과 닿게 할 수 있는데...
.
.
.
나는 안된다!
아무 변화도 일어나지 않아서 문제를 찾아나섰다
버전 문제로 인한 오류였던 것 같은데
콜라이더를 하나하나 표면에 붙이다가 화나서 눌러봤더니 갑자기 됐다
아무튼 이런 문제가 생기면 저장하고 껐다키는 버릇을 들여봐야겠다
아무튼...하고 넘어가려고 하자마자 다음 부분에서도 문제가 생겼는데

바로 나는 Tangent Mode를 조정을 못해서 그런지...
Height기능이 없었다
알고보니 내가 Edit Spline을 누르고 점 선택을 안해서 그런 것이었다

모든 점이 노란색이 되도록 전부 선택하면 Height가 뜨고, 눈이 쌓인 정도를 조절할 수 있게 된다
적당한 부분까지 조절해주도록 하자.
나는 추후에 이 게임을 도트로도 구현해보고싶다고 생각했는데
이런 경우 가끔 맞닥뜨릴 수 있는 문제가 바로 텍스쳐가 제대로 채워지지 않는 문제이다
채워지는 안쪽 부분인 blue-fill을 눌러보면 Wrap Mode라는 게 있는데
이게 만약 Clamp로 되어 있으면 다른 모습으로 나타나곤한다
채워질 타일도, 눈 타일도 Repeat로 되어있어야한다. 주의하자!
3. 시네머신 카메라
시네머신은 여러 대의 카메라를 활용할 수 있는데, 그 카메라에 적용되는 규칙을 만들 수 있다
먼저 메인 카메라에 시네머신 브레인을 장착하면 메인 카메라의 행동을 정의할 수 있고,
이후 브레인 안에서 Virtual Cameras를 만들 수 있다. 이 가상의 카메라(Virtual Cameras)는
빠르게 갈 때 쓰는 용, 느리게 갈 때 쓰는 용, 클로즈용 등등 여러 용도로 나누어 사용할 수 있다
이 놀라운 기능을 직접 구현해보자
시네머신은 기본적으로 Package라 파일을 샥샥 찾아보면 찾을 수 있다
하지만 패키지가 전부 들어있으면 내용이 너무 방대해서 직접 다운로드할 수 있게 해놨다
시네머신도 그 중 하나이다
시네머신을 깔기위해 설정을 조금 건들여보자.
먼저 상단의 Window -> Package Manager를 클릭한다

그런 뒤에 Package Manager에서 Packages: In Project를 Unity Registry로 변경한다
이후 검색창에서 Cinemachine이라고 검색해서 Install을 진행하면 설치는 끝이다
이제 좌측 Hierachy 창에서 우클릭 > Cinemachine을 찾아서 Virtual Camera를 추가해준다
우리가 적용할 카메라는 공을 따라가는 것이기 때문에
새로 만든 시네머신 카메라의 Inspector에서 Body를 Framing Transposer로 변경할 것이다

이후 Follow를 Ball로 바꿔주면 카메라가 우리가 만든 공을 졸졸 따라다니게 된다
어째서인지 화면은 좀 다르지만(빨간 부분이 없음) 아무튼 작동하니 넘어가도록 하겠다
-> (이건 Body를 클릭하지 않아서 안 보이는 거였다)
4. 캐릭터 설정
캐릭터를 붙일 차례다!
이전에 구 외의 모양은 만들지 못하는 걸까 궁금했었는데 그에 대한 답이 나왔다
바로 이번에는 공을 캐릭터로 만들어볼 것이다
공 모양인 이유는 스프라이트 렌더러에서 원으로 되어있기 때문이다
Inspector에서 Sprite Renderer를 삭제하면 원이 남지 않고, 충돌 영역만 남는다
물론 이것도 필요없다 그러니 삭제하자
그 다음에 캐릭터의 하체를 갖고와서 자식 관계로 위치하게끔 한다

근데 이렇게 그냥 두면 문제가 무엇이냐,
바로 중심과 하체 위치가 맞지 않는다는 것이다.
하체도 별도의 위치를 갖고있기 때문인데, 하체의 위치를 X,Y (0,0)로 조정하면 해결된다
그리고 상체도 갖고와서 잘 맞춰주면

아무튼 완성이 거의 된다
이 상태에 부모 개체(Barry라는 이름을 지음)에 Capsule collider를 적용시킨 뒤 보드 모양에 맞추면...
이쁘게 잘 굴러가는 건 아니고 바닥에 착지한다
이건 여기까지만 하고 특정 지점까지 가면 충돌하도록 설정해야하니까
아까와 같은 방식으로 머리에 콜라이더를 지정해줄거다
이건 보드를 타다가 머리가 부딪히면 (당연히 안 좋다) 어떤 일이 일어나게끔 하기 때문에
트리거 설정도 해줄거다
'유데미 > C# Unity 2D' 카테고리의 다른 글
| Snow Boarder - 3 (42강-완) (0) | 2025.09.25 |
|---|---|
| Snow Boarder - 2 (35-41강) (1) | 2025.08.31 |
| Delivery Driver - 3 (21-강의 완) (3) | 2025.08.20 |
| Delivery Driver - 2 (16-20강) (2) | 2025.08.16 |
| Delivery Driver - 1 (9-15강) (4) | 2025.08.12 |