참고. Unity 5에는 해당 셰이더를 대체하는 스탠다드 셰이더가 도입되었습니다.
참고. Unity 5에는 해당 셰이더를 대체하는 스탠다드 셰이더가 도입되었습니다.
이 셰이더를 사용하면 오브젝트의 밝은 부분과 어두운 부분을 정의할 수 있습니다. 보조 텍스처의 알파 채널은 텍스처에 빛을 비추는 광원이 없는 경우에도 자체적으로 빛을 “방출”하는 오브젝트의 영역을 정의합니다. 알파 채널에서 검정색은 빛이 영(0)이고 흰색은 오브젝트가 방출하는 최대 빛입니다. 씬의 광원은 셰이더 조명에 조명을 더합니다. 따라서 오브젝트가 자체적으로 빛을 방출하지 않는 경우에도 씬의 광원으로 계속 밝혀집니다.
이 프로퍼티는 Diffuse 셰이더처럼 단순(램버트) 조명 모델을 계산합니다. 표면에 비추는 조명은 표면과 광원의 각도가 감소할수록 점점 감소합니다. 조명은 각도에 따라서만 달라지고 카메라가 움직이거나 회전할 때 변하지 않습니다.
Normal mapping 은 실제로 디테일을 생성하기 위해 더 많은 폴리곤을 사용하는 대신 텍스처를 사용하여 작은 표면 디테일을 시뮬레이션합니다. 이 매핑은 오브젝트의 모양을 실제로 변경하지 않지만, 이 효과를 얻기 위해 Normal Map 이라는 특수한 텍스처를 사용합니다. 노멀 맵에서는 각 픽셀의 컬러 값이 표면 노멀의 각도를 나타냅니다. 그런 다음 지오메트리에서 얻은 값 대신 이 값을 사용하여 조명을 계산합니다. 노멀 맵은 오브젝트 조명을 계산할 때 메시의 지오메트리를 사실상 오버라이드합니다.
Unity 외부에서 생성된 노멀 맵을 임포트거나 일반 그레이스케일 이미지를 임포트하여 Unity에서 노멀 맵으로 변환할 수 있습니다. 이 페이지에서는 스탠다드 셰이더로 대체된 레거시 셰이더를 사용하여 설명하지만, 스탠다드 셰이더의 노멀 맵을 사용하는 방법에 대해 자세히 알아볼 수 있습니다.
노멀 맵은 노멀 맵의 탄젠트 공간 타입입니다. 탄젠트 공간은 모델 지오메트리의 “표면을 따르는” 공간입니다. 이 공간에서 Z는 항상 표면에서 먼 쪽을 가리킵니다. 탄젠트 공간 노멀 맵은 다른 “오브젝트 공간” 타입 노멀 맵보다 연산을 조금 더 사용하지만, 몇 가지 장점이 있습니다.
스페큘러는 디퓨즈와 동일한 단순 (램버트) 조명과 뷰어에 따라 다른 스페큘러 하이라이트를 계산하며, 블린퐁 조명 모델이라고 합니다. 스페큘러에는 표면 각도, 광원 각도 및 보는 각도에 따라 다른 스페큘러 하이라이트가 있습니다. 하이라이트는 실제로 광원의 희미한 반사를 시뮬레이션하는 실시간에 적합한 방법입니다. 하이라이트의 블러 레벨은 Inspector 의 Shininess 슬라이더로 조절합니다.
또한 메인 텍스처의 알파 채널은 스페큘러 맵(때로는 “글로스 맵”이라고 함)으로 동작하여 오브젝트의 다른 영역보다 더 반사가 강한 영역을 정의합니다. 알파의 검정색 영역은 스페큘러 반사가 영(0)이고, 흰색 영역은 최대 스페큘러 반사입니다. 오브젝트 영역마다 반사하는 스페큘러 레벨을 다르게 설정하고 싶을 때 매우 유용합니다. 예를 들어 녹슨 금속 같은 물체는 낮은 스페큘러 레벨을 사용하지만, 광택을 낸 금속은 높은 스페큘러 레벨을 사용합니다. 립스틱은 피부보다 스페큘러 레벨이 더 높고, 피부는 면 옷감보다 스페큘러 레벨이 더 높습니다. 잘 만든 스페큘러 맵은 플레이어에게 더욱 현실감 있는 게임 환경을 제공합니다.
일반적으로 이 셰이더는 렌더링할 때 어느 정도 비용이 듭니다. 자세한 내용은 셰이더 퍼포먼스 페이지를 참조하십시오.