
학원에서 실습했던 게임 예제를 복습하던 중
종종 찾게 될 것 같아서 체력바 만드는 방법을 정리해 보았다.
시작! 🍙
1. Slider 만들기
1. 하이어라키창 우클릭 > UI > Slider
- 자동으로 캔버스 하위에 슬라이더가 생성된다.
2. Handle Slide Area는 사용하지 않을 거라 삭제!

2. 크기 조절
원하는 크기로 설정한다.
나는 Width: 150, Height: 40으로 설정

3. 색상 설정
Background: 어두운 회색
Fill: 연두색
4. 체력바 꽉 채우기
슬라이더의 값을 1로 올려도 슬라이더가 꽉 채워지지 않고 빈 공간이 남는다.
값이 0일 때는 오히려 체력이 남아있는 것처럼 보이는데
Fill Area의 Rect Transform이 Background보다 작기 때문이다.
1. 먼저 슬라이더의 value를 0으로 맞춘 뒤 Fill Area의 크기를 변경
- Left: 0, Right: 0

2. Fill의 Width값도 0으로 변경

5. 스크립트 작성
public class UIHealthBar : MonoBehaviour
{
// 체력바 슬라이더
public Slider _healthBar;
public void UpdateUI(float curHealth, float maxHealth)
{
// value = 남은체력/최대체력
_healthBar.value = curHealth / maxHealth;
}
}
6. 컴포넌트 추가
슬라이더에 방금 만든 스크립트를 추가하고
_healthBar에 슬라이더를 할당하면 끝!

참고: 내가 설정한 캔버스의 Render Mode
Screen Spce - Overlay: 캔버스가 화면 가장 위에 렌더링된다. 카메라와는 상관없이 항상 모든 것 위에 나타남
'Unity' 카테고리의 다른 글
| Unity 오브젝트 클릭해서 회전시키기 #Rotate #FixedUpdate() (1) | 2024.08.17 |
|---|---|
| Unity: .ttf 폰트를 TMP 폰트로 변경하는 방법 (0) | 2024.08.11 |
| Unity 오브젝트 자동으로 색상 변화시키기 #Color Lerp (0) | 2024.08.02 |
| Unity Ch7 - Collider, OnCollision, OnTrigger (0) | 2024.03.23 |
| Prototype4: 플레이어를 따라가는 몬스터, normalized, Time.deltaTime (0) | 2024.03.05 |