시작하며
유니티를 처음 시작하며 보고, 간단 정보 정리를 하는 글이다.
유니티 인터페이스

- Hierarchy 창
위치: 기본적으로 왼쪽에 위치
기능: 씬(Scene)에 포함된 모든 게임 오브젝트(GameObject)를 계층 구조로 표시
예: Main Camera, Directional Light, Player 등
- Scene 창
위치: 중앙 상단
기능: 게임 월드를 시각적으로 편집할 수 있는 창
마우스로 오브젝트 선택, 이동, 회전, 배치 가능
- Game 창
위치: Scene 창 옆 (탭으로 전환 가능)
기능: 실제 게임이 실행되는 모습을 미리 보기
Play 버튼을 누르면 이 창에서 플레이 테스트 가능
- Inspector 창
위치: 오른쪽
기능: 선택된 오브젝트의 세부 정보(컴포넌트, 속성)를 표시 및 수정
예: Transform, Sprite Renderer, Script 등
- Project 창
위치: 아래쪽
기능: 프로젝트 내의 모든 에셋(Assets)을 보여주는 창
폴더 구조로 정리되어 있음 (Scripts, Prefabs, Scenes 등)
- Console 창
위치: Project 창 탭 중 하나
기능: 디버그 로그, 오류, 경고 메시지를 출력
Debug.Log, Debug.Error 등의 결과 확인 가능
- Toolbar (상단 툴바)
Play / Pause / Step 버튼
씬 툴 (Move, Rotate, Scale 등)
레이어 설정 및 레이아웃 변경
이벤트 함수의 실행 순서
- 관련 이미지
- 각 이벤트 함수 정리
| 이벤트 함수 | 호출 시점 | 정의 / 기능 | 주요 활용 |
|---|
| Awake() | 오브젝트가 생성(인스턴스화)될 때, 가장 먼저 호출 | 객체가 생성될 때 1회 실행 | 초기화, 컴포넌트 참조 연결 등 |
| OnEnable() | 오브젝트가 활성화될 때 호출 | 비활성 → 활성 전환 시마다 호출 | 타이머 시작, 리스너 등록 |
| Start() | 오브젝트가 활성화되고 첫 프레임 전에 1회 실행 | Awake 다음, OnEnable 이후 호출 | 초기 설정, UI 상태 설정 등 |
| Update() | 매 프레임마다 호출 | 매 프레임 실행되는 루프 | 캐릭터 입력 처리, 움직임 제어 등 |
| FixedUpdate() | 물리 계산 주기에 맞춰 호출 | 일정한 시간 간격(물리 루프)마다 실행 | Rigidbody 물리 적용, 충돌 처리 등 |
| LateUpdate() | Update 후 프레임마다 호출 | 모든 Update 완료 후 실행 | 카메라 따라가기, 위치 보정 |
| OnDisable() | 오브젝트가 비활성화될 때 호출 | 비활성화될 때마다 1회 호출 | 이벤트 해제, 리소스 정리 |
| OnDestroy() | 오브젝트가 파괴될 때 호출 | Destroy() 호출 시 실행 | 리소스 반환, 연결 종료 등 |
이벤트 관련 공식 홈페이지 링크
필요한 기본 정보 있으면 여기에다가 올리겠다.