유니티:MonoBehaviour: 두 판 사이의 차이
둘러보기로 이동
검색으로 이동
(→개요) |
잔글 (→개요) |
||
10번째 줄: | 10번째 줄: | ||
== 유의 == | ==유의== | ||
일반적으로 C#에서 클래스의 인스턴스를 생성할 때 new 클래스명을 사용하지만, | |||
* 일반적으로 C#에서 클래스의 인스턴스를 생성할 때 new 클래스명을 사용하지만, 유니티에서 MonoBehaviour를 상속한 클래스는 컴포넌트로써 동작하기 때문에 new로 인스턴스(오브젝트)를 생성하면 필요한 초기화과정을 생략하기 때문에 오히려 정상적으로 동작하지 않는다. | |||
* MonoBehaviour를 상속하지 않은 코드는 컴포넌트로 추가될 수 없다. 때문에 클래스를 만들고, MonoBehaviour를 상속한 클래스에서 다시 해당 클래스를 불러와 다루는 방식으로 컴포넌트에 추가하여 사용한다. |
2021년 8월 9일 (월) 21:04 판
- 유니티:개요
- 유니티:기본 조작
- 유니티:카메라
- 유니티:오브젝트
- 유니티:코딩기초
- 유니티:UI
- 유니티:게임 내 화면
- 유니티:플레이어
- 유니티:맵
- 유니티:씬
- 유니티:몬스터
- 유니티:아이템
- 유니티:음향
- 유니티:빌드
- 유니티:VR
- 유니티:팁
개요
유니티에서 제공하는 것으로, 모든 컴포넌트는 MonoBehaviour 클래스를 상속한다. 이를 상속해야 컴포넌트로서 추가될 수 있다.
메시지 기반방식
기본적으로 컴포넌트들은 독립적으로 동작하며, 다른 기능을 실행시키고 싶을 땐 메시지를 날려 실행을 명령한다.
Start, Update 등과 같은 이벤트 메서드들이 메시지를 받아 작동한다.
유의
- 일반적으로 C#에서 클래스의 인스턴스를 생성할 때 new 클래스명을 사용하지만, 유니티에서 MonoBehaviour를 상속한 클래스는 컴포넌트로써 동작하기 때문에 new로 인스턴스(오브젝트)를 생성하면 필요한 초기화과정을 생략하기 때문에 오히려 정상적으로 동작하지 않는다.
- MonoBehaviour를 상속하지 않은 코드는 컴포넌트로 추가될 수 없다. 때문에 클래스를 만들고, MonoBehaviour를 상속한 클래스에서 다시 해당 클래스를 불러와 다루는 방식으로 컴포넌트에 추가하여 사용한다.