Unity(유니티)
  • 에셋(Asset)

- 게임에 필요한 모든 리소스(이미지, 사운드, 모델, 코드 등).- 프로젝트의 에셋 폴더에 저장된다.

  • 씬(Scene)

- 게임의 각 장면 또는 화면.

- 메뉴 씬, 게임 플레이 씬, 엔딩 씬 등 게임의 특정 부분을 담당한다.

  • 게임 오브젝트(GameObject)

- 씬에 배치되는 모든 요소.

- 에셋을 이용하여 씬에 생성되며, 게임의 동작과 상호작용을 담당한다.

- 게임 오브젝트는 계층 구조로 구성되어 부모-자식 관계를 가지며, 이를 통해 그룹화하고 조작한다.

 

Unity 인터페이스

  • Scene 뷰 : 씬의 3D 또는 2D 뷰. 씬 구성 요소 편집
  • Game 뷰 : 게임이 실제로 실행되는 뷰. 플레이어가 게임을 플레이하는 화면을 실시간으로 확인한다.
  • Hierarchy 뷰 : 현재 씬의 게임 오브젝트 계층 구조 표시 및 편집
  • Inspector 뷰 : 선택된 게임 오브젝트의 속성 및 구성 요소 편집
  • Project 뷰 : 프로젝트의 에셋 표시 및 관리
  • Console 뷰 : 게임 실행 중의 로그 및 메시지 표시 (* 오류 확인을 위해 켜두는 것이 좋다.)

 

마우스 조작

  • 마우스 왼쪽 클릭 : 게임오브젝트 선택
  • 마우스 오른쪽 클릭 : w,s,a,d,q,e 키로 씬 뷰를 1인칭 이동가능, 드래그시 씬 뷰 회전
  • 마우스 스크롤 : 줌 인 & 아웃
  • 마우스 스크롤 클릭 : 씬 뷰 이동
  • alt + 마우스 왼쪽 드래그 : 씬 뷰 화면 중심 회전
  • alt + 마우스 오른쪽 드래그 : 줌 인 & 아웃

 

툴바

  • Hand Tool (손 도구, 단축키 : Q) : 씬 뷰를 이동시킴.
  • Move Tool (이동 도구, 단축키 : W) : 게임오브젝트 이동
  • Rotate Tool (회전 도구, 단축키 : E) : 게임오브젝트 회전
  • Scale Tool (스케일 도구, 단축키 : R) : 게임오브젝트 스케일 조절
  • Rect Tool (사각형 도구, 단축키 : T) : 게임오브젝트 스케일을 사각형 방향으로 조절함.
  • Transform Tool (좌표변형 도구, 단축키 : Y) : MoveTool, RotateTool, ScaleTool 을 동시에 사용함.

 

유니티 스크립트 작성 방법

오브젝트에 연결하여 사용하려면 기본적으로 MonoBehaviour를 상속 받은 상태로 클래스를 작성한다. 그 외의 용도로 사용하는 경우에는 굳이 상속 받지 않아도 된다. Start(), Update(), FixedUpdate() 등 유니티에서 제공하는 함수들은 오버라이딩 하여 사용한다.

 

스크립트 라이프 사이클

게임 오브젝트가 살아있는 생명 주기 동안 동작하는 스크립트들

  • Awake : 게임 오브젝트가 생성될 때 호출되는 메서드. 주로 초기화 작업을 수행한다.
  • Start : 게임 오브젝트가 활성화되어 게임 루프가 시작될 때 호출되는 메서드. 초기 설정 및 시작 작업을 수행한다.
  • Update : 매 프레임마다 호출되는 메서드. 게임 로직의 주요 업데이트가 이루어진다. 매 프레임 호출되는 만큼 불필요한 계산을 피하고 최적화하기 위해 사용하지 않으면 지워주는 것이 좋다.
  • FixedUpdate : 물리 엔진 업데이트 시 호출되는 메서드. 물리적인 시뮬레이션에 관련된 작업을 처리할 때 사용된다.
  • LateUpdate : Update 메서드 호출 이후에 호출되는 메서드. 다른 오브젝트의 업데이트가 완료된 후에 작업을 수행하는 데 유용하다.
  • OnEnable : 게임 오브젝트가 활성화될 때 호출되는 메서드.
  • OnDisable : 게임 오브젝트가 비활성화될 때 호출되는 메서드.
  • OnDestroy : 게임 오브젝트가 파괴될 때 호출되는 메서드. 자원 정리 및 해제 작업을 수행한다.

이벤트 함수의 실행 순서

 

이벤트 함수의 실행 순서 - Unity 매뉴얼

Unity 스크립트를 실행하면 사전에 지정한 순서대로 여러 개의 이벤트 함수가 실행됩니다. 이 페이지에서는 이러한 이벤트 함수를 소개하고 실행 시퀀스에 어떻게 포함되는지 설명합니다.

docs.unity3d.com

 

컴포넌트

게임 오브젝트에 부착하는 기능 모듈. 각각 기능들로 구현을 만드는 것.

  • Transform : 게임 오브젝트의 위치, 회전, 크기 등을 조정
  • Rigidbody : 물리적인 효과를 게임 오브젝트에 적용
  • Collider : 충돌 감지 처리
  • SpriteRenderer : 2D 그래픽 표시
  • AudioSource : 사운드 재생

사용자가 필요에 따라 컴포넌트를 직접 작성하고 추가할 수도 있다. 우리가 작성한 스크립트 또한 컴포넌트이다. 이를 통해 게임의 특정한 동작이나 기능을 개발자가 원하는 대로 커스터마이즈할 수 있다.

 

그 외

Collider

- Is Trigger : 물리적인 충돌이 일어났을 때, 실제로 물리충돌을 할 것인지 여부(켜져있으면 충돌을 인지만 하고 통과된다.)

Rigidbody2D

- Gravity Scale : 중력을 가지고 싶지 않으면 0으로 조절해준다.

- Constraints - Freeze : 충격을 받고 날아거나 이동할 때, 회전하거나 등 물리적으로 처리할 것인지 여부

 

Material

SpriteRenderer - Material : 눈에 보이는 재질

Rigidbody - Material : 물질적인 재질

 

 

+ Recent posts