유니티

유니티 UI 이미지 변경 스크립트

작성자 정보

  • 마스터 작성
  • 작성일

컨텐츠 정보

본문

1. 준비물

바꿀 이미지를 처리할 변수, 배열이어도 상관없음

public Sprite[] numberImages;

 

변경할 게임오브젝트 변수, 배열이어도 상관없음

public GameObject firstTome;

public GameObject SecondTome;

 

 

2.유니티에서 스크립트 추가 후 오브젝트 및 이미지 추가하기

캡처.PNG

 

 

3.코드 처리

firstTome.GetComponent<Image>().sprite = numberImages[0];

SecondTome.GetComponent<Image>().sprite = numberImages[1];

 

연결한 게임오브젝트에서 GetComponent<Image>().sprite를 사용하여 이미지를 변경 할 수 있다.

numberImages[0]에는 바꿀 이미지의 배열이 담겨 있어 내가 원하는 이미지의 넘버를 넣어 바꿀 수 있다.

 

 

4.전체 코드

using System;

using System.Collections;

using System.Collections.Generic;

using UnityEngine;

using UnityEngine.UI;


public class GameManager : MonoBehaviour

{

    public GameObject firstTome;

    public GameObject SecondTome;


    public Sprite[] numberImages;


    [SerializeField]

    private float time = 300.0f;

    int intTime;


    void Update()

    {

        //시간 감소

        time -= Time.deltaTime;

        intTime = (int)time /5;

        string strTime = intTime.ToString();

        for(int i = 0; i<strTime.Length; i++)

        {

            char n = strTime[i];

            if (strTime.Length == 1)

            {

                firstTome.GetComponent<Image>().sprite = numberImages[0];

                SecondTome.GetComponent<Image>().sprite = numberImages[strTime.Length -1];

            }

            else

            {

                if(i == 0) firstTome.GetComponent<Image>().sprite = numberImages[Convert.ToInt32(n.ToString())];

                if(i == 1) SecondTome.GetComponent<Image>().sprite = numberImages[Convert.ToInt32(n.ToString())];

            }

        }

    }

}



using UnityEngine.UI;을 반드시 해야 합니다.

관련자료

댓글 0
등록된 댓글이 없습니다.

최근글


새댓글


알림 0