Unity 유니티

Unity 유니티 c# 게임 매니저를 활용한 간단한 점수 증가 구현

지나팩 2024. 11. 29. 17:30

 

이번 글에서는 Unity에서 점수 시스템을 구현하는 방법을 간단한 코드와 함께 살펴보겠습니다. 점수를 갱신하고 Text UI를 통해 화면에 표시하는 방법을 단계별로 알아보도록 하겠습니다.

 

 

1. 새로운 오브젝트 생성  후 Add Component로 GameManager스크립트를 생성하여 추가.

 

 

2. 하이어라키에서 점수를 표현해 줄 Text 오브젝트 생성.

 

 

 

 

 

 

 

 

 

3. Text 오브젝트의 Rect Transform anchors 프리셋을 middle top으로 설정 후 위치 초기화.

선택

 

 

 

4. 화면 위쪽에 배치를 해둔 텍스트가 잘 보이도록 위치 수정.

 

 

5. 텍스트 옵션 수정. 색상은 원하는 색상으로.

 

 

 

 

 

 

 

 

 

 

 

6. GameManager 스크립트 작성.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
using UnityEngine;
using UnityEngine.UI;
 
public class GameManager : MonoBehaviour
{
    // 현재 점수
    private int score = 0;
 
    // 점수를 표시하는 UI 텍스트
    public Text scoreText;
 
    private void Start()
    {
        //하이어라키에 생성한 text 컴포넌트를 가져옴
        scoreText = GameObject.Find("ScoreText").GetComponent<Text>();     
    }
 
    // 점수를 증가시키는 메소드
    public void AddScore(int points)
    {
        score += points; // 점수 증가
         if (scoreText != null)       
        {
            scoreText.text = "Score: " + score.ToString();
        }    
    }
 
 
}
 
cs

 

 

7. 버튼 오브젝트를 하나 생성 후 버튼을 누르면 AddScore가 호출되도록 작업.

하이어라키 창에서 오른쪽 마우스 후 버튼 생성

 

8. 버튼에 메소드 등록. 게임 매니저 오브젝트를 OnClick 해당 부분에 드래그 앤 드랍.

 

 

 

 

 

 

 

 

 

 

 

9. 호출할 메소드 선택. 추가될 점수 기입.

 

 

10. 실행하여 테스트.

 

 

 

이처럼 Unity에서 점수 시스템을 구현하는 것은 생각보다 간단합니다. 점수를 갱신하는 로직과 이를 UI에 반영하는 기능을 결합하면, 플레이어의 몰입도를 크게 향상시킬 수 있습니다. 자신의 게임에 맞게끔 수정하여 활용해보시길 바랍니다.