[개념 콕] 유니티 에셋, 씬, 게임 오브젝트, 컴포넌트

내일배움캠프 수료생이 개발에 꼭 필요한 핵심 개념만 콕 집어 드립니다.
Jun 05, 2024
[개념 콕] 유니티 에셋, 씬, 게임 오브젝트, 컴포넌트
✍🏼
게임 개발 입문자 여러분, 정보가 너무 많고 배워야 할 것도 산더미라 어디서부터 시작해야 할지 막막하신가요? 내일배움캠프 수료생들이 4개월 동안 배운 엄선된 게임 개발 핵심 개념을 직접 정리해서 알려 드립니다. 공부하다 막히거나 헷갈리는 개념이 있다면 개념 콕으로 정리해보세요.
 

1. 에셋 (Asset)

에셋은 게임 개발에 필요한 모든 리소스입니다. 게임을 만들기 위한 재료라고 생각할 수 있는 모든 것들을 일컬어 에셋이라고 합니다. 하나의 게임을 만들기 위해서는 다양한 종류의 여러 에셋들이 필요하며, 프로젝트 창을 통해 에셋을 관리할 수 있습니다. 아래는 게임을 구성하는 대표 5가지 에셋입니다.
  • 3D 모델: 3D 게임에서의 게임 캐릭터나 환경을 구성하는 오브젝트
    • ex) 나무, 건물, 자동차 등
  • 텍스쳐: 3D 모델의 표면을 구성하기 위한 이미지
    • ex) 나무 텍스처, 벽돌 텍스쳐 등
  • 오디오 파일
    • 게임에서 재생되는 소리 파일
    • 배경음악 또는 효과음 등
  • 스크립트
    • 게임 오브젝트의 동작이나 게임 로직 등을 정의하는 코드
    • C#으로 작성되고, 특정 동작이나 이벤트를 처리
  • 애니메이션: 게임 오브젝트의 움직임, 즉 캐릭터의 움직임이나 효과 등
 
 

2. 씬 (Scene)

씬은 유니티 게임에서 하나의 장면 또는 레벨을 나타내는 단위입니다. 게임은 여러 개의 씬으로 구성되며, 각 씬은 고유한 환경, 오브젝트, UI 등을 포함합니다. 일반적으로 게임은 다음과 같은 씬들로 구성됩니다.
  • 타이틀 씬: 게임을 처음 실행했을 때 나타나는 화면입니다. 이 씬에서는 필요한 데이터를 로드하고, 플레이어를 메인 메뉴로 안내합니다.
  • 메인 메뉴 씬: 게임 플레이를 시작하기 전에 플레이어에게 제공되는 화면입니다. 이 씬에는 게임 시작, 설정, 크레딧, 종료 등의 옵션을 선택할 수 있는 버튼과 게임에 대한 정보가 표시됩니다.
  • 게임 플레이 씬: 실제 게임이 진행되는 화면입니다. 이 씬에는 플레이어 캐릭터, 적, 아이템, 배경 등 게임 플레이에 필요한 모든 오브젝트와 UI 요소가 포함됩니다.
  • 엔딩 씬: 게임이 종료되었을 때 나타나는 화면입니다. 이 씬에서는 게임 결과, 점수, 크레딧 등을 표시할 수 있습니다.
 

씬 뷰(Scene View)

유니티에서는 씬 뷰(Scene View) 를 통해 각 씬을 편집합니다. 씬 뷰란 게임의 장면을 시각적으로 보여주고 편집할 수 있는 창으로, 다양한 오브젝트를 배치 및 조작하고, 전체적인 레이아웃을 구성할 수 있는 기능입니다.
게임의 규모와 복잡성에 따라 단일 씬 또는 여러 씬으로 게임을 구성할 수 있습니다. 작은 게임은 하나의 씬으로 모든 것을 관리할 수 있지만, 게임이 커지고 복잡해질수록 여러 씬으로 나누는 것이 효과적입니다. 하나의 씬으로 관리한다는 말은 곧 모든 리소스를 항상 사용할 수 있도록 준비된 채 게임을 진행한다는 의미입니다. 이는 필요한 리소스를 적재적소에 즉시 사용할 수 있다는 장점이 있지만 불필요한 리소스까지 같이 로드하여 많은 메모리를 필요로 하거나 추가적인 연산으로 인해 성능 이슈가 생길 수 있다는 단점이 있습니다. 따라서 씬을 각 장면의 성격에 따라 나누는 일은 불필요한 리소스를 로드하지 않아 메모리를 절약하고, 로딩 시간을 단축 시키며, 전반적인 게임 성능을 향상시킬 수 있습니다. 따라서 게임 개발 시 씬을 적절히 구성하고, 씬 간의 전환을 원활하게 처리하는 것이 중요합니다. 이를 통해 플레이어에게 최적의 게임 경험을 제공할 수 있습니다.
 
 

3. 게임 오브젝트 (Game Object)

유니티에서 게임 오브젝트는 게임 내에 존재하는 모든 객체의 기본 단위입니다. 게임 오브젝트는 씬 내에 배치되며, 다양한 컴포넌트를 추가하여 기능을 확장할 수 있습니다. 게임 오브젝트의 예시로는 다음과 같은 것들이 있습니다.
  • 플레이어 캐릭터: 캐릭터 컨트롤러, 애니메이터, 리지드바디 등의 컴포넌트를 추가하여 플레이어의 입력을 처리합니다. 다른 오브젝트와의 움직임과 물리 상호작용을 제어하며, 상태에 따른 애니메이션을 재생할 수 있습니다.
  • 적 캐릭터: AI 스크립트, 애니메이터, 리지드바디(Rigidbody) 등의 컴포넌트를 활용하여 적의 행동을 제어하고, 물리 상호작용을 처리하며, 상태에 맞는 애니메이션을 재생할 수 있습니다.
  • 아이템: 콜라이더와 스크립트 등의 컴포넌트를 통해 그에 따른 동작을 수행하도록 설정할 수 있습니다.
 
씬에 배치된 게임 오브젝트는 하이어라키(Hierarchy) 창에서 관리됩니다. 하이어라키 창은 현재 열려있는 씬의 모든 게임 오브젝트를 트리 구조로 표시하여, 객체 간의 부모-자식 관계를 나타냅니다. 예를 들어, 캐릭터가 들고 있는 무기를 캐릭터의 자식 오브젝트로 설정하면, 무기는 캐릭터의 움직임에 따라 같이 움직이고, 무기의 동작은 캐릭터를 기준으로 이루어지게 됩니다.
게임을 영화나 연극에 비유한다면, 씬은 각각의 장면에 해당하고, 게임 오브젝트는 배우나 소품과 같은 역할을 합니다. 배우들의 연기와 상호작용이 모여 하나의 장면을 만들고, 여러 장면이 모여 하나의 작품을 완성하듯이, 게임에서도 게임 오브젝트 간의 상호작용과 동작이 모여 각 씬을 구성하고, 씬들이 모여 전체 게임을 형성하게 됩니다.
 
 

4. 컴포넌트 (Component)

컴포넌트는 게임 오브젝트의 속성과 동작을 정의하는 핵심 요소입니다. 하나의 게임 오브젝트에 여러 컴포넌트를 추가하여 다양한 기능을 부여할 수 있습니다. 주요 컴포넌트의 예시는 다음과 같습니다.
  • 트랜스폼(Transform): 모든 게임 오브젝트가 기본적으로 가지고 있는 컴포넌트로, 오브젝트의 위치, 회전, 크기를 제어합니다.
  • 스프라이트 렌더러(Sprite Renderer): 2D 게임 오브젝트의 시각적 표현을 담당합니다.
  • 메쉬 렌더러(Mesh Renderer): 3D 게임 오브젝트의 시각적 표현을 담당합니다.
  • 리지드바디(Rigidbody): 게임 오브젝트에 물리적 특성을 부여합니다. 중력, 충돌 등 여러 물리 동작들을 제어합니다.
  • 콜라이더(Collider): 게임 오브젝트의 경계를 정의합니다. 충돌 등 물리적 상호 작용 시 콜라이더경계를 기준으로 동작합니다.
앞서 게임 오브젝트를 배우에 비유했듯이, 컴포넌트는 대본과 같은 역할을 합니다. 대본이 배우의 동작, 대사, 연기 등을 정의하듯이, 컴포넌트는 게임 오브젝트의 외형이나 성격 등의 정보를 저장하고 어떤 상황에서 무슨 동작을 해야 하는지 정의합니다.
유니티의 컴포넌트 시스템은 게임 개발의 유연성과 모듈화를 향상시키는 핵심 요소입니다. 컴포넌트가 없는 게임 오브젝트는 아무런 기능이 없는 빈 껍데기에 불과하며, 컴포넌트를 추가함으로써 게임 오브젝트의 역할이 정의됩니다.
앞서 언급한 다섯가지 기본 컴포넌트 외에도, 사용자가 직접 커스텀 컴포넌트를 만들 수 있습니다. 예를 들어, C# 스크립트를 사용하여 MonoBehaviour 클래스를 상속받는 새로운 클래스를 정의하면, 이를 컴포넌트로 사용할 수 있습니다.
 
 

내일배움캠프는 개발에 필요한 핵심만 배웁니다

지금까지 꼭 필요한 게임 개발 지식에 대해 알아보았습니다. 내일배움캠프에서는 전문가들이 선별한 핵심 게임 개발 지식으로 개발 공부도, 취업도 보다 효율적으로 할 수 있는데요. 국내 유수의 IT기업 출신 튜터님들과 실습 위주의 독보적인 커리큘럼으로 개발자 취업을 체계적으로 준비해보세요. 내일배움캠프 4개월, 여러분 인생의 가장 큰 터닝 포인트입니다.
 
 
 
CREDIT
글 | 김세진 내일배움캠프 수료생 편집 | 정효재 팀스파르타 에디터
 
 

취업 준비, 어디서부터 시작해야 할지 모르겠다면?

 
🧐비전공자인데 IT 업계 취업할 수 있을까?
😟프로젝트 경험이 부족한데, 어떻게 준비해야 할까?
🥺IT 기업으로 이직하고 싶은데 뭐부터 시작해야 할까?
 
이런 고민을 하고 있다면, 내일배움캠프의 IT 취업 컨설팅을 받아보세요.
취업 코칭 전문가들이 여러분의 고민을 해결해 드립니다.
 
다음 링크에 이메일을 입력하시면 메일로 1:1 커리어 상담권과 취준 자료집을 보내드릴게요.
 
Share article
Subscribe to our newsletter

내일배움캠프 블로그