환영합니다
지난 강의에서는 노멀 맵을 사용해 표면에 디테일을 꾸며내는
법을 살펴보았습니다
Flatten Normal 노드를 사용해 노멀 맵의 강도도
제어해 보았습니다
지금까지의 마스터 머티리얼 작업물입니다
텍스처와 입력 값이 점점 더 많아지고 있으며 더 많은 제어도 가능해졌습니다
이 그룹에 코멘트를 달아 Normal이라고 써두어 무슨 역할을 하는지
알아보도록 하겠습니다
그리고 Textures 폴더로 갑니다
지금까지 Base Color(베이스 컬러), Roughness(러프니스)와 노멀 텍스처를 다뤘습니다
다음으로 다뤄볼 것은 이것입니다
AO라고 불리며 Ambient Occlusion(앰비언트 오클루전)의 약자입니다
그렇다면 Ambient Occlusion(앰비언트 오클루전)의 역할은 무엇일까요?
여기 세 개의 이미지를 여러분께 보여드리려고 합니다
첫 번째는 AO가 사용되지 않은 Scene(씬)이며
세 번째는 AO를 사용한 Scene(씬)입니다
차이가 무엇인지 궁금해 하실 수 있습니다
차이가 잘 보이지 않습니다
하지만 자세히 살펴보면 첫 번째 캐릭터에는 코너에 그림자가
없습니다
그리고 AO가 사용된 세 번째 이미지에는 그림자가 있습니다
그리고 중간 이미지는 AO만 사용된 결과입니다
이 세 가지 이미지를 통해 Ambient Occlusion(앰비언트 오클루전)의 개념을 이해하셨을 거라 생각됩니다
이는 가려짐으로 인한 빛의 감쇠를 근사화하는 효과입니다
다시 말해 셀프 그림자 효과 같은 것입니다
이것으로 스스로 그림자가 지도록 할 수 있습니다
미미한 효과이지만 이 효과가 없으면 굉장히 큰 차이를
느끼실 것입니다
처음에는 확연한 차이가 눈에 띄지 않을 수 있지만 특정 Scene(씬)이나 Object(오브젝트)를 자세히 볼수록
무언가 부족하다는 것을 알아차릴 것입니다
프로젝트로 돌아와 보겠습니다
우선 이 텍스처가 올바른 Compression(압축) 설정이 되어 있는지부터 확인해 보겠습니다
더블 클릭으로 열어줍니다
Alpha 채널이 없다고 써있으므로 Compress Without Alpha를
활성화할 수 있습니다
Default(기본값)는 좋지만 sRGB가 활성화되어 있으므로 이 세 채널을 보면
모두 같은 값을 갖고 있으며 이를 Base Color(베이스 컬러)의 입력 값으로도
사용하지 않을 것입니다
그러니 비활성화해야 합니다
저장을 하고 마스터 머티리얼로 돌아갑니다
텍스처 파라미터를 추가해 주겠습니다
Texture Parameter 2D를 입력하고 이름은 AO Input으로 하겠습니다
그리고 기본 값으로 이 Sampler Type을 Linear Color로 설정합니다 이 텍스처가 이미 설정되어 있기 때문입니다
혹시 기억나지 않으신다면 Sampler Type을 Linear Color로 바꿔야 하는 이유는
sRGB가 해제되어 있기 때문입니다
그리고 UV에는 이 Cached UV Input을 플러그 하겠습니다
나머지 부분은 오늘의 과제가 되겠습니다
여러분의 과제는 스칼라 파라미터를 사용해 AO 강도를 제어하는 것인데
값이 1보다 클 수 있기 때문입니다
Multiply노드를 사용할 수 있고 중요한 건 텍스처 Sampler Type에 유의하는 것입니다
그럼 영상을 멈추고 시도해 보시기 바랍니다
어떠셨나요?
성공적으로 AO의 제어를 얻으셨나요?
다시 함께 해봅시다
여기 이미 Cached UV Input이 UV 소켓에 있습니다
출력 값으로는 이 채널들이 모두 같은 값을 갖고 있다는 걸 확인했습니다
그리고 이 AO 소켓은 단일 Float를 필요로 합니다
그러므로 세 채널 중 어느 것을 플러그해도 무관합니다
저는 그냥 레드 채널을 드래그하여 Named Reroutes 노드를 입력합니다
DefaultAOOutput이라고 하겠습니다
우리가 제어하고 싶은 것은 이것의 강도입니다
그러므로 Multiply 노드와 스칼라 파라미터를 추가하겠습니다
이름은 AO Strength라고 하겠습니다
마지막 단계를 분류하는 것입니다
우선 기본 값부터 주도록 하겠습니다
이 AO 텍스처의 그룹은 06 AO로 하며 숫자는 1로 합니다
AO Strength도
그룹 안에 넣어주고 우선 순위는 2로 합니다
그리고 이것을 Multiply 노드에 플러그하여 이것은 DefaultAOOutput에 넣어준 다음 최종 출력할 곳에 가서
우클릭을 합니다
이 CachedDefaultAOOutput을 찾아서 선택하고 AO에 플러그합니다
이름에 Cached를 붙이는 걸 깜빡하여 지금 추가해 주겠습니다
적용하고 머티리얼 인스턴스로 돌아왔습니다
이제 AO에 대한 제어가 생겼습니다
우리가 사용한 텍스처를 사용하고 있으며 여기서 강도를 올릴 수 있습니다
다시 말씀드리지만 차이가 크지 않을 수 있습니다
표면에 추가되는 효과가 미미합니다
이 값을 0으로 바꿨다가 다시 1로 바꾸면 굉장히 미미한 차이입니다
하지만 이 효과가 없을 경우 분명히 알아차릴 것입니다
이번 강의에서는 Ambient Occlusion(앰비언트 오클루전) 맵과 그것을 사용해
셀프 그림자 효과를 구현할 수 있는지 알아보았습니다
AO의 강도도 제어해 보았습니다
수고하셨습니다
다음 강의에서 뵙겠습니다