유니티의 스크립트 컴포넌트를 적용하기 위한 것.
이에 스크립트도 하나의 컴포넌트라고 할 수 있다.
Monobehaviour는 닷넷 프레임워크를 사용할 수 있게 하는 클래스로써, 이것을 상속받는 순간 유니티에서는 해당 스크립트를 하나의 컴포넌트로 인식한다.
따라서 다음과 같이 생각할 수 있다.
Monobehaviour이 적용된 스크립트를 게임 오브젝트에 붙여야 비로소 스크립트 컴포넌트로 인식하게 된다.

유니티에서 기본적인 스크립트를 만든 후, 열어보았을 때의 기본 모습.
public class FirstSample : MonoBehaviour
해당 코드는 MonoBehaviour의 있는 것을 해당 스크립트(FirstSample)에 상속하도록 한다는 뜻을 내포하고 있는 C# 스크립트이다.
기본적인 함수를 살펴보면, **Start()와 Update()이다.
해당 함수 말고도 많은 함수가 있다. 순서가 제각각이기 때문에 잘 아는 것이 필요하다.

스크립트 작성을 다 하고나면 반드시 해당 게임 오브젝트에 적용을 시켜야한다.
반드시 MonoBehaviour를 상속받아야 하고, 스크립트의 이름과 상속받는 이름이 같아야 한다.
Awake() 함수를 제작하고 콘솔창에 해당 함수를 띄우도록 한 뒤, 유니티를 작동시키면 다음과 같이 콘솔창에 나타나게 된다.

Awake가 가장 먼저 일어나고 Start가 그 뒤를 있고 난 뒤, 매 프레임마다 Update가 출력되는 것을 알 수 있다.
필요한 것을 상속 받아서 필요한 로직만 사용하게 하면 된다.
스크립트를 이용해서 변수를 추가할 수 있다. GameObject를 이용하면 된다.

그림처럼 GameObject 변수를 추가해준 뒤 유니티 창에서 보면

해당 변수가 추가된 것을 알 수 있다. 여기서 prefab과 다른 오브젝트를 넣을 수 있다. 이것을 '링크를 걸다', 'add 하다'라고 말한다.
또한 다음 방법으로 해당 변수를 가져와서 새로 만들거나 태그, 레이어를 변경할 수 있다.
void Start()
{
Debug.Log(message:"Start Called");
GameObject newGameObject = Instantiate(prefab); // 새로운 게임 오브젝트를 받는 것
newGameObject.tag = "Player"; // 태그 변경
}

보기와 같이 생성, 삭제, 변경이 스크립트 내에서 자유롭게 가능하다.
또한 다음을 통해 상태를 조절하는 것도 가능하다.
ObjectName.SetActive(true or false);