Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson...

26
그래픽스 구성 기초 Basic of graphic configuration 그래픽 정보 처리 (Graphic Information Processing)

Transcript of Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson...

Page 1: Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson 렌더링소프트웨어 "Renderman" 개발 1990 Gary Yost 3-D Studio 개발 1991 Disney and Pixar

그래픽스구성기초Basic of graphic configuration

그래픽정보처리 (Graphic Information Processing)

Page 2: Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson 렌더링소프트웨어 "Renderman" 개발 1990 Gary Yost 3-D Studio 개발 1991 Disney and Pixar

컴퓨터 그래픽스

2

컴퓨터 그래픽스란??

- 컴퓨터를사용하여실제세계영상을조작또는영상을생성하는기술- 다양한응용분야에서활용

> 캐드 / 프레젠테이션 / 가상현실 / 미술 / 애니메이션 / 게임교육훈련 / 자연과학가시화 / 그래픽사용자인터페이스

증상현실

에니메이션

프레젠테이션

Page 3: Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson 렌더링소프트웨어 "Renderman" 개발 1990 Gary Yost 3-D Studio 개발 1991 Disney and Pixar

컴퓨터 그래픽스

3

컴퓨터 그래픽스란??

학습보조도구컴퓨터활용

시뮬레이션

게임

Page 4: Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson 렌더링소프트웨어 "Renderman" 개발 1990 Gary Yost 3-D Studio 개발 1991 Disney and Pixar

컴퓨터 그래픽스

4

컴퓨터 그래픽스란??

대용량정보분석 /자연현상시각화, 내부패턴및추세직관적으로파악

Page 5: Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson 렌더링소프트웨어 "Renderman" 개발 1990 Gary Yost 3-D Studio 개발 1991 Disney and Pixar

컴퓨터 그래픽스

5

컴퓨터 그래픽스란??

그래픽사용자인터페이스(메뉴, 스크롤바, 아이콘등)

Page 6: Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson 렌더링소프트웨어 "Renderman" 개발 1990 Gary Yost 3-D Studio 개발 1991 Disney and Pixar

컴퓨터 그래픽스

6

컴퓨터 그래픽스는 언제부터??

1950 - 1960

- 미국벤라포스키(Ben F. Laposky)가전자장치를이용한최초그래픽이미지표출

- 윌리엄페터(William Fetter)가 ‘컴퓨터그래픽스’ 라는용어를처음으로사용

- 스트립차트 (Strip Charts), 펜플로터 (Pen Plotters), 아날로그 / 디지털변환기사용 CRT 모니터로간단한표출

Page 7: Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson 렌더링소프트웨어 "Renderman" 개발 1990 Gary Yost 3-D Studio 개발 1991 Disney and Pixar

컴퓨터 그래픽스

7

1960 - 1970

- 1963년> 이반서덜랜드(Ivan Sutherland) 컴퓨터그래픽스제반개념확립> 더글러스엥겔바트(Douglas Englebart) 최초마우스프로토타입개발

- 1965년> 잭엘튼브레센햄(Jack Bresenham) 선분그리기알고리즘개발

이반서더런드(Ivan Sutherland)- 컴퓨터그래픽의창시자- 대화형컴퓨터그래픽개념: 라이트펜으로의

사전달- 스케치패드프로젝트- 직선, 원호등기본적그래픽요소를사용하여

물체를표현하는방법- 기본물체를조합하여 큰물체를모델링한다는

계층구조모델링- 물체를선택하여이동하는방법- 팝업메뉴에의한사용자입력

와이어프레임표현

Page 8: Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson 렌더링소프트웨어 "Renderman" 개발 1990 Gary Yost 3-D Studio 개발 1991 Disney and Pixar

컴퓨터 그래픽스

8

1970 - 1980

- 그래픽알고리즘시기라고볼수있음- 래스터그래픽스 (픽셀배열로생성된이미지)- 그래픽표준시작

> 국제정보처리사회연맹 (IFIPS)(유럽) ISO 2D 표준채택(북미) 3D 표준… (하지만표준채택은 X)

1971 Gouraud 구로 셰이딩 알고리즘

1973 John Whitney Jr.컴퓨터 그래픽에 의한 최초의 영화“West World"

1974 Edwin Catmuff 텍스쳐 매핑, 지-버퍼 알고리즘

1974 Bui-Tong Phong 전반사에 의한 하이라이트 알고리즘

1975 Martin Newell 베지어 표면 메쉬를 사용한 차 주전자 모델

1975 Benoit Mandelbrot 프랙탈 이론

1976 Jim Blinn 주변 매핑, 범프 매핑 이론

1977 Steve Wozniak 컬러 그래픽 PC: Apple II

1977 Frank Crow 앤티 에일리어싱 알고리즘

1979 Kay, Greenberg 최초로 투명한 물체 면을 그려냄

(IFIPS: International Federation of Information Processing Societies)

워크스테이션 / PCs

Page 9: Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson 렌더링소프트웨어 "Renderman" 개발 1990 Gary Yost 3-D Studio 개발 1991 Disney and Pixar

컴퓨터 그래픽스

9

1980 - 1990

- PC 시대- 래스터그래픽하드웨어- 기하엔진출현

1980 Turner, Whitted 광선 추적 알고리즘

1982 Steven Lisberger 3차원 그래픽 애니메이션 “Tron"

1982John Walkner,Dan Drake

"AutoCAD"

1983 Jaron Lanier 데이터 장갑을 사용한 가상현실 영화

1985 Pixar "Luxo Junior"

1985 NES 가정용 게임 "Nintendo"

1986 Steve Jobs Lucasfilm사의 Pixar 그래픽 그룹을 인수

1987 IBM VGA 그래픽 카드

1989 IBM SVGA 그래픽 카드

1989 Pixar "Tin Toy" 아카데미상 수상

Page 10: Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson 렌더링소프트웨어 "Renderman" 개발 1990 Gary Yost 3-D Studio 개발 1991 Disney and Pixar

컴퓨터 그래픽스

10

1990 - 2000

- 사실적그래픽영상주력- OpenGL API 사양발표

1990 Pixar: Hanrahan, Lawson렌더링소프트웨어"Renderman" 개발

1990 Gary Yost 3-D Studio 개발

1991 Disney and Pixar "Beauty and the Beast"

1992 Silicon Graphics openGL 사양발표

1993 Steven Spielberg "Jurassic Park"

1995 Pixar "Toy Story"

1995 Microsoft DirectX API 사양발표

1996John Carmack,Michael Abrash

Quake 그래픽엔진개발

1999 NVIDIA GeForce 256 GPU

API(Application Programming Interface, 응용 프로그램 프로그래밍 인터페이스)는 응용 프로그램에서 사용할 수 있도록, 운영 체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스를 뜻한다. 주로 파일 제어, 창 제어, 화상 처리, 문자 제어 등을 위한인터페이스를 제공한다.

Page 11: Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson 렌더링소프트웨어 "Renderman" 개발 1990 Gary Yost 3-D Studio 개발 1991 Disney and Pixar

컴퓨터 그래픽스

11

2000 - 2010

- 영화 / 게임응용- 포토리얼리즘(Photorealism)- PC 용그래픽카드시장

활성화 (Nvidia, ATI)- 영화산업: Maya, Lightwave …- 프로그램가능한파이프

라인- 새로운디스플레이기술

Page 12: Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson 렌더링소프트웨어 "Renderman" 개발 1990 Gary Yost 3-D Studio 개발 1991 Disney and Pixar

컴퓨터 그래픽스

12

2010 - 현재

- 모바일형태그래픽스활용기술발표- 다양한분야에그래픽스기술활용및진화

Page 13: Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson 렌더링소프트웨어 "Renderman" 개발 1990 Gary Yost 3-D Studio 개발 1991 Disney and Pixar

컴퓨터 그래픽스

13

- ES = embedded system = 내장형시스템- 기계나기타제어가필요한시스템에대해, 제어를위한특정기능을

수행하는컴퓨터시스템으로장치내존재하는전자시스템- OpenGL ES는크로노스그룹이정의한 3차원컴퓨터그래픽스 API인

Open GL 서브셋으로스마트폰과같은임베디드단말을위한 API

Page 14: Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson 렌더링소프트웨어 "Renderman" 개발 1990 Gary Yost 3-D Studio 개발 1991 Disney and Pixar

컴퓨터 그래픽스

14

컴퓨터 그래픽스 이론

2가지구성요소

모델링(What to Draw)

렌더링(How to Draw)

- 모델링> 장면내부물체를정의하는작업> 선분의끝점, 다각형의정점정의

- 렌더링> 정의될물체그려내기> 와이어프레임렌더링, 솔리드렌더링

Page 15: Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson 렌더링소프트웨어 "Renderman" 개발 1990 Gary Yost 3-D Studio 개발 1991 Disney and Pixar

그래픽 하드웨어

15

그래픽 시스템

- 입력장치, 메인컴퓨터, 그래픽컨트롤러, 출력장치

그래픽 컨트롤러

- 그래픽프로세서 / 그래픽메모리

입력장치 컴퓨터 / 그래픽컨트롤러

출력장치

• Processor• Memory

Page 16: Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson 렌더링소프트웨어 "Renderman" 개발 1990 Gary Yost 3-D Studio 개발 1991 Disney and Pixar

그래픽 시스템

16

래스터(raster) 방식 지원

- 그림은화소(pixel) 배열인래스터로생성

Page 17: Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson 렌더링소프트웨어 "Renderman" 개발 1990 Gary Yost 3-D Studio 개발 1991 Disney and Pixar

그래픽 시스템

17

좌표계

- 모양과위치를결정하고자한다면 “공간”이필요- 공간 = 좌표계- 정규직교 (orthonormal) 좌표계이며, 보통 x, y, z 세개의축을가짐- 왼손좌표계 -> Z 축이모니터안쪽으로들어가는방향- 오른손좌표계 -> Z 축이모니터바깥으로나가는방향

Page 18: Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson 렌더링소프트웨어 "Renderman" 개발 1990 Gary Yost 3-D Studio 개발 1991 Disney and Pixar

그래픽 시스템

18

왼손? 오른손? 좌표계

Driect X

OpenGL

Page 19: Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson 렌더링소프트웨어 "Renderman" 개발 1990 Gary Yost 3-D Studio 개발 1991 Disney and Pixar

그래픽 시스템

19

프레임 버퍼

- 래스터주사방식에서화면에나타날영상정보를일시적으로저장하는기억장치

- 프레임버퍼(Frame buffer) = 컬러(Color) + 깊이(Depth) + 원판(Stencil)

Color : 화면의색정보저장Depth : 화면에찍히는 2D 좌표Stencil : 공판화

프로세서 장치

- 단순시스템 : CPU가모두수행- 고급시스템: 독립적인그래픽프로세서사용

Page 20: Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson 렌더링소프트웨어 "Renderman" 개발 1990 Gary Yost 3-D Studio 개발 1991 Disney and Pixar

그래픽 시스템

20

3D 그래픽

- 폭, 높이, 깊이를나타내는축의공간좌표를이용하여표현후화면이나종이등 2차원결과물로출력하는그래픽기술

- 표시하기위한 “모델링”, 오브젝트재질과표면처리를위한 “매핑”,카메라와조명등을고려하여완성된이미지를만드는 “렌더링“과정필요

3D 실세계좌표

3D 관측좌표

3D 관측좌표

2D 관측좌표

2D 단위좌표

관측좌표계로변환

관측볼륨에서절단

관측영역으로투영

2차원뷰포트로변환

장치좌표계로변환

Page 21: Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson 렌더링소프트웨어 "Renderman" 개발 1990 Gary Yost 3-D Studio 개발 1991 Disney and Pixar

이미지 형성 요소

21

3D 모델 종류

- 와이어프레임모델 (Wireframe Model)- 서피스모델 (Surface Model)- 솔리드모델(Solid Model)

Page 22: Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson 렌더링소프트웨어 "Renderman" 개발 1990 Gary Yost 3-D Studio 개발 1991 Disney and Pixar

이미지 형성 요소

22

광원 ( Light source(s) )

- 관측자가객체를볼때빛이없을경우이미지에아무것도 X

추가 속성

- color, shininess, pattern, texture, and etc. (etcetera)

물리적접근

광원 -> 물체(객체) 표면 -> 반사광 -> 카메라렌즈

Page 23: Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson 렌더링소프트웨어 "Renderman" 개발 1990 Gary Yost 3-D Studio 개발 1991 Disney and Pixar

이미지 형성 요소

23

광원 = 빛

- 전자기파의한형태- 가시광선파장

- 물리적으로실제광원은아주복잡- 단순화

> 점광원(point light) : 모든방향으로동일한에너지방출> 단색광원(monochromatic light) : 빛의밝기만

Page 24: Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson 렌더링소프트웨어 "Renderman" 개발 1990 Gary Yost 3-D Studio 개발 1991 Disney and Pixar

이미지 형성 요소

24

광선 추적

- 광원으로부터광선을따라감으로써이미지형성의모형설정- 광선: 한점으로부터나가서특정방향으로무한하게진행하는반

직선

Page 25: Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson 렌더링소프트웨어 "Renderman" 개발 1990 Gary Yost 3-D Studio 개발 1991 Disney and Pixar

이미지 형성 요소

25

광선 추적

Page 26: Basic of graphic configuration-OpenGL API 사양발표 1990 Pixar: Hanrahan, Lawson 렌더링소프트웨어 "Renderman" 개발 1990 Gary Yost 3-D Studio 개발 1991 Disney and Pixar

이미지 형성 요소

26

은면 제거 (Hidden Surface Removal)

- 시점에서앞에있는객체나가려진면들을제거하는과정- 현실감그래픽 / 렌더링시간감소