Unity의 수채화 화풍 포스트 이펙트
이번에는 아래의 어드벤트 캘린더에도 게시했습니다.
· ARKit Advent Calendar 2018 : Unity와 ARkit로 전뇌콜 앱을 만든 이야기
htps : // 코 m / 아우 소메 / ms / 5b8 예 2b62c0076fbc569
이전 Twitter에서 화제가 되었던 UE4에 의한 수채화 화풍 포스트 이펙트
를 Unity로 만들어 보았습니다.
![](https://s1.md5.ltd/image/7d7763efbbf58c83b09bc116a4dc27ff.png)
아래 트위터에 게시한 동영상
■ OnRenderImage를 사용합니다.
인수로서 렌더링 된 결과를 RenderTexture로 받을 수 있으므로, 그에 대해 셰이더로 필터를 걸는 것으로 이펙트를 걸 수 있다.
OnRenderImage 함수 내에서Graphics.Blit(renderTarget1, renderTarget2, uvShiftMaterial);
하면 렌더 타겟에 셰이더를 할당할 수 있습니다.
인수에 건네주는 renderTarget과 머티리얼을 몇개인가 미리 작성해 두어,
여러 번 반복해서 머티리얼과 renderTarget을 교환해 나가는 것으로 그림을 만들어 갑니다.
필요한 경우, 그 동안 3D 모델의 재질도 교체합니다.
판화로 색을 거듭해 가는 것 같은 작업이군요!
1. 베이스가 되는 렌더링 결과
![](https://s1.md5.ltd/image/049e7bf5ad83da923bd31156d0be6f7f.png)
Unity의 StandardShader와 아웃라인용 머티리얼로 아웃라인을 노멀 방향으로 밀어낸 상태.
2-1. 외곽선만 렌더링 결과
![](https://s1.md5.ltd/image/ca2779aaf7f988180dccccfec189656f.png)
일부 머티리얼을 교체하여 윤곽선만 추출한 상태.
2-2 윤곽선에 노이즈 필터를 적용한 렌더링 결과
![](https://s1.md5.ltd/image/f9fea99f4224849fe9f2fbaea2c7f19d.png)
이전 윤곽선의 렌더링 결과에
・노이즈 텍스처로 마스크
・노멀 맵으로 왜곡
추가했다.
아래 단편 셰이더의 설명입니다.
//일반 맵으로 왜곡float4 n = tex2D(_ShiftNormalTex, i.uv * 4. ); //4は歪みのサイズ
float4 col = tex2D(_MainTex, i.uv + n.xy * 0.03 ); //0.03はstrength
![](https://s1.md5.ltd/image/64bf28e95c837c62f7d11230bb4ebe2b.png)
3. 디퓨즈 렌더링 결과
![](https://s1.md5.ltd/image/ad7ed6bdaaca489e179a2785b2a3f06c.png)
디퓨즈에 색을 붙인 것만.
4. 텍스처 컬러만 렌더링 결과
![](https://s1.md5.ltd/image/71f5dcfac631dc3ccb5516b6b7197722.png)
텍스처 컬러만을 렌더링한 것.
5. 하이라이트 전용 렌더링 결과
![](https://s1.md5.ltd/image/4b10522d878faa8f3aac04c67e798ba5.png)
하이라이트만을 렌더링한 것.
6. 그림자 마스크만 렌더링 결과
![](https://s1.md5.ltd/image/ee2a02828d4f45cd84e9b4db63649c24.png)
그림자를 렌더링한 후 노이즈를 더한 것.
![](https://s1.md5.ltd/image/8a584083523a812882e46c709c2d0ced.png)
1~6 모두를 합성한 렌더링 결과
![](https://s1.md5.ltd/image/7d7763efbbf58c83b09bc116a4dc27ff.png)
아웃라인 + 디퓨즈 + 컬러 + 하이라이트 + 그림자
을 모두 합성한 결과입니다.
비유한다면, 분위기적으로는 Photoshop의 레이어 모드를 변경하거나, 필터를 걸거나・・・라고 하는 식으로 합성해 나가는 느낌입니다.
마지막으로
컨디션 나쁘고 잡담한 기사가 되어 죄송합니다・・・
Reference
이 문제에 관하여(Unity의 수채화 화풍 포스트 이펙트), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/awesome/items/3483cbea779909ab9814
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
인수로서 렌더링 된 결과를 RenderTexture로 받을 수 있으므로, 그에 대해 셰이더로 필터를 걸는 것으로 이펙트를 걸 수 있다.
OnRenderImage 함수 내에서
Graphics.Blit(renderTarget1, renderTarget2, uvShiftMaterial);
하면 렌더 타겟에 셰이더를 할당할 수 있습니다.인수에 건네주는 renderTarget과 머티리얼을 몇개인가 미리 작성해 두어,
여러 번 반복해서 머티리얼과 renderTarget을 교환해 나가는 것으로 그림을 만들어 갑니다.
필요한 경우, 그 동안 3D 모델의 재질도 교체합니다.
판화로 색을 거듭해 가는 것 같은 작업이군요!
1. 베이스가 되는 렌더링 결과
![](https://s1.md5.ltd/image/049e7bf5ad83da923bd31156d0be6f7f.png)
Unity의 StandardShader와 아웃라인용 머티리얼로 아웃라인을 노멀 방향으로 밀어낸 상태.
2-1. 외곽선만 렌더링 결과
![](https://s1.md5.ltd/image/ca2779aaf7f988180dccccfec189656f.png)
일부 머티리얼을 교체하여 윤곽선만 추출한 상태.
2-2 윤곽선에 노이즈 필터를 적용한 렌더링 결과
![](https://s1.md5.ltd/image/f9fea99f4224849fe9f2fbaea2c7f19d.png)
이전 윤곽선의 렌더링 결과에
・노이즈 텍스처로 마스크
・노멀 맵으로 왜곡
추가했다.
아래 단편 셰이더의 설명입니다.
//일반 맵으로 왜곡float4 n = tex2D(_ShiftNormalTex, i.uv * 4. ); //4は歪みのサイズ
float4 col = tex2D(_MainTex, i.uv + n.xy * 0.03 ); //0.03はstrength
![](https://s1.md5.ltd/image/64bf28e95c837c62f7d11230bb4ebe2b.png)
3. 디퓨즈 렌더링 결과
![](https://s1.md5.ltd/image/ad7ed6bdaaca489e179a2785b2a3f06c.png)
디퓨즈에 색을 붙인 것만.
4. 텍스처 컬러만 렌더링 결과
![](https://s1.md5.ltd/image/71f5dcfac631dc3ccb5516b6b7197722.png)
텍스처 컬러만을 렌더링한 것.
5. 하이라이트 전용 렌더링 결과
![](https://s1.md5.ltd/image/4b10522d878faa8f3aac04c67e798ba5.png)
하이라이트만을 렌더링한 것.
6. 그림자 마스크만 렌더링 결과
![](https://s1.md5.ltd/image/ee2a02828d4f45cd84e9b4db63649c24.png)
그림자를 렌더링한 후 노이즈를 더한 것.
![](https://s1.md5.ltd/image/8a584083523a812882e46c709c2d0ced.png)
1~6 모두를 합성한 렌더링 결과
![](https://s1.md5.ltd/image/7d7763efbbf58c83b09bc116a4dc27ff.png)
아웃라인 + 디퓨즈 + 컬러 + 하이라이트 + 그림자
을 모두 합성한 결과입니다.
비유한다면, 분위기적으로는 Photoshop의 레이어 모드를 변경하거나, 필터를 걸거나・・・라고 하는 식으로 합성해 나가는 느낌입니다.
마지막으로
컨디션 나쁘고 잡담한 기사가 되어 죄송합니다・・・
Reference
이 문제에 관하여(Unity의 수채화 화풍 포스트 이펙트), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/awesome/items/3483cbea779909ab9814
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
![](https://s1.md5.ltd/image/ca2779aaf7f988180dccccfec189656f.png)
일부 머티리얼을 교체하여 윤곽선만 추출한 상태.
2-2 윤곽선에 노이즈 필터를 적용한 렌더링 결과
![](https://s1.md5.ltd/image/f9fea99f4224849fe9f2fbaea2c7f19d.png)
이전 윤곽선의 렌더링 결과에
・노이즈 텍스처로 마스크
・노멀 맵으로 왜곡
추가했다.
아래 단편 셰이더의 설명입니다.
//일반 맵으로 왜곡float4 n = tex2D(_ShiftNormalTex, i.uv * 4. ); //4は歪みのサイズ
float4 col = tex2D(_MainTex, i.uv + n.xy * 0.03 ); //0.03はstrength
![](https://s1.md5.ltd/image/64bf28e95c837c62f7d11230bb4ebe2b.png)
3. 디퓨즈 렌더링 결과
![](https://s1.md5.ltd/image/ad7ed6bdaaca489e179a2785b2a3f06c.png)
디퓨즈에 색을 붙인 것만.
4. 텍스처 컬러만 렌더링 결과
![](https://s1.md5.ltd/image/71f5dcfac631dc3ccb5516b6b7197722.png)
텍스처 컬러만을 렌더링한 것.
5. 하이라이트 전용 렌더링 결과
![](https://s1.md5.ltd/image/4b10522d878faa8f3aac04c67e798ba5.png)
하이라이트만을 렌더링한 것.
6. 그림자 마스크만 렌더링 결과
![](https://s1.md5.ltd/image/ee2a02828d4f45cd84e9b4db63649c24.png)
그림자를 렌더링한 후 노이즈를 더한 것.
![](https://s1.md5.ltd/image/8a584083523a812882e46c709c2d0ced.png)
1~6 모두를 합성한 렌더링 결과
![](https://s1.md5.ltd/image/7d7763efbbf58c83b09bc116a4dc27ff.png)
아웃라인 + 디퓨즈 + 컬러 + 하이라이트 + 그림자
을 모두 합성한 결과입니다.
비유한다면, 분위기적으로는 Photoshop의 레이어 모드를 변경하거나, 필터를 걸거나・・・라고 하는 식으로 합성해 나가는 느낌입니다.
마지막으로
컨디션 나쁘고 잡담한 기사가 되어 죄송합니다・・・
Reference
이 문제에 관하여(Unity의 수채화 화풍 포스트 이펙트), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/awesome/items/3483cbea779909ab9814
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
float4 col = tex2D(_MainTex, i.uv + n.xy * 0.03 ); //0.03はstrength
![](https://s1.md5.ltd/image/ad7ed6bdaaca489e179a2785b2a3f06c.png)
디퓨즈에 색을 붙인 것만.
4. 텍스처 컬러만 렌더링 결과
![](https://s1.md5.ltd/image/71f5dcfac631dc3ccb5516b6b7197722.png)
텍스처 컬러만을 렌더링한 것.
5. 하이라이트 전용 렌더링 결과
![](https://s1.md5.ltd/image/4b10522d878faa8f3aac04c67e798ba5.png)
하이라이트만을 렌더링한 것.
6. 그림자 마스크만 렌더링 결과
![](https://s1.md5.ltd/image/ee2a02828d4f45cd84e9b4db63649c24.png)
그림자를 렌더링한 후 노이즈를 더한 것.
![](https://s1.md5.ltd/image/8a584083523a812882e46c709c2d0ced.png)
1~6 모두를 합성한 렌더링 결과
![](https://s1.md5.ltd/image/7d7763efbbf58c83b09bc116a4dc27ff.png)
아웃라인 + 디퓨즈 + 컬러 + 하이라이트 + 그림자
을 모두 합성한 결과입니다.
비유한다면, 분위기적으로는 Photoshop의 레이어 모드를 변경하거나, 필터를 걸거나・・・라고 하는 식으로 합성해 나가는 느낌입니다.
마지막으로
컨디션 나쁘고 잡담한 기사가 되어 죄송합니다・・・
Reference
이 문제에 관하여(Unity의 수채화 화풍 포스트 이펙트), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/awesome/items/3483cbea779909ab9814
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
![](https://s1.md5.ltd/image/4b10522d878faa8f3aac04c67e798ba5.png)
하이라이트만을 렌더링한 것.
6. 그림자 마스크만 렌더링 결과
![](https://s1.md5.ltd/image/ee2a02828d4f45cd84e9b4db63649c24.png)
그림자를 렌더링한 후 노이즈를 더한 것.
![](https://s1.md5.ltd/image/8a584083523a812882e46c709c2d0ced.png)
1~6 모두를 합성한 렌더링 결과
![](https://s1.md5.ltd/image/7d7763efbbf58c83b09bc116a4dc27ff.png)
아웃라인 + 디퓨즈 + 컬러 + 하이라이트 + 그림자
을 모두 합성한 결과입니다.
비유한다면, 분위기적으로는 Photoshop의 레이어 모드를 변경하거나, 필터를 걸거나・・・라고 하는 식으로 합성해 나가는 느낌입니다.
마지막으로
컨디션 나쁘고 잡담한 기사가 되어 죄송합니다・・・
Reference
이 문제에 관하여(Unity의 수채화 화풍 포스트 이펙트), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/awesome/items/3483cbea779909ab9814
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
![](https://s1.md5.ltd/image/7d7763efbbf58c83b09bc116a4dc27ff.png)
아웃라인 + 디퓨즈 + 컬러 + 하이라이트 + 그림자
을 모두 합성한 결과입니다.
비유한다면, 분위기적으로는 Photoshop의 레이어 모드를 변경하거나, 필터를 걸거나・・・라고 하는 식으로 합성해 나가는 느낌입니다.
마지막으로
컨디션 나쁘고 잡담한 기사가 되어 죄송합니다・・・
Reference
이 문제에 관하여(Unity의 수채화 화풍 포스트 이펙트), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/awesome/items/3483cbea779909ab9814
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(Unity의 수채화 화풍 포스트 이펙트), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/awesome/items/3483cbea779909ab9814텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)