제목 : [내일배움캠프 사전캠프] + 오늘의 학습 키워드
1. 오늘 학습 키워드
게임 개발의 핵심 인원, 언리얼 엔진의 기본 요소
2. 오늘 학습 한 내용을 나만의 언어로 정리하기
게임 개발의 핵심 인원
- 게임 기획자
- 아티스트
- 컨셉 아티스트
- 3D 모델러
- 애니메이터
- 프로그래머
- 클라이언트 프로그래머
- 서버 프로그래머
- 사운드 디자이너
- PD
게임 기획자
- '어떤 게임을 만들까?' 를 생각하는 사람.
하는 일
- 스토리 라인 구상
- 구상한 스토리 라인 기반으로 레벨 디자인
- 게임 규칙, 게임의 핵심 재미요소 구상
아티스트
- 기획자가 만든 설계도를 바탕으로 눈으로 볼 수 있도록 구체화 하는 사람
컨셉 아티스트
하는 일
- 게임의 분위기와 컨셉을 정의하는 일러스트를 담당
3D 모델러
하는 일
- 캐릭터, 몬스터, 건물, 무기 등의 게임 세계를 구성하는 모든 물체를 3D 모델로 만듬
애니메이터
하는 일
- 3D 모델러가 만든 3D 모델을 기반으로 모든 상호작용의 동작 설계를 담당
프로그래머
- 게임 기획자가 상상한 규칙과 아티스트가 만든 자산(리소스)에 생명과 움직임을 부여하는 사람
클라이언트 프로그래머
하는 일
- 플레이어가 직접 눈으로 보고, 손으로 조작하는 모든 상호 작용에 관련된 부분을 구현
- 그래픽, 사운드 연동, UI/UX 개선 담당. 따라서 여러 팀과 협업하는 경우가 많음
- 퍼포먼스 최적화를 핵심 소양으로 보유함
서버 프로그래머
하는 일
- 서버 운영 및 보수(데이터의 일관성과 공정성)과 보안(해킹 방어)를 담당함
- 게임의 목숨줄을 담당하는 중요한 직책
사운드 디자이너
- 우리가 만든 가상 세계에 더 깊이 빠져들게 하는 마법사 같은 사람
하는 일
- 게임 내에 들어가는 OST, 효과음, 배경음의 작곡과 구성을 담당함
PD
- 게임 스튜디오에 있는 팀 전체를 오케스트라처럼 지휘하는 사람
하는 일
- 게임 스튜디오의 리더이자 CED
- 여러 사람들이 장기간에 걸쳐 진행하는 게임 개발 프로젝트가 원활하게 진행되고 초기 목표를 잃지 않기 위해 프로젝트 내 인원들의 조율과 계획을 담당함
- 일정 관리, 예산 조율 등의 개발 외적의 모든 업무들을 담당함
언리얼 엔진의 기본 요소
- 뷰포트 (Viewport)
- 아웃라이너 (Outliner)
- 디테일 (Details)
- 콘텐츠 브라우저
- 메뉴바
뷰포트 (Viewport)

제작하는 게임 내 레벨(Level)을 구현하고 액터(Actor)를 조작하고 배치하는 영역
기능
- 카메라 이동
마우스 오른쪽 버튼을 누르고 있는 상태에서만 작동한다
WASD 키를 눌러 이동
QE 키를 눌러 카메라 높이 조절
마우스 휠 사용 시 카메라 이동 속도 조절
- 마우스 휠 버튼을 사용
ZOOM IN(확대) / ZOOM OUT(축소) 사용 가능
- 액터(Actor) 선택 및 이동
뷰포트 내에 배치된 액터(Actor) 선택 시 액터 내에 '기즈모' 생성
기즈모

선택한 액터(Actor)를 조작할 수 있는 기능이다.
- 빨간색 : X 축 (앞 / 뒤)
- 초록색 : Y 축 (왼쪽 / 오른쪽)
- 파란색 : Z 축 (위 / 아래)

뷰포트 내의 액터(Actor) 선택 시 디테일 패널의 트랜스폼 항목에도 각 축에 맞춰서 색깔이 구분되어 있다.
순서대로 X 축, Y 축, Z 축
아웃라이너 (Outliner)

화면 오른쪽 상단에 위치하며, 현재 레벨(Level)에 배치된 모든 액터(Actor)를 계층 구조로 보여줌.
각 오브젝트를 선택하여 삭제하거나 디테일 패널에서 속성을 수정할 수 있음.
보통은 오브젝트의 성격에 따라 조명, 스태틱 메시, VFX와 같은 폴더들로 나누고 오브젝트를 계층적으로 관리하는게 관례.
디테일 (Details)

아웃라이너 패널 아래에 위치하며, 선택한 오브젝트의 속성을 보여주고 편집할 수 있음
콘텐츠 브라우저(콘텐츠 드로어)

콘텐츠 브라우저
화면 하단에 위치하며 프로젝트에 사용되는 모든 에셋(모델, 텍스처, 머티리얼 등)을 관리함
에셋을 끌어서 뷰포트에 배치할 수 있음
메뉴바

화면 상단에 위치하는 메뉴들이 있는 바
파일 저장, 프로젝트 설정, 빌드 등 다양한 작업을 수행할 수 있는 메뉴 배치됨
언리얼 엔진 내 기본 용어
- 월드
- 레벨
- 액터
- 폰
월드
정의
- 레벨이 존재하는 최상위 컨테이너로 모든 액터와 구성 요소를 포함함
- 하나의 월드에는 하나 이상의 레벨이 포함됨
역할
- 게임 로직의 전반적인 상태를 관리함
- 물리 시뮬레이션, 이벤트 처리, 게임 루프를 제어함
특징
- 언리얼 엔진의 API를 통해 월드를 관리하고 상태를 변경할 수 있음
- 여러 개의 레벨을 동시에 로드하고 관리할 수 있음
레벨
정의
- 게임 또는 프로젝트의 하나의 '씬'을 의미
- 언리얼 엔진에서 작업하는 공간을 정의하며, 월드의 구성 요소들을 담고 있음
역할
- 게임 환경(맵)을 설계하고, 액터와 이벤트를 배치하는 데 사용됨
- 여러 레벨을 조합하여 대규모 환경을 만들 수 있음
특징
- 레벨 파일은 .umap 확장자를 가짐
- Type==World 로 검색하면 프로젝트 내 레벨 파일들을 볼 수 있음

액터
정의
- 언리얼 엔진 월드 내에 존재하는 모든 오브젝트를 의미
- 레벨에 배치되거나 생성될 수 있는 개체
역할
- 게임플레이 로직을 담당하거나 환경 구성 요소를 나타내는 역할
- 캐릭터, 조명, 카메라, 사운드, 물리 오브젝트 등이 포함됨
특징
- 액터는 위치, 회전, 크기와 같은 변환(Transform) 속성을 가짐
- Blueprint 또는 C++ 로 커스텀 액터를 만들 수 있음
폰
정의
- 액터의 일종으로, 플레이어나 AI가 조종할 수 있는 오브젝트를 의미
- 게임의 캐릭터를 구현하는 데 주로 사용됨
역할
- 플레이어 컨트롤러의 경우에는 입력(Input)을 받아서 움직임과 동작을 제어함
- AI 컨트롤러가 폰을 조작하여 NPC를 구현할 수도 있음
특징
- 폰은 "컨트롤러(controller)"에 의해 제어됨
- 빙의(possess)라는 개념이 있음
- 캐릭터 클래스는 폰을 기반으로 한 확장된 클래스
정리
- 월드 내에 1 개 이상의 레벨이 있음
- 레벨 내에 1 개 이상의 액터가 있음
- 액터 내에 1 개 이상의 폰, 조명, 카메라, 사운드, 물리 오브젝트 등이 있음
- 폰 내에 1 개 이상의 NPC, 플레이어블 캐릭터가 있음
3. 학습하며 겪었던 문제점 & 에러 - 문제&에러에 대한 정의 - 내가 한 시도 - 해결 방법 - 새롭게 알게 된 점 - 이 문제&에러를 다시 만나게 되었다면?
4. 내일 학습 할 것은 무엇인지
#내일배움캠프 #사전캠프 #TIL