Unity 매뉴얼 스크립팅 API
이 문서는 Unity의 스크립팅 API에 대한 기본적인 이해를 돕기 위해 작성되었습니다. Unity는 게임 개발을 위한 매우 강력한 엔진으로, 다양한 기능을 제공합니다. 이 문서에서는 Unity API의 주요 개념과 사용 예제를 소개하겠습니다.
스크립팅 API란?
스cripting API는 Unity에서 스크립트를 작성할 때 사용할 수 있는 기능과 인터페이스를 제공합니다. 이를 통해 개발자는 게임 로직, UI, 사용자 상호작용 등을 구현할 수 있습니다.
주요 클래스 및 기능
클래스 | 설명 |
---|---|
MonoBehaviour |
모든 스크립트의 기본 클래스. 게임 오브젝트의 동작을 정의. |
GameObject |
게임 안에 존재하는 모든 객체를 나타냄. |
Transform |
오브젝트의 위치, 회전, 크기를 정의. |
Component |
게임 오브젝트에 추가할 수 있는 빌딩 블록. |
Input |
사용자 입력을 처리하기 위한 클래스. |
Physics |
물리엔진 관련 기능을 제공. |
Audio |
오디오 파일을 재생하고 조작하는 기능을 제공. |
예제: 간단한 스크립트 만들기
다음은 MonoBehaviour
를 상속받아 간단한 게임 오브젝트를 생성하고 이동하는 예제입니다.
using UnityEngine;
public class MoveObject : MonoBehaviour
{
public float speed = 10f;
void Update()
{
float move = Input.GetAxis("Vertical") * speed * Time.deltaTime;
transform.Translate(0, 0, move);
}
}
코드 설명
- using UnityEngine;: Unity의 모든 기본 클래스와 메서드를 사용할 수 있도록 합니다.
- public class MoveObject : MonoBehaviour:
MonoBehaviour
를 상속받아 사용자 정의 클래스를 만듭니다. - public float speed = 10f;: 이동 속도를 설정할 수 있는 public 변수를 정의합니다.
- void Update(): 매 프레임마다 호출되는 메서드입니다. 이곳에서 사용자 입력을 감지하고 오브젝트를 이동시킵니다.
- transform.Translate(0, 0, move);: 오브젝트를 이동시키는 코드입니다.
응용 예제
1. 사용자 입력에 따른 색상 변경
사용자가 키를 누르면 오브젝트의 색상을 변경하는 기능을 추가할 수 있습니다.
void Update()
{
if (Input.GetKeyDown(KeyCode.Space))
{
GetComponent<Renderer>().material.color = Color.red;
}
}
2. 벽에 부딪히면 소리 재생
오브젝트가 벽에 부딪혔을 때 소리를 재생하는 예제입니다.
void OnCollisionEnter(Collision collision)
{
if (collision.gameObject.CompareTag("Wall"))
{
GetComponent<AudioSource>().Play();
}
}
결론
Unity의 스크립팅 API는 게임 개발을 매우 유연하고 강력하게 만들어줍니다. 다양한 클래스와 메서드를 활용하여 자신만의 게임 로직을 구현해 보세요.