본문 바로가기

유니티/유니티 엔진

[유니티] fillAmount

728x90
반응형

 Filled Type 이미지 생성

 

유니티의 fillAmount 함수를 사용하면 UI를 원하는 만큼 채울 수 있다.

 

체력바, 혹은 시간제한 등을 나타낼 때 유용하게 사용할 수 있을 것 같다.

 

fillAmount 함수를 사용하기 위해서는 Canvas 위의 Image 하나가 필요하다.

 

Image를 하나 생성해준 후 Inspector 창에서 Source Image를 할당해주면 ImageType 이 나온다.

 

 

 

 

 

 

여기서 Image Type을 Filled 로 선택해준다.

 

Filled 선택을 하면 Fill Method, Fill Origin,  Fill Amount 이 나오는데 이름처럼

Fill Method 는 채우는 방식, Fill Origin 은 채워지는 지점, Fill Amount는 채워진 정도를 의미한다.

 

 

Fill Method를 Horizontal로 선택하여 채우기 방식을 수평으로 설정한다면 체력바 등을 만들 수 있을 것이고

Radial 360을 선택한다면 360도 돌아가는 타이머 등을 만들 수 있을 것이다.

 

 

 

 

 

 

 

 

 

 

 fillAmount

 

fillAmount 함수처럼 Canvas 위의 UI와 관련된 함수는 UnityEngine.UI에 내장되어 있다.

 

따라서 UnityEngine.UI를 참조하기 위한 코드를 작성해야한다.

 

using UnityEngine.UI;

 

 

 

fillAmount 함수는 Image 컴포넌트에 포함되어 있으므로 다음과 같이 작성할 수 있다.

 

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class NewBehaviourScript : MonoBehaviour
{

    // Start is called before the first frame update
    void Start()
    {
        
    }

    // Update is called once per frame
    void Update()
    {
        gameObject.GetComponent<Image>().fillAmount = 0.5f;
    }
}

 

 

 

 

 

 

 

 

 

 

 

 

 결과

 

 

 

 

 

 

Image 가 반토막이 난 것을 확인 할 수 있다.

 

 

 

 

728x90
반응형