비실사렌더링-툰 쉐이딩
Click here to load reader
Transcript of 비실사렌더링-툰 쉐이딩
Non-Photorealistic Rendering
Toon Shading
Toon Shading
기본 개념 : 단순화를 통한 강조
다각형 영역을 순색으로 채우는 방법
hard shading : 조명을 받는 영역 / 그림자 진 영역 을 나눠서 두 가지 색조로 표시하는 방법
실루엣을 강조하는 방법
실루엣 엣지 렌더링
toon shading에 사용 가능한 edge의 종류
Boundary Edge (경계 엣지)
: 엣지를 공유하는 다각형이 1개인 엣지
Crease Edge (주름 엣지)
: 두 개 이상의 다각형이 접해서 접히는 엣지
능선과 계곡으로 세분화
Material Edge (물질 엣지)
: 엣지를 공유하는 다각형들을 이루는 물질이 다를 때
Silhouette Edge (실루엣 엣지)
: 엣지를 공유하는 다각형 중 하나는 시점을 바라보고
다른 하나는 시점의 반대방향을 바라볼 때
실루엣 엣지 렌더링
표면 각도 실루엣 처리
삼각형의 법선벡터와 시점 벡터의
내적의 값이 0에 가까우면(이루는 각이 90도)
그 삼각형이 실루엣일 것으로 판단,
원형의 검정색 고리를 가지는
구형 환경맵을 적용
N
시점
실루엣 엣지 렌더링
절차적 기하구조 실루엣 처리
frontface(전향면)는 그냥 그리고
backface(후향면)는 엣지를 그려주는 기법
backface를 검정색으로 렌더링할 경우 색이 진해진다.
여러 가지 기법이 있음.
z-bias method
: 후향면을 z축을 따라 시점 쪽으로 이동,
실루엣의 굵기가 일정치 않은 단점
후향 삼각형법
: 후향면의 삼각형들을 확장시킴.
실루엣 굵기가 일정치 않은 문제를 해결
껍질법
: 공유정점의 법선벡터 방향으로 정점을 이동,
셰이더 사용 가능
실루엣 엣지 렌더링
이미지 처리에 의한 실루엣
z-buffer값이 불연속적인 부분에 실루엣이 있을 것.
버퍼의 조작만으로 실루엣을 탐지
수직으로 바라보는 정육면체등의 검출이 어려움
z-depth의 차이가 적은 object들의 검출이 어려움
실루엣 엣지 렌더링