1. [UE5] 기초 개념

2024. 8. 8. 10:43·4. 언리얼 엔진(Unreal Engine) 공부/Unreal Engine 5

왜 엔진이라고 부를까?

Library / Framework / Engine

 

→ 공통점 : 특정 기능이 반복 사용될 때 해당 기능을 모아 놓은 것들, 공통으로 사용하는 기능을 모아놓았다

  • 라이브러리 : 내가 만들고 있는 개발 프로젝트에 라이브러리를 가져옴, 내가 원하는 대로 만들다가 필요한 것만 골라씀
  • 프레임워크 : 공통을 사용하는 기능 + 틀 /내가 틀 안으로 들어가서 처음부터 개발을 시작
  • 엔진 : 게임에 필요한 기능을 제공하는 소프트웨어. 핵심 기능을 개발함. 프레임워크의 일종. 좁은 범위에서는 게임에서의 핵심 기능은 엔진에서 만듦. 반드시 들어가야 하는 것이 있음. 게임엔진은 물리 엔진으로 출발했음

게임 엔진의 두 가지의 핵심 기능 

  • 물리 엔진(사실적이다) 
  • 실시간 상호작용 : 액션을 취했을 때 바로바로 일어나는 반응

 

언리얼 엔진 버전 표시 규칙

5.4.3
  • 5 : Major version / Update. 소프트웨어의 패러다임의 변화. 큰 변화가 있음
  • 4 : Minor Version / Update. 기능 향상 / 추가
  • 3 : Patch. 버그 / 오류 수정. 큰 영향은 없음

 

리얼 타임 엔진이란?

실시간 상호작용 활용 분야의 확장
(게임 엔진 뿐 아니라 리얼 타임 엔진으로 확장)
충돌처리(제일 중요) 게임
Rendering(실시간 렌더링) 영화 & TV
VFX 방송 & 라이브
Animation 애니메이션
Sound 건축
Network 자동차
A.I(NPC에 적용된 AI) 시뮬레이션

 

 

리얼 타임 렌더링(Rendering)

  • 사실적인 그래픽을 생성하는 프로세스
  • 모델에 사실적으로 표현하기 위해 텍스쳐, 색, 빛을 계산해 하나의 사물이 제대로 모양이 갖춰지도록 만드는 것
  • 인터랙션이 가능함

 

3D 축 표현 방법

  1. 왼손 좌표계 / 오른손 좌표계
  2. Z-up / Y-up

3차원 : xyz

z의 방향성으로 왼손 좌표계, 오른손 좌표계가 달라짐. xy의 방향이 고정되어있다

 

3D 좌표계

XYZ?

  • 데카르트의 기호 표기 체계 (미지의 수 X)
    • 1차원 방정식 : X
    • 2차원 방정식 : X, Y
    • 3차원 방정식 : X, Y, Z
    → 차원을 표현하는 문자로 사용

벡터

  • 크기와 방향을 가진 물리량
  • 여러 데이터가 괄호로 묶인 묶음 데이터 ex) (5,5) → 데이터 1개
  • 좌표계 데이터 집합. 3차원 벡터의 경우(x,y,z) 집합 형태로 표현

 

Texture 좌표계

UV?

  • 수평 좌표와 수직 좌표로 구성되는 2차원 맵 (깊이가 없음)
  • U(수평) V(수직) / 깊이가 있었다면 W를 썼을 것
  • 2D 텍스처에서 특정 수직 및 수평 좌표에 컬러 값을 저장하는 일종의 버텍스 맵

 

Color 혼합

감산 혼합 CMYK
 
  • 색을 섞을 수록 색이 어두워지는 혼합
  • 물감, 잉크
  • 감산 혼합
  • Cyan / Magenta / Yellow / Black
  • 인쇄 / 프린터 잉크
가산 혼합 RGB
  • 색을 섞을수록 색이 밝아지는 혼합
  • 빛
  • 가산 혼합
  • Red / Green / Blue
  • 디스플레이

 

컴퓨터 데이터 기본 개념

  • 컴퓨터에서 사용하는 데이터는 2진수 → 0, 1로 구성
  • 컴퓨터에서 표현되는 모든 미디어는 0,1로 구성 : 그래픽, 사운드, 텍스트 등
  • 소프트웨어에서 해당 데이터로 인식 : 인코딩/디코딩

2진수 데이터를 사용가능한 데이터로 표현하는 원리

Bit(비트) : 메모리 1칸

  • 0 또는 1이 저장될 수 있는 공간
  • 표현할 수 있는 데이터 개수 2개

Byte(바이트) : 1byte = 8bit

  • 8개의 bit를 1byte로 구성해서 의미있는 데이터를 표현
  • 알파벳은 256개의 데이터를 표현할 수 있음 → 동양, 한국어는 256개 데이터가 넘으므로 2byte

 

RGB Color 표현

2진수(0,1) 데이터 RGB Color를
표현하는 방법
2진수 데이터를
10진수(0~9) 진수로 변환
2진수 데이터를
16진수로 변환
  • R : 8bit (1byte)
  • G : 8bit (1byte)
  • B : 8bit (1byte)
→ 24 bit True Color
  • R, G, B 값을 따로 10진수로 변환해서 집합 형태의 데이터로 표현
  • White : (255, 255, 255)
    Black : (0, 0, 0)
  • 2^4=16 → 2진수 데이터 4개 = 16진수 1개
  • R,G,B 값을 따로 16진수로 변환해서 나열
  • White : #FFFFFF / Balck : #000000

데이터 Mapping

RGB ↔ XYZ

Unreal Engine에서 값 Mapping

  • 각 데이터 값들을 0~1 사이의 소수점 값으로 표현
  • R↔X / G↔Y / B↔Z

(좌) 블렌더 (우) 언리얼

 

Ex) Normal Map : 색상 정보로 깊이, 높낮이를 표현. Z로 깊이감을 표현하기 위해 푸르딩딩한 색

 

 

Naming Convention (네이밍을 하는 표준 방식)

표기법

  • 대상에 대한 이름을 여러 단어를 사용해서 이름만 보고 이해할 수 있도록 네이밍
  • 여러 단어 사이에 공백대신 구분할 수 있는 방법

 

예시 : real time rendering

Kebab Case Snake Case Camel Case Pascal Case
real-time-rendering
(dash, hyphen 사용)
real_time_rendering
(underbar, underscore) : 파이썬에서 사용
realTimeRendering : 가장 많이 사용하는 방식 RealTimeRendering : Unreal Engine에서 사용

 

Unreal Engine 명령 규칙

  • 머티리얼 : M_  (M_RealTimeRendering)
  • 머티리얼 인스턴스 : MI_
  • HDRI : HDR_
  • 피직스 에셋 : PHYS_
  • 피직스 머티리얼 : PM_
  • 포스트 프로세스 머티리얼 : PPM_
  • 스켈레탈 메시 : SK_
  • 스태틱 메시 : SM_
  • 텍스쳐 : T_
  • OCIO 프로파일 : OCIO_

그 외

'4. 언리얼 엔진(Unreal Engine) 공부 > Unreal Engine 5' 카테고리의 다른 글

6. [UE5] Material  (0) 2024.08.25
5. [UE5] LandScape Mode(Landmass, Landscape Spline)  (0) 2024.08.25
4. [UE5] Displayment, Blend Material, Texture  (0) 2024.08.24
3. [UE5] 기본 구성 요소(Level, Asset)  (1) 2024.08.19
2. [UE5] 초기 세팅  (0) 2024.08.19
'4. 언리얼 엔진(Unreal Engine) 공부/Unreal Engine 5' 카테고리의 다른 글
  • 5. [UE5] LandScape Mode(Landmass, Landscape Spline)
  • 4. [UE5] Displayment, Blend Material, Texture
  • 3. [UE5] 기본 구성 요소(Level, Asset)
  • 2. [UE5] 초기 세팅
스농이
스농이
2024.07.22부터의 기록
  • 스농이
    3D 비주얼 아티스트 성장일지
    스농이
  • 전체
    오늘
    어제
    • 3D 비주얼 아티스트 공부 기록 (78)
      • 1. 콘텐츠 기획 공부 (7)
        • 콘텐츠 기획 [이론] (3)
        • 콘텐츠 기획 [실습] (4)
      • 2. 3D 렌더링 및 생성형 AI 공부 (7)
        • VRED (2)
        • Stable Diffusion & Blender (2)
        • Midjourney & GPT4o (3)
      • 3. 후디니(Houdini) 공부 (16)
        • Houdini [이론] (8)
        • Houdini [실습] (8)
      • 4. 언리얼 엔진(Unreal Engine) 공부 (33)
        • Unreal Engine 5 (26)
        • Automotive Animation 스터디 [기.. (5)
        • Automotive Cinematic 스터디 [심.. (2)
      • 2. 블렌더(Blender) 공부 (15)
        • 지오메트리 노드 [이론] (3)
        • 지오메트리 노드 [실습] (2)
        • Blender [이론 및 실습] (10)
  • 블로그 메뉴

    • 홈
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
스농이
1. [UE5] 기초 개념

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.