Unreal 개발 사전캠프 8일차

HappyCircle·2025년 11월 12일

Unreal 개발

목록 보기
8/163

오늘 학습 진행 내용
2-6. 환경 디자인 - 머티리얼 애니메이션
머티리얼 애니메이션
블루프린트뿐만 아니라 머티리얼만을 활용해서 애니메이션 제작 가능.
빌딩 옥상에 존재하는 항공 장애등 제작

사인 그래프
사인그래프를 활용해서 머티리얼에 반짝이는 효과를 줄 수 있음
기본적으로 y=sin(x) 형태를 어떻게 변형하느냐가 핵심
사인그래프는 주기적으로 반복되는 특성 덕분에 움직임에 생동감을 부여
상수를 더하거나 곱하는 연산 통해서 그래프 변형시켜 반짝이는 방식 강도를 세밀하게 조절

머티리얼 생성
M_BlinkingLight 새로운 머티리얼 생성
Time 노드 : 현재 게임 내 시간을 실시간으로 반환하는 노드
VectorParameter : RGB 값을 사용해서 색을 선택
두 노드와 Sine 노드 활용해서 일정 주기따라 반짝이는 Material 구성
Frequency 변수(sin(B*x) 형태로 주기 조정 변수), Ceil 변수(값들 일정하게 0,1로 명확하게 빛 구분 적용), Brightness(전체 밝기 변수) 사용해서 Material 조정

추가적으로
Fresnel 노드
화면 상에서 법선 벡터와 카메라(뷰 방향)간의 각도 차 바탕으로 표면 가장자리 부분이 두드러지게 값을 계산
0-1 범위에서 시야각에 따라 가장자리 부분에서 값이 높아지는 형태의 마스크 제작
OneMinus 노드
Fresnel 값을 반전 시킴
Power 노드 + Falloff(변수)
밝아지는 영역의 경계를 더 날카롭게 혹은 부드럽게 조정
OneMinus 영향받은 마스크가 점점 강한 대비 갖게 됨
Falloff 변수
Exponent로 들어가는 파라미터
숫자 클수록 하이라이트가 좀 더 가파르고 날카롭게 형성
숫자가 작으면 가장자리 밝기가 좀 더 부드럽고 넓게 퍼짐

반짝이는 항공장애등용 Material 구성 반짝이는 Material 구성

머티리얼 적용
위에서 제작한 Material 활용해서
블루프린트에 Sphere 추가해서 Material 적용시켜서 건물 옥상 안테나 배치함으로써 항공장애등 구성 가능


해당 머티리얼 활용해서 다음과 같이 반짝이는 화살표 형태를 구현하는 것도 가능


2-7. 강의 마무리


사전캠프 퀘스트
조명과 머티리얼의 기본 적용
왜 중요한가요?
빛과 재질은 시각적으로 매력적인 공간을 구성하는 데 핵심적인 요소입니다. 머티리얼을 통해 오브젝트의 느낌을 바꾸고, 조명을 통해 공간의 분위기를 설정할 수 있습니다. 이 과제를 통해 실감나는 3D 씬을 만드는 첫걸음을 떼게 됩니다.

개념 바로 알기
조명(Light) 종류
Directional Light: 태양빛처럼 전체 씬에 영향을 줌
Point Light: 전구처럼 특정 위치에서 빛을 방사함
Spot Light: 특정 방향으로 빛을 집중시킴

머티리얼(Material)이란?
오브젝트에 적용되는 재질로, 색상뿐 아니라 반사, 광택, 질감 등 표현 가능
Material Instance를 사용하면 기존 머티리얼을 빠르게 커스터마이징 가능

  1. 오늘 배운 개념 요약
    조명과 머티리얼은 3D 공간의 분위기와 사실감을 결정하는 핵심 요소로, 조명은 빛의 방향과 강도를 통해 공간의 느낌을 설정
    조명에서는 Directional Light는 태양빛처럼 전체 씬에 영향을 주고, Point Light는 전구처럼 한 지점에서 사방으로 빛을 내며, Spot Light는 특정 방향으로 집중된 빛을 제공
    머티리얼은 오브젝트의 색상·질감·반사 등을 시각적으로 표현 가능
    Material Instance를 활용하면 기존 머티리얼을 빠르게 커스터마이징이 가능

  2. 구현 과정 요약 (스크린샷 + 간단 설명)

  • 조명이 반영된 씬의 스크린샷 2장 (낮과 밤 느낌 또는 다른 라이트 조합)
    직접 구현해보기
    목표: 레벨에 조명을 배치하고 오브젝트에 다양한 머티리얼을 적용해 봅니다.
    [Step 0] 프로젝트 생성
    File → New Project → Games → Third Person(또는 Blank) 선택
    ❗️Starter Content 체크❗️
    프로젝트 이름 지정 후 Create 클릭

    프로젝트 생성 Start Content 추가 3인칭 프로젝트 생성 및 Starter Content 추가

[Step 1] 조명 추가
Directional Light 하나 배치 (태양 역할)
Place Actors → Lights → Directional Light 드래그 앤 드롭
Point Light 2개 이상 배치해 내부 조명 효과 확인
각 라이트의 밝기(Intensity)와 색상(Color) 조정해보기

Directional Light 추가 2개 이상의 Point Light 배치 Directional Light 와 Point Light 2개 이상 배치

푸른색 Point Light 초록색 Point Light 각각의 Point Light를 푸른색, 녹색 밝기 다르게 설정

[Step 2] 머티리얼 적용
StarterContent > Materials 폴더에서 다양한 머티리얼 확인
바닥에는 M_Metal_Gold, 벽에는 M_Concrete_Poured 등 각각 다르게 적용
필요 시 Material Instance 만들어 색상만 바꿔보기

푸른색 Point Light 바닥에는 M_Metal_Gold, 벽에는 M_Concrete_Poured, 중앙 구조물 일부는 M_Step 신규 Material Instance 제작해서 적용

M_Step M_Step Material 신규 추가

[Step 3] 라이트의 그림자 확인
다양한 위치에 오브젝트를 배치하고, 빛이 어떻게 반응하는지 확인
그림자 방향, 세기 등을 조정하며 결과 비교

Directional Lgiht(-29) Directional Lgiht(-4) Directional Lgiht(1) Directional Light의 Rotation Y 각도 조절을 통해서 그림자 형태 비교

  1. 느낀 점 & 개선하고 싶은 점
    오브젝트의 배치 위치와 조명의 각도에 따라 그림자의 형태와 전체적인 분위기가 달라지는 점이 인상적이었다. 이러한 요소들은 실제 게임 개발 과정에서도 게임의 몰입감과 분위기를 결정짓는 중요한 요인으로 작용할 것으로 보인다. 따라서 조명과 오브젝트의 관계를 정교하게 구현하는 것은 시각적 완성도를 높이는 데 필수적인 과정이라 생각된다. 특히 Directional Light를 조정하여 낮과 밤의 분위기를 표현할 수 있다는 점에서, 실제 게임 내 시간의 흐름에 따라 낮과 밤이 변화하는 기능 역시 이러한 원리를 기반으로 구현되었을 것으로 추측된다. 앞으로 시간대 변화에 따른 조명 연출 기능을 직접 구현해보며, 보다 현실감 있는 씬 구성에 도전해보고 싶다.

사용한 머티리얼의 이름과 적용 위치를 표로 정리 필수 포함

오브젝트머티리얼 이름
바닥M_Metal_Gold
M_Concrete_Poured
중앙 구조물 일부M_Step

에셋 다운로드 및 커스터마이징 실습
왜 중요한가요?
게임 제작이나 인터랙티브 콘텐츠 개발에서는 모든 요소를 직접 만들기보다 기성 에셋을 가져와 조합하는 일이 빈번합니다. 외부 에셋을 프로젝트에 적절히 적용하고 조정하는 능력은 실무에서 매우 중요한 역량입니다.

개념 바로 알기
에셋(Asset)이란?
3D 모델, 머티리얼, 애니메이션, 사운드 등 콘텐츠 구성 요소의 총칭
언리얼에서는 .uasset 형식으로 사용

대표적인 에셋 플랫폼
Fab (공식, Unreal Engine 통합)
Fab은 Unreal Engine Marketplace, Sketchfab, Quixel, Artstation Marketplace를 결합한 플랫폼입니다.
다양한 에셋을 쉽게 검색하고 다운로드할 수 있습니다.
Sketchfab, TurboSquid, Free3D 등 (FBX 등 외부 포맷)
외부 포맷으로 제공되는 에셋을 Unreal Engine에서 사용하려면 적절한 포맷으로 변환해야 합니다.

제출하기
직접 구현해보기
1. 오늘 배운 개념 요약
게임 제작이나 인터렉티브 컨텐츠 개발에서는 직접 모든 요소 만들기 보다는 이미 존재하는 에셋을 가져와서 조합하는 것이 효율적이어서 많이 사용
외부에서 가져온 에셋을 프로젝트에 적절하게 사용하는 것이 실무에서 매우 중요
에셋은 3D 모델, 머티리얼, 애니메이션 등 콘텐츠 내 구성하는 요소들의 부르는 명칭
에셋은 대표적으로 Fab 공식 플랫폼에서 다운로드 받을 수 있음. 일부 에셋은 외부 포맷으로 제공하고 있어 Unreal Engine에서 사용 시 변환 필요
2. 구현 과정 요약 (스크린샷 + 간단 설명)

  • 적용한 외부 에셋이 보이는 씬 스크린샷 1장
  • 어떤 플랫폼에서 어떤 에셋을 사용했는지 간단히 서술 (예: Quixel / Broken Bench / ID: 215332)
  • 폴더 구조에 대한 설명 필수 포함
    목표: 외부에서 에셋을 다운로드 받아 프로젝트에 적용하고, 위치/스케일 등을 조정해 씬에 통합합니다.
    [Step 1] Fab 플러그인 사용 및 로그인
    언리얼 에디터에서 콘텐츠 브라우저 상단의 [Fab] 버튼 클릭
    (Fab 플러그인이 이미 설치되어 있다면 바로 사용 가능)
    팝업 창에서 Epic 계정으로 로그인

[Step 2] 에셋 검색 및 라이브러리 추가
Fab 창에서 Outdoor 또는 Urban 등 원하는 카테고리 선택
마음에 드는 오브젝트를 Add to My Library 클릭하여 내 라이브러리에 추가
Fab에서 Urban enviroment 에셋(https://fab.com/s/f432a26d03b5)
Outdoor Bench 에셋(https://fab.com/s/73b7f923bad2) 다운로드

Outdoor 검색 에셋 Urban 검색 에셋 Outdoor, Urban 검색 에셋 Fab에서 다운로드 라이브러리 추가

[Step 3] 에셋 프로젝트에 임포트
언리얼 프로젝트 Fab 창의 My Library(내 라이브러리) 탭에서 추가한 에셋 확인

원하는 에셋을 Add to Project 버튼으로 프로젝트에 임포트
또는 Fab 창에서 에셋을 씬이나 콘텐츠 브라우저로 드래그 앤 드롭

콘텐츠 브라우저에서 에셋이 정상적으로 추가됐는지 확인

[Step 4] 에셋 배치 및 조정
씬에 에셋을 배치
이동, 회전, 크기 조정(Transform Tool) 기능으로 위치 정리
Collision(충돌) 설정도 확인

다운로드 에셋 프로젝트 내 배치 및 조정 다운로드 에셋 프로젝트 내 배치 및 조정

Urban 에셋 Collision 설정도 확인 Outdoor 에셋 Collision 설정도 확인 배치된 에셋 Collision 설정도 확인

[Step 5] 폴더 구조 정리
콘텐츠 브라우저에서 MyAsset 폴더 생성 후 에셋 이동
폴더 구조를 깔끔하게 정돈

콘텐츠 브라우저 내에서 MyAsset 폴더 생성 후 다운로드 받은 에셋들 이동해서 폴더 구조 깔끔하게 정리
폴더 구조
📁 Content
├── 📂 BluePrint # 블루프린트 저장 위치
├── 📂 Material # 머티리얼 저장 위치
├── 📂 Fab # 다운로드한 에셋의 최초 저장 위치
└── 📂 MyAsset # 실제 사용한 에셋 정리 위치

  1. 느낀 점 & 개선하고 싶은 점
    Fab 플랫폼에서 다운로드한 두 종류의 에셋 중 하나는 독립적인 객체 형태의 의자 에셋이었으며, 다른 하나는 여러 개의 객체가 하나로 결합된 형태의 에셋이었다. 후자의 경우, 개별 객체를 분리하여 위치나 각도를 조정할 수 없고 전체를 하나의 묶음으로만 다뤄야 하는 제약이 있었다. 이러한 특성은 실제 현업에서 기성 에셋을 활용할 때 주의해야 할 부분으로, 에셋의 구조를 사전에 정확히 파악하지 않으면 작업 효율에 영향을 미칠 수 있을 것 같다.
    두 가지 에셋을 배치하는 것에서 좀 더 나아가서
    비슷한 분위기의 여러 에셋들을 배치하고 구성해서 하나의 분위기를 가지는 레벨을 구성해서 기존 게임에 존재하는 맵을 구성해보고 싶다.
profile
개발합시다!

0개의 댓글