기본 콘텐츠로 건너뛰기

글

라벨이 Graphics인 게시물 표시

global illumination

Ray Tracing : specular 효과들을 표현하기에 적합 forward ray tracing : light source -> object -> camera backward ray tracing : 계산량을 감소하기 위해 사용, camera->pixel->object->light source binary ray-tracing tree 를 만들고, final pixel color를 계산 Radiosity : diffuse 효과들을 표현하기에 적합 닫힌 환경에서 빛에너지 보존을 이용(주로 실내 장면을 만들기 위해서 사용)

Double Buffering

목적 drawing 속도에 비해 refresh가 너무 빨리 될때 partial update 문제가 발생 해결책 => Double Buffering back buffer에는 그리고, front buffer로는 display한다. 그리고 update가 끝나면 buffer를 swap한다. 장점 : 원활한 애니메이션 단점 : video memory가 2배로 든다.

light sources의 유형

1. ambient light source 모든 object로 부터 난반사로 인해 균일하고 낮은 빛 2.point light source 한점에서 모든 방향으로 빛을 방출 실제 세계에서는 point가 아니라 area light source인 경우 3. spotlights cone 모양으로 빛을 방출 : 컴퓨터게임에서는 resource 낭비를 없애기 위해서 single light source 를 많이 사용 4. distant light source 빛이 평행하게 들어옴

여러 shading 모델들과 차이점

Flat Shading 한 polygon에 있는 모든 픽셀들에 대해 같은 phong rendering equation을 사용 빠르지만, polygon당 결과가 한색깔 뿐이다. polygon경계에서 색깔이 급격하게 변한다. Gouraud Shading 각 vertex에 phong rendering equation을 적용한다. vertex shader에 구현이 되있음. highlight를 놓칠 가능성이 존재한다. Phong Shading 각 pixel에 phong redering equation을 적용한다. normal vector들을 interpolate 훨씬 많은 양의 계산이 필요하며, fragment shader에 구현되어있다. Blinn-Phong Shading   (r * v) ^ alpha 를  (n * h) ^ alpah 로 근사 r을 계산할 필요가 없기 때문에 더 빠르다.