[blender node] 02. Mix Color (5)
5. overlay
오버레이
(A가 0.5보다 작을 때) 2AB
(A가 0.5보다 크거나 같을 때) 1-2(1-A)(1-B)
쉽게 말해 A 이미지가 가 0.5 보다 작으면(A 이미지가 어두우면) multifly처럼, A 이미지가 0.5보다 크거나 같으면 (A 이미지가 밝으면) screen처럼 동작합니다.
아래 그림처럼 오버레이로 두 이미지를 블렌딩해보겠습니다.
1번 경우
아래 그림처럼 A(별), B(Wave texture)를 블렌딩한 결과입니다.
2번 경우
이번엔 A, B 위치에 이미지를 서로 바꿔서 블렌딩했습니다. A, B 소켓에 어떤 이미지를 연결하느냐에 따라 결과가 달라집니다.
이미지가 밝으면 밝게, 어두우면 어둡게 블렌딩해줍니다. Linear Light와 비슷하죠.
Linear Light와 Overlay의 차이라고 하면,
1) Linear Light는 B를 기준으로 블렌딩합니다. B가 어두우면 어둡게, 밝으면 밝게 처리해 줍니다.
OverLay는 A 이미지를 기준으로 블렌딩합니다. A가 어두우면 어둡게, 밝으면 밝게 처리해 줍니다.
2) Linear Light는 단순 합 연산 입니다.
OverLay는 곱 연산입니다.
1) 번의 경우... 이미지를 블렌딩하는 연산식에 따라 차이가 납니다.
왼쪽 LinearLight와 오른쪽 Overlay Mixnode 결과입니다. A, B를 바꿔서 연결해야 결과가 비슷하게 나옵니다.
2) 번의 경우 LinearLight는 블렌딩 연산식 ( A + 2B - 1 )이 더하기 빼기로 계산됩니다.
Overlay는 (A가 0.5보다 작을 때) 2AB, (A가 0.5보다 크거나 같을 때) 1-2(1-A)(1-B)로 곱 연산으로 계산됩니다.
이전에 Add와 Sceen의 차이에서 봤듯이, 합 연산보다 곱연산을 했을 때 이미지가 좀 더 부드럽게 섞입니다.
위 이미지 결과만 봐서는 잘 모르겠으니, LinearLight 때처럼 좌표에 섞어보겠습니다.
factor 값은 0.05로 모두 동일합니다. 참고로 soft light도 overlay와 비슷한데, 연산에 A 제곱 값이 포함되어 있어서, overlay보다 더 부드럽게 블렌딩됩니다.
warp 되는 강도가 linear light가 가장 강하고 거칠게 표현되었습니다. soft light는 더 부드럽습니다.
사실 이런 블렌딩 결과를 머릿속에서 계산해서 예측하는 게 쉬운 일은 아닙니다. 특히 연산에 따라 더하고 빼고 나누고 곱하는 것들이 섞여는 linear light나 overlay 같은 복합 노드는 더욱 그렇죠. 그래서 그냥, 눈으로 보고 사용하기를 추천드립니다.
overlay 같은 노드는 어둡고 밝은 영역에 따라 이미지를 부드럽게 섞어줘서, 노이즈를 블렌딩하기 좋은데... 결과를 예측해서 블렌딩 한다기보다는 이 노이즈 섞어보고, 저거 섞어보고 하다가 결과가 좋아 보이는 거 쓰는 것도 나쁜 방법은 아닌 거 같네요.
Mix 노드 옵션
Clamp Result
Clamp Result는 0~1을 벗어나는 값을 0~1에 맞춰 잘라줍니다.
컴퓨터는 가장 어두운색을 0, 가장 밝은색을 1로 표현해 준다고 했습니다. 하지만 블렌더는 사실 0 이상의 값도, 0 이하의 값도 가지고 있습니다. 다만 컴퓨터가 표현할 수 있는 한계가 있을 뿐이죠.
아래 그림처럼 Value 값에 100이라고 입력해도 정상적으로 작동합니다. 다만 가장 밝은 흰색을 1로 표현해 주는 만큼 1의 흰색인지, 100의 흰색인지 구별하지 못하고 똑같이 흰색으로 보일 뿐입니다. 음수의 경우도 마찬가지입니다. 0이 가장 어두운 검은색인데 0보다 어두운 색을 표현하지 못해 같은 검은색으로 보이는 것뿐이죠.
아래 그림처럼 0.5와 1의 밝기를 가지는 체커 텍스처를 만들었습니다.
이 체커 두 개를 add로 블렌딩하면 오른쪽처럼 하얀색 백지가 나옵니다. 하지만 사실 0.5 + 0.5 = 1, 1 + 1 = 2로 2개의 값을 체커 형태로 가지고 있죠. 둘 다 가장 하얀색인 1로 표현되어 모니터에서 구별되지 않아 하얀 평면으로 보일 뿐입니다.
아래처럼 mix node 뒤에 Map Range 노드를 연결해 주면 차이를 느낄 수 있습니다.
Map Range 노드는 value를 입력받습니다. 그리고 0~2까지의 범위를 0~1까지로 수정해 주죠.
아래 그림처럼 from에서 입력받은 값의 범위를 to 범위에 맞춰 수정해 줍니다.
음수도 마찬가지입니다. 0 이하의 음수 값들은 가장 어두운 0으로 표현되어 모니터가 적절하게 표현해 주지 못합니다. 가장 어두운색보다 더 어둡게 표현해 줄 수는 없으니까요. 그래서 0~1을 벗어나는 값들을 map range 노드를 이용해 모니터가 표현해 줄 수 있는 0~1 사이로 값을 수정해 주면 색을 다시 구별할 수 있습니다.
mix 노드의 clamp result 옵션은 이렇게 0~1을 벗어나는 값들을 잘라줍니다. 아래 mix node에서 add 블렌딩 한 텍스처는 보기에 하얀색으로 보일 뿐이지 사실 1과 2, 두 개의 흰색을 가지고 있었죠. 그런데 mix node에서 clamp result 옵션을 켜주면, 0보다 작은 값들은 모두 0으로, 1보다 큰 값들은 모두 1로 만들어 버립니다. 0~1 범위를 벗어나는 값들을 잘라버리는 것이죠. 그러면 map range에서 0~2에 해당하는 값의 범위를 0~1 범위로 수정해 줘도 아래 그림처럼 0.5에 해당하는 회색 영역만 남습니다. 2에 해당했던 흰색은 mix node가 강제로 1로 값을 잘라 map range 노드에 넘겨주었기 때문입니다.
이전 포스팅에서 아래 이미지에 스크래치를 블렌딩했었습니다. 스크래치가 잘 안 보여서 아래처럼 다른 텍스처를 사용해 다시 add 블렌딩해 보겠습니다.
두 이미지를 add로 블렌딩했더니 1을 넘어가는 부분이 모두 하얗게 보입니다. 디테일이 사라졌습니다.
그래서 아래처럼 map range를 하나 달아서 값을 조절해 줬습니다.
이렇게 1이 넘어가서 구별되지 않는 디테일들이 다시 살아났습니다.
여기에 컬러 램프를 달거나 아니면 아래처럼 커브 노드를 달아서 전체적으로 어두워진 밝기를 조절해 줄 수 있습니다.
이렇게 만들어진 이미지를 확대해서 보면 여전히 디테일이 살아있다는 걸 알 수 있습니다. 이렇게 1을 넘어가 하얗게 보이더라도 사실은 다 같은 1 값이 아닙니다.
참고로 아래 그림처럼 view transform 세팅에 따라 뷰포트에서 보는 결과가 달라질 수 있습니다. Agx나 Filmic에서는 화면이 조금 어둡게 나타나서 흰색을 알아보기 힘들 것 같아 아래 그림처럼 View Transform을 Standard로 바꾸고 스크린샷을 찍었습니다.
3. 대 버전에서는 Filmic이 기본 설정이었는데, 4.0 버전부터는 Agx로 변경되었습니다. 이런 설정들은 모니터가 표현할 수 있는 출력 한계 이상의 색을 표현하기 위해 화면을 조금 어둡게 만들어 줍니다. 실제 세상에서는 하얀 물체에 하얀빛을 쏘면 빛을 받은 부분이 더 하얗게 빛나죠. 그런데 그래픽 상에서는 물체를 가장 하얀색으로 설정해 버리면 이 부분이 원래 오브젝트가 하얀 건지 빛을 받아서 하얗게 되는 건지 구분할 수가 없습니다. 둘 다 수치상으로 가장 하얀색을 칠해버린 것과 같기 때문입니다. 그래서 화면을 조금 더 어둡게 해서 빛의 흰색을 구별할 수 있게 해 줍니다. 뷰포트는 빛의 영향을 고려해서 보여주기 때문에 설정을 어떻게 하느냐에 따라 포토샵에서 보는 색과 블렌더에서 보는 색이 조금 달라져 보이기도 합니다.
[blender node] 02. Mix Color (5)
[blender node] 02. Mix Color (5) - 연결된 글입니다.
02. Mix Color (1)
02. Mix Color (2)
02. Mix Color (3)
02. Mix Color (4)
02. Mix Color (5)
02. Mix Color (6) - RGB 3채널
02. Mix Color (7) - 마스크를 이용한 이미지 합성
'블렌더 > 쉐이더' 카테고리의 다른 글
[blender node] 02. Mix Color (7) - 마스크를 이용한 이미지 합성 (1) | 2023.12.27 |
---|---|
[blender node] 02. Mix Color (6) - RGB 3채널 (2) | 2023.12.26 |
[blender node] 02. Mix Color (4) (1) | 2023.12.22 |
[blender node] 02. Mix Color (3) (1) | 2023.12.21 |
[blender node] 02. Mix Color (2) (1) | 2023.12.20 |