본문 바로가기
유니티 라이트 프로브 셰이더 예제 오오 서피스로 이런것도 되는구낭.. 유니티 라이트 프로브 셰이더 예제 플레그먼트 Shader "Probes" { Properties { _MainTex ("Base (RGB) Gloss (A)", 2D) = "white" {} _SHLightingScale("LightProbe influence scale",float) = 1 } SubShader { Tags { "RenderType"="Opaque" "LightMode"="ForwardBase"} LOD 100 CGINCLUDE #pragma multi_compile LIGHTMAP_OFF LIGHTMAP_ON #include "UnityCG.cginc" sampler2D _MainTex; float4 _MainTex_ST; float _SHLight.. 2014. 4. 12.
유니티 물 쉐이더 강의용 예제 흘러가는게 더 이쁘긴 하지만.. 굴절은 프레그먼트 쉐이더를 짜야 하는 관계로 패스. 2014. 4. 10.
스터디용 Normal Map 예습 뭐 일단.. 노말맵 다시 복습. 이미 익숙해진 거라서 크게 어려울 점은 없지만 역시 transpose 부분이 이해가려면 행렬을 다시 공부하는 수 밖에 없을듯. 단지 예제대로 따라하면 Y값이 뒤집혀 나오는데 수정하는건 어렵지 않지만 뭔가 잘못했는지 의심가 ㅋㅋㅋ 아참, 회사에서 노말맵 적용했던 부분이 모바일 기기에서 깍두기처럼 나왔던 것이 혹시 filtering 문제는 아니었나 라는 생각이 복습하면서 불현듯 들었다. 2014. 2. 2.
Unity shader Queue Tags {"Queue"="Transparent" "RenderType"="Transparent"} 에서 Queue 는 그리는 순서를 의미한다고 되어 있다. 지오메트리 이후에 그리는 것으로.. 그렇지만 그것만이 기능의 전부는 아니고, Alpha Blending 때에 소팅 역할도 이것으로 켜주는 것으로 테스트 결과 보인다. 이것이 없으면 소팅이 엉망으로 나오는 것을 볼 수 있었음. 정확히 말하면 소팅을 켜주는 건 아니고.. 번호를 2500번 이상으로 올려주는 것임. 2500번 이상으로 올라가면 소팅이 동작하고 있으니. 2014. 1. 27.
아티스트도 할 수 있는 유니티 쉐이더 코딩 - 2side shader 만들기 가르치고 있던 학생한테 긴급하게 카톡으로 질문이 들어왔길래 이래저래 알려 줬는데, 사정의 여의치 않을 수도 있으니 .. 만약 프로그래머 도움을 기대할 수 없거나 급할 때 아티스트가 간단히 쓸 수 있도록 튜터리얼을 만들어 봅니다. 2side shader는 아티스트한테 많이 필요한데, 정작 유니티에서 간단하게 설정할 수는 없게 되어 있으니까 말이죠. 1. 일단 이런걸 만들었다 칩시다. 보통 나무 만들때들 이런 일이 생기죠. 아래 그림을 보면 분명 plane이 하이어라키에서는 6개인데 에디터 화면에는 3개밖에 보이지 않습니다. 나머지 3개는 지금 분명 화면에 있지만, 뒤집혀져 있어서 보이지 않습니다. 이럴때 아티스트들은 외치죠 '2side 쉐이더를 만들어 줘!!' 2. 일단 shader를 확인해 봅시다. 알파.. 2014. 1. 8.
스터디 예습 / 렌더몽키 셀쉐이딩 내일 세미나를 위해 간단히 손풀기 예습. 실제 하는건 몇 분 걸리지도 않지만 딴짓하느라 오래 걸렸다. 여기서 좀 개념을 잘못 가지고 있었던 부분을 포프스승님과 얘기하느라고. 개념을 애매하게 가지고 있던 부분은 '조명을 월드 역행렬 연산하는 것이 어째서 주전자의 로컬영역으로 조명을 이동시키는 결과가 되냐' 라는 개념이었고, 그 답은 다음과 같았다. 1. 조명은 원래 월드 행렬이다. 2. 주전자는 로컬에서 월드 - 카메라 - 프로젝션을 거친 상태다. 3. 여기서 받아온 '월드 역행렬'이라 함은 새로운 값이 아니고, 주전자의 월드 행렬을 뒤집은 것 뿐이다. 4. 그러므로 원래 월드에 있던 조명을 주전자의 역행렬로 뒤집어 주니 조명이 주전자의 로컬 공간안에 들어오게 된 것이다. 그전에는 조명은 월드에 있었고 -.. 2014. 1. 4.
SSE (Strumpy Shader Editor) 정리 . 시간날때마다 계속 업데이트 SSE 연구 시작. 일단 노드가 알고 있는 그게 맞나 확인해 볼 필요가 있어서 시작.. 일이 바빠서 조금씩 업데이트 하네요. SSE가 뭔가요? SSE (Strumpy Shader Editor) 란 언리얼의 메터리얼 에디터나 shaderFX 처럼 노드구조로 셰이더를 짤 수 있게 해주는 툴입니다. 문제는 이게 유니티의 독창적인 셰이더 구조에 맞춰서 되어 있기 때문에 다른 셰이더 에디터랑은 조금 다른 개념이 들어 있다는 거. (라이팅 노드가 독립되어 있습니다) 또 하나는, 아티스트를 너무 무시했는지 -_- float 이나 float2 구조까지 전부 억지로 float4로 강제로 맞춰놨습니다. 그래서 0 이 float4(0,0,0,0) 으로 되어 있다는 괴이한 구조. 즉 학습용이나, 셰이더 최적화따윈 거의 중요하.. 2013. 2. 10.
ShaderFX를 이용한, 그래픽 디자이너를 위한 기초 쉐이더 강좌 연재종료 안내 마지막회입니다 :) 그래도 꽤 오래 했어요. 첫 강의가 2011년 12월 18일에 한 거니까 우왘ㅋㅋ 1년 훨씬 넘었잖앜ㅋㅋㅋ 게대포에서 나보다 더 오래 연재한 사람 있으면 나와보라고 그래 ㅋㅋㅋ 근데 정말 빨리 지나갔네요. 처음에 이거 연재하겠다고 포프님하고 얘기할 때가 생각나네요. 그 때 대충 '한 20강 하지 않겠어요?' 라고 했는데 ...부왘ㅋㅋㅋ 벌써 19강이라니요 ㅋㅋㅋ 사실 이것 이후로도 연재할 수 있는 내용은 더 있습니다. smoothstep을 이용한 fake SSS라던가, 으악 specular 얘기는 한 마디도 안했었군요 세상에 이런 왓더. 그리고 Reflection 이나 Refraction도 한 마디도 안했어요 어머나 세상에... 나 연재 끝내도 되는거니... 그림자... 같은것도 이걸.. 2013. 1. 13.
[마지막회]ShaderFX를 이용한, 그래픽 디자이너를 위한 기초 쉐이더 강좌 19강 자아 오늘은 그럼 진짜 마지막회로, 외곽선을 구현해 보겠습니다. 사실 외곽선 구현은 shader로 해야 하는데, shaderFX로 구현해 보려고 해 봤더니 기능이 부족한 부분이 있더군요. 첫 번 째 방법은 그냥 하면 되니까 문제 없는데... 두 번째 방법이 문제가 있어요. 일단 면을 뒤집어야 하는데, 앞면만 컬링하는 기능이 없어요 ... 그리고 vertex의 normal을 받아와야 하는데, vertex normal은 없고 surface normal만 있네요. 써봤더니 일단 뭐 작동은 하길래 뒤집는거 외에는 잘 되나보다.. 했더니, 이번엔 max의 normal 뒤집기 기능과 충돌이 나는지, 뒤집어도 안 나오더라고요. 그래서 에라 모르겠다 하고 두 번째 방법은 그냥 맥스 기능으로 설명해 버리려 합니다. 자 .. 2013. 1. 13.
ShaderFX를 이용한, 그래픽 디자이너를 위한 기초 쉐이더 강좌 18강 Diffuse Warping을 이용한 고급 셀 셰이딩 18강입니다! 저번 시간에 이어서 만화같은 툰셰이더를 만드는 얘기를 계속 해 보도록 하지요. 원래는 오늘 외각선을 해버리고 끝내려 했는데, 저번 강의의 리플에 재미있는 얘기가 씌여 있어서... 후후후 계획을 좀 바꿨습니다. 지난 번에는 if 문을 이용해서 1 ~ -1 까지 되어 있던 조명값을 딱! 한 숫자로 나눠서 두 가지 색상으로만 이루어지게 만들었습니다. 일정 숫자보다 크면 흰색을, 일정 숫자보다 작으면 붉은 색을 말이죠. 그 예제가 아래입니다. if문을 이용해서, 0보다 크면 무조건 흰색을 내놓고, 0보다 작으면 무조건 붉은색을 내놓으라는 내용이었습니다. 이것 말고 ceil 함수를 이용한 방식도 있었는데, 저번 시간 반응이 별로 안좋아서 설명 안.. 2013. 1. 13.
ShaderFX를 이용한, 그래픽 디자이너를 위한 기초 쉐이더 강좌 17강 간만입니다. 우후후 연재가 늦은 이유는 여행을 좀 갔다와서 .. .후후후 자 그러면 오늘은 또 재밌는걸 해보요 우후후 오늘 할 건 이겁니다. 툰 셰이더! 그렇습니다. 만화처럼 나오게 만드는 저 셀 셰이딩. 저걸 해 보도록 하겠습니다. 보통, shader의 진짜 강점을 아티스트들이 매우 표면적으로 느끼게 되는 순간이 저걸 하는 순간이지요. 그럼 일단 만화처럼 보이는 툰 셰이딩에 대해 생각해 봅시다. 툰 셰이딩은 어떤 특징을 가지고 있나요? 1. 외곽선이 있다 2. 음영이 2~3 톤으로 되어 있다. 물론 아닌 경우도 있지만, 보통 저런 식으로 되어 있습니다. 이미지 출처 : http://www.nocutnews.co.kr/show.asp?idx=465574 이것은 셀 에니메이션의 특성상, 투명한 합성수지에 .. 2013. 1. 3.
간만에 해보는 shader 기초 복습 아아 진짜 오래간만에 해보니까 막 감도 안오고 막 이래 ㅋㅋㅋ 일단 기본적인 light 계산이랑 ambient 정도는 넣어봤음. 역시 간만이라고 해도 기초는 한번 다시 훑어주는게 좋은 것 같네. 막 재밌다능 ㅋ 2012. 12. 26.
반응형