언리얼(Unreal) 그래픽스(Graphics)

Six Root·2022년 9월 28일
0

언리얼 엔진 공부

목록 보기
4/15
post-custom-banner

언리얼(Unreal) 그래픽스(Graphics)

기본 용어

머티리얼

액터나 폰의 겉 표면
계산식, ex)빨간색 - 빨간색이라고 계산되어 나온 결과
각 엔진마다 계산식이 다르다.

머티리얼 인스턴스

마스터 머티리얼에서 인자만 바꿔서 쉽게 수정해서 사용할 수 있게 만든 것

PBR 시스템 (Physically Based Renderiing)

세상의 거의 모든것을 표현할 수 있다.
예전엔 영상에서 많이 썼지만 이젠 엔진에서도 사용한다.

픽사(Pixar)에서 처음 사용했다. ex)영화 토이스토리
겨울왕국 눈 표현에 있어서 혁신적이었음.

High Dynamic Range(HDR)

0~255 수치를 넘어서 넓은 색 영역을 볼 수 있음
HDR을 지원하는 모니터를 써야만 넓은 영역의 색을 볼 수 있다.

디퓨즈(Diffuse)

PBR 이전세대 base color 예전 색깔을 담당했던 요소이다.

Roughness(거칠기)

표면의 거칠기를 나타낸다.
Roughness가 0이면 가장 매끄러워서 표면에 주변 환경이 반사된다.
Roughness가 1이면 가장 거칠어서 모든 빛이 반사되지 않는다.
유니티는 Smoothness를 쓰는데 유니티에서 작업했던 결과물 가져올 때 Smoothness를 Roughness처럼 수치를 반전시켜줘야한다.

Metallic(금속성)

표면이 금속처럼 보이게 할지를 결정한다.
빛을 받았을 때 내가 받은 색을 그대로 반사시키는 특성을 지닌다.

Emissive color

표면이 색깔별로 발광한다. 빛의 속성을 지닌다.

Normal Map

면의 수직방향을 알려주는 것. 빛의 방향 각도에 따라 받는 빛의 양을 조절해 주는 역할
분명히 평평한 메쉬지만 둥그렇게 보이게 할 수 있다. 컴퓨터한테 훼이크를 쓰는것.
R->x G->y B->z RGB 좌표를 벡터값으로 만들어 줌
기어즈오브워 대표적으로 노말맵을 잘 활용한 게임
서브스턴스 페인터라는 프로그램을 써서
하이폴리곤 메쉬의 굴곡을 로우폴리곤에 탁본 찍듯이 베이크, 찍어낼 수 있다?(해봐야알듯)
지브러쉬(ZBrush) 손으로 조각한것같은 디테일한 모델링에 최적화된 프로그램
3dmax, 마야는 자동차처럼 단단한 메쉬 같은 큰 모델링에 좋은 프로그램

UV 맵

2D 이미지를 3D 입체에 잘 투영시키기 위해 면(점)을 전개로 펼치듯 펼쳐 평면화 시켜놓은 것
평면 좌표가 메쉬 어느 부분에 위치할 것인지 나타내준다.
맵 전개도에 빈공간이 많으면 데이터 낭비. 빈공간 없이 잘 조절하고 중복되는 부분은 하나만 있어도 됨. 같은 색깔이면 겹쳐서 그릴 수도 있다.
해상도는 상관없다. UV(0,0) ~ UV(1,1)


기억해야할 것

  1. 언리얼에서의 색은 숫자 0~1 숫자의 조합이다.
  2. 색은 R, G, B 세가지의 채널로 이루어진다.
    0~255 숫자를 각각 이용해서 R, G, B 채널을 만든다. (언리얼은 0~1로 표현)
    (0: 가장 어두운 단계, 255: 가장 밝은 단계)
    디지털 삼원색은 빛의 삼원색이라 해도 좋다.
    XYZ 기즈모의 색은 RGB의 성분을 담고 있어서 그렇다.
  3. 0은 검은색, 1은 하얀색을 의미한다.
    Black - 안보인다. 없다.
    White - 보인다. 있다.
  4. RGBA(Alpha)
    A: 투명도는 0~1로 표현한다.
    0=투명
    1=불투명
    RGBA=XYZW
  5. R, G, B 채널을 이용해서도 단채널인 메탈릭, 러프니스를 표현할 수 있다. 흑백으로 표현된 채널.

머티리얼 5개 연산

곱하기(Multiply)

숫자를 곱했을 때 0~1 회색값이 중첩
이미지를 곱했을 때 셀로판지로 보는것처럼 색이 겹쳐짐

더하기(Add)

밝기를 더함
이미지 물들듯이 더해짐

빼기(Subtract)

색 이미지로 뺐을 때 보색계열이 나옴
숫자를 뺐을 때 어두워짐

제곱(Power)

포토샵으로 치면 오버레이 같은 개념
밝은것은 더 밝게 어두운것은 더 어둡게

LinearInterpolate

Alpha: 알파의 하얀색 부분은 불투명 어두운 부분은 투명하게
0에 가까우면 A를, 1에 가까우면 B를 잘 보여줌

그래픽스 노드 정리

Smooth Step

min 값 이하는 다 검은색으로
max 값 이상은 다 흰색으로

ComponentMask

체크안된 부분은 마스크로 가려준다.
체크된 부분을 뽑아 쓰겠다.

AppendVector

x, y가 있다면 z자리를 하나 추가해 주는 노드
각각의 벡터를 추가해줌

1-x

반전, 반대값을 도출

언리얼엔진 문서 참고하면 노드(표현식)에 대한 자세한 설명 있음.
(머티리얼 표현식 레퍼런스)

profile
언리얼 전문가가 될 때까지 (중요한 건 꺾이지 않는 마음)
post-custom-banner

0개의 댓글