목차
MonoBehaviour
기본적으로 모든 Unity 스크립트가 파생되는 기본 클래스
즉, 이를 상속하지 않으면 Unity의 핵심 기능들을 사용하지 못한다고 생각하면 된다.
그리고 스크립트를 오브젝트의 컴포넌트로 사용할 수 있게 해주는 아주아주 중요한 녀석입니다.
Monobehaviour 상속 제거?
이렇게 생성한 스크립트에서 Monobeviour를 제거 해보겠습니다.
그리고 해당 스크립트를 오브젝트의 컴포넌트로 추가하려 하자... 안됩니다.
Monobehaviour가 가진 것
https://docs.unity3d.com/kr/2021.1/ScriptReference/MonoBehaviour.html
해당 문서를 보면 Monobehaviour는 많은 일을 할 수 있다는 것을 알 수 있습니다.
Start / Update / FixedUpdate 등 Unity의 LifeCycle을 구성하기도 하고요.
각종 이벤트메세지를 관리하기도합니다. Object가 충돌했는지나 존재하는지 등등 다양하네요.
그리고 더 타고 타고 올라가다보면 Monobehaviour의 부모 클래스가 더 있다는 것을 알게 됩니다.
Object Class
Unity가 참조할 수 있는 모든 객체의 기본이 되는 클래스입니다.
https://docs.unity3d.com/kr/2021.1/ScriptReference/Object.html
Object에 대한 아주 기본적인 기능이 구현되어 있는것을 볼 수 있습니다.
Instance ID를 가져오거나, Destroy, Instantiate 등등 이 있네요
Component Class
그리고 위의 Object 클래스를 상속하는 Component 입니다.
실제로 Script를 GameObject와 연결시켜주는 역할을 하는 것 같네요.
클래스 이름에 맞게 Component를 가져오거나, 이를 통해 오브젝트를 참조하는 함수들이 있습니다.
https://docs.unity3d.com/kr/2021.1/ScriptReference/Component.html
여기서 갑자기 궁금한 점이 생겼는데요, Component Class를 상속하면 Object에 Component 추가가 될까요?
불가능합니다.
Behaviour Class
이번에는 Component를 상속하는 Behaviour Class 입니다.
설명을 보면 활성화하거나 비활성화 할 수 있는 구성 요소라고 되어있습니다.
https://docs.unity3d.com/kr/2021.1/ScriptReference/Behaviour.html
그리고 마지막으로 이 Behaviour를 상속한 것이 Monobehaviour class입니다.
베이스 클래스부터 차근차근 링크를 타고 보시면 추가되는 기능들을 볼 수 있습니다.
'공부' 카테고리의 다른 글
게임 클라이언트 개발 신입 취업 수기 (3) | 2023.12.20 |
---|---|
Unity Serialization (1) | 2023.11.24 |
[코드트리] Novice Mid - 수열의 순서 바꾸기 (0) | 2023.09.25 |
네이버 카페 자동 방문 매크로 (2) | 2022.10.31 |
간단한 네이버 카페 방문 횟수 자동 매크로 [HTML / JavaScript] (19) | 2022.10.19 |