7장. 투상변환과 뷰포트변환 학습목표 평행투상과 원근투상의 차이점을 이해한다. 가시부피 설정방식을 이해한다.

Slides:



Advertisements
Similar presentations
2. 속력이 일정하게 증가하는 운동 Ⅲ.힘과 운동 2.여러 가지 운동. 도입 Ⅲ.힘과 운동 2. 여러 가지 운동 2. 속력이 일정하게 증가하는 운동.
Advertisements

강의 내용 : 카메라 DirectX 9 을 이용한 게임 개발 기본 코스. 목 차 카메라 요구사항 구현.
장. 텍스쳐 학습목표 텍스쳐의 정의와 종류를 이해한다. 평면 다각형의 텍스쳐 매핑 방법을 이해한다. 파라미터로 표현된 곡면 다각형의 텍스쳐 매핑 방법을 이해한다. 파라미터로 표현할 수 없는 곡면 다각형의 텍스쳐 매핑 방법을 이해 한다. 텍스쳐 매핑에서 에일리어싱이.
1. 도형의 연결 상태 2. 꼭지점과 변으로 이루어진 도형 Ⅷ. 도형의 관찰 도형의 연결상태 연결상태가 같은 도형 단일폐곡선의 성질 연결상태가 같은 입체도형 뫼비우스의 띠.
수학을 통해 배우는 IT 과학의 세계 전북대: 한상언 교수.
School of Computer, Information and Communication Engineering
Multimedia Programming 14: Image Warping 2
3D Computer Graphics 5. Viewing 동신대학교 멀티미디어컨텐츠 연구센터 Viewing Process first part : model-view in Chapter 4 second part : projection in Chapter.
11장. 텍스쳐 학습목표 텍스쳐의 정의와 종류를 이해한다. 평면 다각형의 텍스쳐 매핑 방법을 이해한다.
5. 좌표변환과 OpenGL행렬 이론.
Lecture #8 제 5 장. 관측(viewing).
모 바 일 게 임 제 작 한국IT전문학교 박재성.
Chap 9. 텍스쳐(Texture).
1-1 일과 일률.
1장 – 그래픽스 시스템과 모델 2장 – 그래픽스 프로그래밍 3장 – 입력과 상호작용 4장 – 기하학적 객체와 변환 5장 관측
학습목표 7장. 투상변환과 뷰포트변환 평행투상과 원근투상의 차이점을 이해한다. 가시부피 설정방식을 이해한다.
학습목표 7장. 투상변환과 뷰포트변환 평행투상과 원근투상의 차이점을 이해한다. 가시부피 설정방식을 이해한다.
CHAPTER 04 안테나 기초 Antenna Basics
5.2 뷰 프레임과 뷰 변환 가상 카메라 정의 가상 카메라 정의하기 1 ) 어디에 있는가
MCT 기초실기 V-CNC KLIT.or.kr.
학습목표 8장. 가시성 판단 후면제거의 정의와 처리방법을 이해한다. 절단작업의 정의와 처리방법을 이해한다.
Chapter2 기술적 배경 지식 구희모 권영우.
학습목표 11장. 텍스쳐 텍스쳐의 정의와 종류를 이해한다. 평면 다각형의 텍스쳐 매핑 방법을 이해한다.
다각형.
3차원 물체 그리기.
강원대학교 공과대학 제어계측공학과 2010년도 제2학기
Ⅱ. 지구의 변동과 역사 1. 지구의 변동 2. 지구의 역사 3. 우리나라의 지질.
제4장 제어 시스템의 성능.
별의 밝기와 거리[2] 밝다고 가까운 별은 아니야! 빛의 밝기와 거리와의 관계 별의 밝기 결정.
빅데이터 연구회 6주차 발표 주제 : 서포트 벡터 머신 통계학과 서태석.
Open GL GLUT 라이브러리 국내 관련사이트 다운받으세요.
피타고라스 정리 Esc.
SEOUL NATIONAL UNIVERSITY OF SCIENCE & TECHNOLOGY
도형의 기초 3. 기본작도 삼각형의 작도 수직이등분선의 작도 각의 이등분선의 작도.
등각투상법과 사투상법 기술 ·가정 1학년 2학기 Ⅳ. 제도의 기초>1. 물체를 나타내는 방법>9/13 [제작의도]
SEOUL NATIONAL UNIVERSITY OF SCIENCE & TECHNOLOGY
Clipping 이진학.
정다면체, 다면체와 정다각형, 다각형의 관계 한림초등 학교 영제 6학년 5반 송명훈.
다면체 다면체 다면체: 다각형인 면만으로 둘러싸인 입체도 형 면: 다면체를 둘러싸고 있는 다각형
SEOUL NATIONAL UNIVERSITY OF SCIENCE & TECHNOLOGY
삼각형에서 평행선에 의하여 생기는 선분의 길이의 비
CAD 실습 2013년 2학기.
대칭과 전위 3차원 대칭과 32 점군 정족과 정계 결정면의 명칭 3차원 격자와 230 공간군 결정형 결정의 투영
1. 단면도 그리기 (1) 단면도의 정의 물체의 외형에서 보이지 않는 부분은 숨은선으로 그리지만, 필요한
Real time Interaction HyoungSeok Kim
1. 선분 등분하기 (1) 주어진 선분 수직 2등분 하기 ① 주어진 선분 AB를 그린다. ② 점 A를 중심으로 선분AB보다
Window, Viewport Window, Viewport.
2장. 일차원에서의 운동 2.1 평균 속도 2.2 순간 속도 2.3 분석 모형: 등속 운동하는 입자 2.4 가속도
서울대학교 컴퓨터공학부 김명수 행렬과 2차원 변환 서울대학교 컴퓨터공학부 김명수
2장 변형률 변형률: 물체의 변형을 설명하고 나타내는 물리량 응력: 물체내의 내력을 설명하고 나타냄
Chapter 1 단위, 물리량, 벡터.
7장 전위이론 7.2 금속의 결정구조 7.4 인상전위와 나선전위 7.5 전위의 성질.
원의 방정식 원의 방정식 x축, y축에 접하는 원의 방정식 두 원의 위치 관계 공통접선 원과 직선의 위치 관계
Chapter 1 단위, 물리량, 벡터.
공도의 실버라이트 하기 좋은 날 퍼스펙티브 3D로 깊이 있게.
1. 정투상법 정투상법 정투상도 (1) 정투상의 원리
자동차의 정의 및 제원 자동차의 정의 치수에 의한 제원
SEOUL NATIONAL UNIVERSITY OF SCIENCE & TECHNOLOGY
학습 주제 p 질량과 부피 측정 방법 알기.
우선 각 평면도에서 점선으로 강조한 직육면체 형상의 피처를 생성한다. 여기서 컴퓨터응용가공산업기사 준비를
컴퓨터공학과 손민정 Computer Graphics Lab 이승용 교수님
Ⅳ. 제도의 기초 1. 물체를 나타내는 방법 3) 물체의 표현 방법 (2) 입체도법 지도학급 : 태화중학교 1학년 4반
2장 선과 글자 모양에 따른 분류 제품 제작을 하기 위한 도면에는 제품의 정보인 형상, 치수,
정다면체와 정다각형의 관계 한림초등 학교 영제 6학년 5반 송명훈.
SEOUL NATIONAL UNIVERSITY OF SCIENCE & TECHNOLOGY
디자인론 5강 1. 조형을 위한 지각론(2).
Learning HTML5 Canvas #2 Jeon Yong ju.
SEOUL NATIONAL UNIVERSITY OF SCIENCE & TECHNOLOGY
Lecture #6 제 4 장. 기하학적 객체와 변환 (1).
Presentation transcript:

7장. 투상변환과 뷰포트변환 학습목표 평행투상과 원근투상의 차이점을 이해한다. 가시부피 설정방식을 이해한다. glOrtho( ) 함수와 gluPerspective( ) 함수 파라미터를 이해한다. 전방 절단면을 되도록 시점에서 멀리 가져가는 이유를 이해한다. 시점좌표, 절단좌표, 정규화 장치좌표, 화면좌표로의 변환과정을 이해한다.

투상 투상(Projection) = 가시변환(Viewing Transformation) 투상면(View Plane, Projection Plane) 관찰자 위치(View Point, Eye Position) = 카메라 위치(Camera Position) = 투상중심(COP: Center of Projection) = 시점좌표계 원점(Origin of VCS) 투상선(Projectors): 물체 곳곳을 향함 시선(Line of Sight) : WCS원점 또는 초점을 향함 투상면(Projection Plane, View Plane)

평행투상(Parallel Projection) 시점이 물체로부터 무한대의 거리에 있다고 간주 투상선이 평행 원래 물체의 평행선은 투상 후에도 평행 시점과의 거리에 무관하게 같은 길이의 물체는 같은 길이로 투상 정사투상, 축측투상, 경사투상 등으로 분류

정사투상(Orthographic Projection) 평면도, 입면도, 측면도 등 주 평면(Principal Plane): MCS 주축인 x, y, z에 의해 형성되는 x-y, y-z, z-x 투상면은 주 평면 중 하나와 평행 투상선은 투상면과 직교 원래 물체의 길이를 정확히 보존. 공학도면에 사용 투상선이 반드시 투상면과 직교-> 시점위치가 제한됨.

축측투상(Axonometric Projection) 한꺼번에 여러 면을 보여줌 투상선은 투상면과 직교. 투상면이 주평면들과 평행하지 않음 축 방향으로 서로 다른 축소율(cf. 정사투상) 삼각(삼중형, Trimetric) 투상면이 임의의 위치. 양각(이중형, Dimetric) 투상면이 2 개의 주 평면에 대해서 대칭적. 2개의 축 방향에 대해 동일 축소율 등각(동형, Isometric) 투상면이 3 개의 주 평면이 만나는 모서리에서 모든 평면에 대해 대칭적으로 놓일 때. 3개의 축 방향에 대해 동일 축소율 Ex. 등각, 양각

경사투상(Oblique Projection) 투상선끼리는 평행 투상면은 시선에 수직이지만 투상선과 직교하지 않음. 고개는 돌리지 않고 눈동자만 돌려서 보는 것과도 흡사

원근투상(Perspective Projection) 시점이 물체로부터 유한한 거리에 있다고 간주 투상선이 시점에서 출발하여 방사선 모양으로 퍼져감. 카메라나 사람의 눈이 물체를 포착하는 방법

원근투상(Perspective Projection) 원근감(Depth Feeling) 동일한 크기의 물체라도 시점으로부터 멀리 있는 것은 작게 보이고 가까운 것은 크게 보임

원근투상(Perspective Projection) 소실점(VP: Vanishing Point) 원근투상 결과 평행선이 만나는 점(시점 높이) 소실점의 수 일점투상(One-point Projection), 이점투상(Two-point Projection), 삼점투상(Three-point Projection) 원근변환(Perspective Transformation) 직선->직선, 평면->평면 물체 정점간의 거리에 대한 축소율이 달라짐. (cf. 어파인 변환)

지엘의 평행투상 투상: void glMatrixMode(GL_PROJECTION); 기본 평행투상 모델 좌표, 전역 좌표, 시점 좌표 순서로 변환된 상태 P, P'은 시점 좌표계 기준의 좌표. 거리 d에 무관하게 동일한 모습 특이변환(Singular Transformation): 역변환이 없는 변환 (x, y, z, 1)에서 (x, y)만 읽어내면 그것이 투상된 2차원 좌표 깊이 정보를 활용하기 위해서 지엘은 이러한 변환을 가하지 않음 투상결과 여전히 3차원 좌표가 유지.

가시부피에 의한 평행투상 장면의 범위를 지정할 필요성: 가시부피(View Volume) 전방 절단면(Near Clipping Plane, Near Plane, Front Plane, Hither) 후방 절단면(Far Clipping Plane, Far Plane, Back Plane, Yon) void glOrtho(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble near, GLdouble far);

정규화 가시부피 정규화 가시부피(CVV: Canonical View Volume) 가로, 세로, 높이가 2인 정육면체로 투상 정규화 변환(Normalization Transformation) 이유 평행투상, 원근투상을 동일한 모습의 정규화 가시부피로 변형 동일 파이프라인 사용 정육면체를 기준으로 하면 연산이 간단함. 다양한 해상도의 화면 좌표계로 변환하기가 간단함.

정규화 가시부피 변환 물체에 대한 이동, 크기조절, 반사변환으로 간주 Reflection: 정규화 가시부피는 왼손좌표계 결과적인 좌표계 = 절단 좌표계(CCS: Clip Coordinate System)

지엘의 원근투상 기본 원근투상  x' : (-d) = x : (-z), y' : (-d) = y : (-z)

원근변환 원근분할(Perspective Division, Homogenization) 동차좌표의 마지막 요소로 이전 요소를 나누는 작업 절단이 동차좌표에서 이루어지기 때문에 절단 이후로 미루어 짐.  원근변환 어파인 변환이 아님: 마지막 행이 (0, 0, 0, 1)이 아님 3차원 좌표관점: x' = x/(z/d): 비선형 변환 4차원 동차좌표 관점: 선형변환

정규화 가시부피에 의한 원근투상 절단 사각뿔(Frustum) = 절두체

원근투상과 평행투상

가시부피 가시부피 설정에 의한 절단

원근투상의 정규화 가시부피

원근투상의 정규화 가시부피 일반적 형태의 가시부피: void glFrustum(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble near, GLdouble far);

원근투상의 정규화 가시부피 전방 절단면에 비해 후방 절단면이 줄어듬. 멀리 있는 것이 작게 보야야 함. T 행렬 전방 절단면에 비해 후방 절단면이  줄어듬. 멀리 있는 것이 작게 보야야 함. T 행렬 Z 값에 영향을 미침: 원래의 물체 정점의 깊이 z와 정규화 변환 후의 물체 정점의 깊이 z'의 관계

시점 좌표계에서 절단 좌표계로 높이: 멀어질수록 전봇대 높이가 낮아짐(원근변환)

시점 좌표계에서 절단 좌표계로 간격:더욱 촘촘해 짐에 유의(비선형 변환) 전방 절단면: 시점에서 멀리, 물체에 최대한 근접시켜 설정 물체간격이 상대적으로 보존, 지-버퍼 처리에 유리

대칭적 원근투상 void gluPerspective(GLdouble fov, GLdouble aspect, GLdouble near, GLdouble far); 시야(FOV: Field of View):상하 y축 방향의 시야각(0 -180도) X축 방향의 시야는 종횡비(Aspect Ratio)에 의해 결정됨(폭 / 높이)

시야각과 카메라 렌즈 초점 거리 50mm 기준 광각렌즈(Wide Angle Lens) : 50보다 작음 망원렌즈(Telescope Lens) : 50보다 큼 Ex. 20mm = 85도 시야각, 85mm = 24도 시야각

지엘 파이프라인

뷰포트 변환 정규화 장치좌표계(NDCS: Normalized Device Coordinate System) 절단 이후 원근분할에 의해 물체 정점을 3차원 좌표로 변환한 것 (x', y', z', 1) = (x/w, y/w, z/w, 1)  뷰포트 변환(Viewport Transformation) 정규화 장치좌표계에서 화면 좌표계로 가는 작업 화면 좌표계(SCS: Screen Coordinate System), 뷰포트 좌표계(Viewport Coordinate System), 윈도우 좌표계(Window Coordinate System)

뷰포트 설정 void glViewport(GLint left, GLint bottom, GLsizei width, GLsizei height);

z 값의 재 정규화 정규화 가시부피에서의 z 값의 범위인 [-1, +1] 사이를 [0, 1] 사이로 사상 정점 사이의 상대적인 깊이는 유지 정규화 가시부피를 원점을 중심으로 해서 z축 방향으로 1/2 만큼 크기조절 변환을 가한 후, z 방향으로 1/2 만큼 이동.

가시부피와 뷰포트