Unity, Life Cycle

감사콩·2025년 10월 14일

유니티

목록 보기
1/29
post-thumbnail

서론

대망의 유니티 1일차...
지만 병가내고 병원을 다녀왔으므로 하루 지나 TIL을 작성한다.

유니티 엔진의 특징 및 인터페이스를 알아보고
유니티의 라이프 사이클 및 콘솔 스크립트 활용까지 알아볼 예정



Unity

C#을 사용하는 게임 엔진.

특징

GUI - 직관적이고 조작하기 쉬운 GUI 제공
Unity Hub - 다수의 버전을 설치하고 관리하는 기능 지원
Bulid - 간편한 방식의 빌드 지원
쉬운 자료확보 - 사용자 수가 많고 다양하기 때문에 필요한 자료 확보가 용이
Asset Store - 에셋 스토어를 통해 각종 리소스와 플러그인 확보
빠른 테스트 - 에디터에서 Play 버트능로 즉시 테스트 가능(단, 빌드 환경 차이가 존재)

구성 인터페이스 정리

  1. Hierarchy
    게임 공간상 배치되는 오브젝트들에 대한 목록과 계층 구조를 표시

  1. Project
    해당 프로젝트 내 사용하든 모든 파일과 에셋 표시.
    유니티 프로젝트에 파일 추가 시, 항상 에디터의 프로젝트 창에서 추가.

  1. Console
    에디터 운용, 테스트 진행 중 발생하는 모든 로그 및 에러 이력 확인.

  1. SceneView
    게임 내 공간을 개발자가 시각적으로 탐색하고 편집할 수 있는 공간.

  1. GameView
    실행 시 실제 게임 화면으로 렌더링 되는 화면.
    게임 내 카메라를 통해 렌더링.

  1. Inspector
    선택한 오브젝트의 정보 편집.
    오브젝트에 추가된 기능에 맞는 설정 메뉴 존재.

이 외 툴바, 메인메뉴 등이 있음.

MonoBehaviour

유니티에서 게임 오브젝트에 사용하는 모든 스크립트는 유니티엔진 네임스페이스를 사용하고
C# 스크립트와 유니티 엔진을 연결시켜주는 MonoBehaviour 의 상속을 받는다.

함수 호출의 과정 없이도 런타임 중에 순차적으로 자동 호출할 수 있도록 구성되어 있음.
(특정 이벤트나 조건이 만족될 경우 자동 호출되므로 콜백 함수)



Life Cycle

유니티 엔진은 1프레임 단위로 내부 연산을 통해 게임 내 요소를 개발자 의도대로 조종함.
라이프 사이클은 각 프레임에서 "어떤 작업을 해야할 지" 정해진 순서를 뜻 함.


유니티 이벤트 함수

Awake()

  • 오브젝트의 생성 시 단 1회 호출

OnEnable()

  • 오브젝트 활성화 마다 1회 호출, Update() 이전에 호출

Start()

  • Awake() 이후

Update()

  • 매 프레임마다 1회 호출, 오브젝트와 스크립트의 생존 및 활성화 시에만 반복하여 동작.

Coroutine

  • 연산 수행 시 Update() 이후에 수행하지만 실행, 정지를 사용자가 자유롭게 사용할 수 있는 서브루틴.

OnDisable()

  • 오브젝트 비활성화 마다 1회 호출, Update() 이후에 호출

OnDestroy()

  • 오브젝트 파괴 시 단 1회 호출.



마무리

유니티를 온보딩 때 설치하고 처음으로 활용해봤다.
오늘은 처음인 만큼 복습 간 응용보다는 기본 개념을 익히고
아직 조작이 익숙하지 않고 모르는 기능이 많으니 번역기를 써 가며 이것저것 둘러봐야겠다.

profile
안녕하시와요

0개의 댓글