[Unity]04.서바이벌 슈터 따라하기 #4 - 캐릭터 체력과 UI 만들기

안녕하세요 유랑입니다.



오늘은 캐릭터 체력과 UI에 대해서 알아보겠습니다.




1. 서바이벌 슈터



서바이벌 슈터는 유니티에서 제공하는 3d 캐주얼 fps게임입니다.

튜토리얼이 제공되어 있어서 공부겸 글을 올려보겠습니다^^






1-1) 캐릭터 체력 만들기 - ㉠체력바


체력을 표시해 줄 UI를 만들어 보겠습니다.

Canvas를 추가한 후 Scale With Screen Size를 1280 x 720으로 맞춰주세요.

Canvas Group 컴포넌트를 추가해 줄텐데 UI요소를 한 곳에서 다룰 때 사용합니다.

해당 기능은 사용하지 않으니 언체크 해주겠습니다.(UI를 터치할 때 사용)






Canvas밑으로 빈 오브젝트를 생성한 후 이름을 HealthUI로 변경해 주겠습니다.

Rect Transform은 Canvas를 포함해서 UI를 다룰 때 자동으로 생성됩니다.

트랜스폼값을 다음과 같이 구성해 주세요.





씬 뷰를 2D모드로 변경한 뒤 트랜스폼과 피벗값이 해당 위치에 있는걸 확인할 수 있습니다.

핸드폰이나 PC화면의 해상도에 따라 그 중심으로 이미지가 줄어들거나 늘어나게 됩니다.





이미지를 생성한 뒤 Heart로 이름을 변경, 이미지와 크기를 각각 적용해 주세요.

하트모양으로 플레이어의 체력을 의미합니다.







Slider를 이용해서 체력바를 구성해 보겠습니다.

Slider의 Value 값에 따라서 현재 체력을 표현해 줄 수 있습니다.

Max Value과 Value 값을 100으로 변경해 주세요!!!





 Value값에 따라서 체력이 늘어나거나 줄어드는걸 확인할 수 있습니다^^





체력의 색깔이 허전하죠?

Fill 오브젝트의 Image => Color의 색깔을 초록색으로 변경해 주세요.






1-2) 캐릭터 체력 만들기 - ㉡피격 효과


플레이어가 피격당했을 시 사운드뿐만 아니라 화면에서도 피격 효과가 일어나도록 구성해 주겠습니다.

Image 오브젝트를 추가한 후 이름과 트랜스폼, 색깔을 다음과 같이 변경해 주세요.








해당 이미지가 화면을 가득 채워주었습니다.

이제 여기서 해당 이미지를 비활성화하거나 알파값을 변경하여 피격처리 효과적용이 가능합니다.

저는 알파값 변경을 통해서 피격 효과 기능을 구성해 주겠습니다.

알파값을 0으로 변경해 주세요.





코드상에서 알파값 변경을 이용해서 피격처리 기능을 구현해 줄것 입니다.






1-3) 적 공격 적용하기 - ㉠Player Health 스크립트


PlayerHealth 스크립트를 Player 오브젝트에 추가해 주세요.

데미지에 따른 피격효과와 죽는 애니메이션 처리 기능을 담고 있습니다.






데미지를 입으면 DamageImage의 알파값 변경을 통해서 피격 처리 효과가 가능합니다.







스크립트에 Slider와 DamageImage, Player Death사운드를 각각 적용해 주세요.






1-4) 적 공격 적용하기 - ㉡Enemy Attack 스크립트


적이 공격할 수 있도록 Enemy Attack 스크립트를 적용해 주겠습니다.

플레이어와의 충돌처리에 따른 공격과 데미지 적용의 내용을 담고 있습니다.













2. 마무리



오늘 강의는 여기까지입니다.

서바이벌 슈터를 따라하면서 캐릭터 체력과 UI를 만들어 보았습니다.

다음 시간에는 플레이어가 적을 공격하는 기능에 대해서 다뤄보겠습니다.

감사합니다.




수업자료: https://github.com/YouRang12/-Tistory-Unity---Extra-3D-




댓글

Designed by JB FACTORY