개인 프로젝트

Text UI에 대사 추가해서 Prefab

hanui1210 2024. 9. 16. 13:41
 

Unity에서 Text UI에 대사를 추가하고 이를 프리팹(Prefab)으로 만드는 방법은 다음과 같습니다.

1. Text UI 생성

  1. Canvas 생성: 유니티 씬(Scene)에서 오른쪽 클릭 후 UI > Canvas를 선택하여 새로운 캔버스를 생성합니다.
  2. Text UI 생성: Canvas 안에 텍스트를 추가하기 위해 UI > Text를 선택하여 텍스트 UI를 생성합니다.

2. Text 컴포넌트에 대사 추가

  1. Text UI를 선택한 후, Inspector 창에서 Text 컴포넌트를 확인합니다.
  2. Text 필드에 원하는 대사를 작성합니다.

3. Text 동적으로 업데이트 (스크립트 사용)

대사를 동적으로 변경하려면 스크립트를 추가하여 대사를 제어할 수 있습니다.

  1. 스크립트 추가: Scripts 폴더를 만들고, 그 안에 C# 스크립트를 추가합니다.
    • 예를 들어 DialogueManager.cs라는 스크립트를 만듭니다.
  2. 스크립트 작성: 아래와 같이 Text 컴포넌트를 참조하여 대사를 변경하는 코드를 작성합니다.
using UnityEngine;
using UnityEngine.UI;

public class DialogueManager : MonoBehaviour
{
    public Text dialogueText;  // Text UI를 연결할 변수

    // 대사를 변경하는 함수
    public void SetDialogue(string dialogue)
    {
        dialogueText.text = dialogue;
    }
}
  1. Text 연결: 만든 스크립트를 Text 오브젝트에 추가한 후, Inspector 창에서 DialogueManager 스크립트의 dialogueText에 해당 Text 컴포넌트를 드래그하여 연결합니다.

4. 프리팹으로 저장하기

  1. 프리팹화: Text UI가 포함된 오브젝트를 프로젝트 창으로 드래그하여 프리팹으로 저장합니다.
  2. 이제 해당 프리팹을 다른 씬이나 프로젝트 내에서 재사용할 수 있습니다.

5. 대사 변경 예시 (프리팹 사용)

다른 스크립트나 이벤트에서 대사를 변경할 때는 아래와 같은 방식으로 사용합니다.

 

public class Example : MonoBehaviour
{
    public DialogueManager dialogueManager;

    void Start()
    {
        // 대사를 동적으로 변경
        dialogueManager.SetDialogue("안녕하세요! 새로운 대사입니다.");
    }
}