블로그 이미지
Every unexpected event is a path to learning for you. blueasa

카테고리

분류 전체보기 (2794)
Unity3D (852)
Programming (478)
Server (33)
Unreal (4)
Gamebryo (56)
Tip & Tech (185)
협업 (11)
3DS Max (3)
Game (12)
Utility (68)
Etc (98)
Link (32)
Portfolio (19)
Subject (90)
iOS,OSX (55)
Android (14)
Linux (5)
잉여 프로젝트 (2)
게임이야기 (3)
Memories (20)
Interest (38)
Thinking (38)
한글 (30)
PaperCraft (5)
Animation (408)
Wallpaper (2)
재테크 (18)
Exercise (3)
나만의 맛집 (3)
냥이 (10)
육아 (16)
Total
Today
Yesterday

소프트 파티클은 들인 노력과 비용에 비해서 큰 시각적 효과를 볼 수 있는 방법인 것 같다. 최근 엔진을 Deferred 시스템으로 엔진을 바꾸면서 소프트 파티클을 사용 하기가 쉬웠다( 비단 soft particle뿐 아니라 DOF, SSAO등 깊이 버퍼가 필요한 놈들은 죄다 ㅎㅎ).

연기나 불 등 여러개의 파티클을 사용하는 이펙트들이 오브젝트와 겹치면 좌측 이미지처럼 경계가 날카롭게 나타난다. 소프트 파티클은 이 칼같이 나타나는 경계를 우측처럼 스무스하게 바꿔 주는 것이 기본 목표이다.

알고리즘도 간단하다. PS단에서 파티클 깊이(카메라로부터의 거리)와 뒷 오브젝트의 깊이가 근접할 수록 알파를 더 빼주는 것이다.

더 빼주는 알파 값 D = saturate(( Z object - Z particle) * scale)

단, 그림과 같이 단순하게 위의 수식으로만으로는 덜 자연스럽게 페이드 아웃이 되어 엣지가 존재하기 떄문에 pow()를 걸어주어 좀 더 자연스러운 페이드 아웃이 되게 한다.

당연한 소리가 되겠지만 파티클의 깊이 정렬이 되어 있어야 자연스러운 모습이 나올 것이다. Volumetric Particles니 뭐니 해서 좀 더 귀찮게 하던데, 큰 시각적 차이도 없어 보이고 소팅만 제대로 되어 있으면 굳이 그렇게 까지 할 필요는 없어 보인다.

이 글을 당신 역시 언능 해보시라~ 야구동영상 볼 시간 조금만 아끼면 금방 해보거늘!!!
반응형

'Gamebryo > Shader' 카테고리의 다른 글

알파블렌딩 렌더 설정  (0) 2011.07.22
알파 텍스쳐 블렌딩 공식  (0) 2011.07.22
쉐이더  (0) 2011.04.04
HDR  (0) 2011.04.04
겜브리오 쉐이더 제작시 주의사항  (0) 2011.04.04
Posted by blueasa
, |