1장 그래픽스 시스템과 모델-이미지 형성, 모델, 구조 학습목표 이미지 형성의 기본개념을 이해한다 이미지 형성을 위한 물리적 기본요소를 이해한다 빛, 색, 지각 합성 카메라 모델을 이해한다 그래픽스 API를 이해한다 그래픽스 구조를 이해한다
CG는 위의 장치들의 메커니즘을 소프트웨어로 흉내내어 이미지를 생성한다 이미지 형성 실세계에서의 이미지 형성장치들 카메라 현미경 망원경 인간의 시각 시스템 CG는 위의 장치들의 메커니즘을 소프트웨어로 흉내내어 이미지를 생성한다
이미지 형성의 요소들 객체(Objects) 관측자(Viewer) 광원(Light source) 객체, 관측자, 광원이 독립적이라는 것에 주목하라.
빛(Light) 전자기파 주파수, 파장 가시광선의 파장: 390nm – 720nm 전자기파의 파장
눈의 구조 홍채: 빛의 양을 조절 수정체: 초점거리 조절 막대세포: 명암인식, 어두운 환경에 반응 원추세포: 색상인식, 밝은 환경에 반응
바늘구멍 카메라 점(x,y,z)의 투영(projetion)을 찾기 위해 삼각법을 사용한다. 이것은 간단한 원근법의 식이다.
바늘구멍 카메라의 시야
영상형성의 등가적 견해 카메라 후면에 형성된 영상 영상면을 카메라 앞으로 이동
합성카메라 모델 p 투영선(projector) 이미지 면(image plane) P의 투영(projection of p) 투영중심(center of projection)
클리핑 윈도우 제한된 영상의 크기(시야)를 클리핑 윈도우로 구현한다
프로그래머 인터페이스 API(Application Programmer’s Interface, 응용프로그래머 인터페이스) – 응용프로그램과 그래픽 시스템 사이의 인터페이스로서 그래픽스 라이브러리 안에 있는 함수를 사용해서 명세화된다 API에서 제공하는 함수는 영상의 기술(description)을 위해 사용되는 개념적 모델과 일치한다.
펜 플로터 모델 moveto(0,0); lineto(1,0); lineto(1,1); lineto(0,1); 펜플로터 프로그램 출력
합성카메라 모델은 OpenGL, Direct3D, Java3D 등 인기있는 API의 기반이 된다 다음을 기술할 수 있는 함수가 필요하다 객체 관측자 광원 재질의 특성
3차원 API glBegin(GL_POLYGON) glVertex3f(0.0, 0.0, 0.0); //정점 A glVertex3f(0.0, 1.0, 0.0); //정점 B glVertex3f(0.0, 0.0, 1.0); //정점 C glEnd( );
OpenGL 예제영상 Wire frame Flat shading
OpenGL 예제영상 Smooth shading Environmental mapping
모델링 렌더링 모델링-렌더링 패러다임 장면 내부 물체를 정의하는 작업 선분의 끝점, 다각형의 정점을 정의 고도의 상호작용성이 중요 렌더링 정의될 물체를 그려내기 와이어 프레임 렌더링, 솔리드 렌더링 고성능 수치계산이 필요
그래픽스 구조 초기 그래픽스 시스템
디스플레이 프로세서 구조
파이프라인 구조 산술 파이프라인
그래픽스 파이프라인 기하 파이프라인