유니티 랜덤 함수 (Random), 정확하게 말해서 Random.Range() 함수는 비디오 게임에 우연성과 예측 불가능성을 추가하는 데 사용됩니다.

즉, 플레이어가 다음에 무슨 일이 일어날지 항상 예측할 수 없게 해 주기 때문에 게임을 더 흥미롭고 도전적으로 만들 수 있습니다.

비디오 게임에서 Random.Range() 함수를 사용하는 경우에 대한 몇 가지 예를 들어 보겠습니다.

임의의 적 스폰 지점 생성

게임에서 스폰할 적의 임의 위치를 생성할 수 있습니다. 이것은 플레이어가 적이 나타날 위치를 예측하기 어렵게 만드는 한편, 게임을 역동적이고 도전적으로 유지하는 데 도움이 될 수 있습니다.

무작위 파워업 생성

게임에서 파워업을 생성할지 여부를 무작위로 결정하고 파워업 생성위치도 임의로 지정할 수 있습니다.

적 행동에 무작위성 추가

적의 게임 내 행동 방식을 무작위로 결정할 수 있습니다. 예를 들어 Random.Range() 메서드를 사용하여 적의 공격 패턴을 무작위로 선택하거나 적이 플레이어를 쫓을지 아니면 후퇴할지 무작위로 결정할 수 있습니다.

이처럼 Random 함수는 비디오 게임에 다양성과 예측 불가능성을 추가하는 데 유용한 도구가 될 수 있으며 플레이어의 참여와 도전을 유지하는 데 도움이 될 수 있습니다.

유니티 랜덤 함수의 사용법

Random.Range() 함수(메서드)는 지정한 두 값(포함) 사이에서 임의의 정수나 실수를 생성하는 Unity의 Random 클래스 메서드입니다. 다음과 같은 구문이 있습니다.

int Random.Range(int min, int max);
float Random.Range(float min, float max);

Random.Range() 메서드는 무작위 정수가 생성되어야 하는 범위의 최소값과 최대값이라는 두 가지 인수를 사용합니다. 지정된 범위 내에서 임의의 정수나 실수를 반환하는데, 정수 타입의 경우 두번째 인자보다 1 작은 값까지 만을 반환한다는 점에 주의해야 합니다.

다음은 Random.Range() 메서드를 사용하여 1에서 100 사이의 임의의 정수를 생성하는 방법의 예입니다.

int randomInt = Random.Range(1, 101);
Debug.Log("Random integer: " + randomInt);

이 예제에서 Random.Range() 메서드는 1에서 100 사이의 임의의 정수를 생성하고 randomInt 변수에 할당합니다. randomInt 값은 무작위로 생성되기 때문에 코드를 실행할 때마다 달라집니다.

다음은 유니티 클래스에서 Random.Range()를 사용한 예제입니다.

using UnityEngine;

public class RandomExample : MonoBehaviour
{
    void Start()
    {
        // 1에서 100 사이의 랜덤 정수 생성. 마지막 숫자인 101은 제외
        int randomInt = Random.Range(1, 101);
        Debug.Log("Random integer: " + randomInt);

        // 0.0에서 10.0 사이의 랜덤 숫자(실수)생성
        float randomFloat = Random.Range(0f, 10f);
        Debug.Log("Random float: " + randomFloat);
    }
}

위의 코드를 실행하면 콘솔창에 대략 다음과 같은 결과가 나타납니다.

Random integer: 37
Random float: 7.85963

더 공부할 자료

유니티 C# 스크립트 작성에 대해 보다 심도 있는 공부를 원하시면 다음 링크를 체크해 보시기 바랍니다.

유니티 C# 프로그래밍 연습 (ebook)

“막 유니티를 배운 주니어 게임 프로그래머로서 자신의 힘으로 첫번 째 게임을 만들고 싶지만 어디서부터 시작해야 할지 막막한 분 계신가요? 이 책을 읽어 보세요. 간단한 게임이지만 게임 구현 전체 프로세스를 자세한 설명과 함께 제공합니다. 동영상 예제까지 들어 있어요!”

더 공부할 자료 - 개발 능력 다양화를 위한 학습의 필요성

유니티 엔진의 대안으로서, 인디 개발자들에게 선풍적인 인기를 끌고 있는 엔진이 바로 고도 엔진입니다. 혹시 고도 엔진을 배워 보려고 하신다면, 다음의 온라인 강의를 체크해 보시기 바랍니다.

초보자를 위한 고도엔진 게임 개발 입문