write   top   keyword   local   rss   guestbook 
levites
  카테고리
  달력
  검색
  요즘 올라온 글
  요즘 달린 댓글
  요즘 받은 트랙백
  글 보관함
  링크사이트
  방문자 집계
admin
RimLight
개발 - 그래픽 | 08/12/11 18:16

아마 완다와 거상 이후였던거 같습니다만, 어느새 유행이 되어 버린 듯한 인상의 RimLight. allgd 어디선가 어떤 분이 구현해 놓으신 글이 있길래 나중에 봐야지.. 하고 넘어갔던걸 다시 찾아봤더니 블로그가 폭파 되었더군요. 그냥 자료 찾아서 대충 구현 해봤습니다.

링크 : Fake Rim-Lighting, RenderMan Shader Tutorial




한줄 요점 정리. 1.0f - dot(페이스 노말, 카메라에서 버텍스 까지의 단위 벡터).
이것으로 다음과 같은 결과물이 나옵니다.



이것에다 smoothstep 을 이용해 바깥쪽으로 밝기를 모아주면..



완료. 좀 더 예쁘게 보이게 하려면 그래픽 팀원들과 좀 더 이야기를 나눠봐야 하지 않나.. 싶습니다만..

RimLight.zip (302.6 KB)


Microsoft DirectX SDK (November 2007) 의 DX9 Sample 에서 작성했고, 아마 최근 버젼에서도 무난히 컴파일 되리라 봅니다. 컴파일 안되셔도 다른거 볼거 없이 RimLight.fx 의 다음 두줄만 보셔도 됩니다.

vCameraToVertex = normalize(g_CameraPos - vPos);
Output.Diffuse.rgb = smoothstep(1.0f - g_RimWidth, 1.0f, 1 - max(0,dot(vNormal, vCameraToVertex)));

PS : DX 기본 UI 는 대체 왜 만든건지.. orz
MFC 스러워서 프로그래머가 쓰기에 좋긴 하지만..

이미지 출처 : Fake Rim-Lighting, RenderMan Shader Tutorial
트랙백 | 댓글(4)
스팸 방지를 위해 트랙백을 잠시 막아 두었습니다.
마술potato 08/12/14 19:49 R X
어응어~
┗ 
levites 08/12/15 02:05 X
어응어!
수화 10/03/10 12:12 R X
좋은 정보 감사합니다.
담아 가요~
원하지 않으시면 쪽지 주세요

┗ 
L. 10/06/04 11:25 X
부족한 글이지만 도움이 되셨으면 좋겠습니다. :D
이름
비밀번호
홈페이지 비밀글로 저장
  submit
PREV 1 ... 36 37 38 39 40 41 42 43 44 ... 313 NEXT
Powered by  TATTER TOOLS / 
Skin by Lutris