PowerPoint 프레젠테이션

Similar documents
PowerPoint 프레젠테이션

chapter2.hwp

Microsoft PowerPoint - lecture2-opengl.ppt [호환 모드]

컴퓨터그래픽스 소프트웨어

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션

Microsoft PowerPoint - lecture4-ch2.ppt

(Microsoft PowerPoint - JXQEUPXIEBNZ.ppt [\310\243\310\257 \270\360\265\345])

OpenGL 프로그래밍 가이드 : OpenGL 1.2 공식 학습 가이드 제3판

Open GL

Microsoft PowerPoint - lecture3-ch2.ppt

Microsoft PowerPoint - lecture2-opengl.ppt

(Microsoft PowerPoint - FZBDPQDCSHAN.ppt [\310\243\310\257 \270\360\265\345])

Microsoft PowerPoint - lecture11-ch4.ppt

04_오픈지엘API.key

Microsoft PowerPoint - lecture11-ch4

歯Lecture2.PDF

Microsoft PowerPoint - 13prac.pptx

BMP 파일 처리

Microsoft Word - cg09-midterm.doc

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다.

서강대학교 공과대학 컴퓨터공학과 CSE4170 기초 컴퓨터 그래픽스 중간고사 (1/8) [CSE4170: 기초 컴퓨터 그래픽스] 중간고사 (담당교수: 임 인 성) 답은 연습지가 아니라 답안지에 기술할 것. 있는 변환 행렬은 일반적으로 어떤 좌표계 에서 어떤 좌표계로의

제 14 장포인터활용 유준범 (JUNBEOM YOO) Ver 본강의자료는생능출판사의 PPT 강의자료 를기반으로제작되었습니다.

Open GL

Microsoft PowerPoint - lecture2-opengl.ppt [호환 모드]

PowerPoint 프레젠테이션

Open GL

chap7.key

Microsoft PowerPoint - chap12-고급기능.pptx

슬라이드 1

Mobile Service > IAP > Android SDK [ ] IAP SDK TOAST SDK. IAP SDK. Android Studio IDE Android SDK Version (API Level 10). Name Reference V

C++-¿Ïº®Çؼ³10Àå

Microsoft PowerPoint - [2009] 02.pptx

2005CG01.PDF

C 언어 프로그래밊 과제 풀이

Microsoft Word - cg09-final-answer.doc

Chapter_02-3_NativeApp

Microsoft PowerPoint - chap13-입출력라이브러리.pptx

강의10

untitled

<322EBCF8C8AF28BFACBDC0B9AEC1A6292E687770>

untitled

À©µµ³×Æ®¿÷ÇÁ·Î±×·¡¹Ö4Àå_ÃÖÁ¾

Analytics > Log & Crash Search > Unity ios SDK [Deprecated] Log & Crash Unity ios SDK. TOAST SDK. Log & Crash Unity SDK Log & Crash Search. Log & Cras

11장 포인터

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

KNK_C_05_Pointers_Arrays_structures_summary_v02

<4D F736F F F696E74202D B3E22032C7D0B1E220C0A9B5B5BFECB0D4C0D3C7C1B7CEB1D7B7A1B9D620C1A638B0AD202D20C7C1B7B9C0D320BCD3B5B5C0C720C1B6C0FD>

<4D F736F F F696E74202D204347C3E2BCAEBCF6BEF D315FC4C4C7BBC5CDB1D7B7A1C7C8BDBA20B0B3B0FC2E >

歯7장.PDF

chap7.PDF

02 C h a p t e r Java

컴파일러

슬라이드 1

Microsoft PowerPoint - ch07 - 포인터 pm0415

fprintf(fp, "clf; clear; clc; \n"); fprintf(fp, "x = linspace(0, %d, %d)\n ", L, N); fprintf(fp, "U = [ "); for (i = 0; i <= (N - 1) ; i++) for (j = 0

본 강의에 들어가기 전

Microsoft PowerPoint - chap10-함수의활용.pptx

쉽게 풀어쓴 C 프로그래밍

ch15

vi 사용법

MPLAB C18 C

Microsoft Word - cg07-midterm.doc

PowerPoint 프레젠테이션

Orcad Capture 9.x

8 장데이터베이스 8.1 기본개념 - 데이터베이스 : 데이터를조직적으로구조화한집합 (cf. 엑셀파일 ) - 테이블 : 데이터의기록형식 (cf. 엑셀시트의첫줄 ) - 필드 : 같은종류의데이터 (cf. 엑셀시트의각칸 ) - 레코드 : 데이터내용 (cf. 엑셀시트의한줄 )

목차 포인터의개요 배열과포인터 포인터의구조 실무응용예제 C 2

06장.리스트

Microsoft PowerPoint - 4-UI 애플리케이션

3. 1 포인터란 3. 2 포인터변수의선언과사용 3. 3 다차원포인터변수의선언과사용 3. 4 주소의가감산 3. 5 함수포인터

23

<4D F736F F F696E74202D20C1A63134C0E520C6F7C0CEC5CD5FC8B0BFEB>

PowerPoint 프레젠테이션

(Microsoft PowerPoint - 11\300\345.ppt [\310\243\310\257 \270\360\265\345])

금오공대 컴퓨터공학전공 강의자료

이번장에서학습할내용 동적메모리란? malloc() 와 calloc() 연결리스트 파일을이용하면보다많은데이터를유용하고지속적으로사용및관리할수있습니다. 2

Microsoft Word - 3부A windows 환경 IVF + visual studio.doc

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi

Interstage5 SOAP서비스 설정 가이드

Lab 3. 실습문제 (Single linked list)_해답.hwp

untitled

슬라이드 1

문서의 제목 나눔명조R, 40pt



단국대학교멀티미디어공학그래픽스프로그래밍중간고사 (2011 년봄학기 ) 2011 년 4 월 26 일학과학번이름 중간고사 담당교수 : 단국대학교멀티미디어공학전공박경신 l 답은반드시답안지에기술할것. 공간이부족할경우반드시답안지몇쪽의뒤에있다고명기한후기술할것. 그외의경우의답안지뒤

Microsoft PowerPoint - Chapter14_17.pptx

Microsoft PowerPoint - Lesson14.pptx

Microsoft PowerPoint - Lesson14.pptx

윤성우의 열혈 TCP/IP 소켓 프로그래밍

Microsoft PowerPoint - 06-Body Data Class.pptx

KARAAUTO_4¿ù.qxd-ÀÌÆå.ps, page Normalize

PowerPoint 프레젠테이션

untitled


COVER.HWP

이슈분석 2000 Vol.1

가볍게읽는-내지-1-2

한눈에-아세안 내지-1

kbs_thesis.hwp

Transcription:

01 OpenGL 과 Modeling 01 OpenGL API 02 Rendering Pipeline 03 Modeling

01 OpenGL API 1. OpenGL API 설치및환경설정 2. OpenGL API 구조 2

01 1. OpenGL API 설치및환경설정 OpenGL API 의상대적위치 System Memory Graphics Application Graphics API Plotter Graphics Memory Graphics Library Mouse 3 GPU Keyboard

01 1. OpenGL API 설치및환경설정 OpenGL API Download 4

01 1. OpenGL API 설치및환경설정 OpenGL API 설치 5

01 1. OpenGL API 설치및환경설정 Visual Studio 2015 이하버전 - I [ 그림 1-3] New Project 생성을위한환경설정 6 [ 그림 1-2] New Project 생성과정

01 1. OpenGL API 설치및환경설정 Visual Studio 2015 이하버전 - II [ 그림 1-4] New Project 에새로운코드를삽입하기위한과정 7 [ 그림 1-5] 소스코드의 Type 설정및 File 명입력과정

01 1. OpenGL API 설치및환경설정 Visual Studio 2015 이하버전 - III 1 < 표 1-6> 의 [ 코드 1-1] 입력 2 [Build] [Build Solution] 혹은 <Ctrl+Alt+F7> [ 그림 1-6] 소스코드입력을위한대기상태 8

01 1. OpenGL API 설치및환경설정 Visual Studio 2017 Community 9

01 1. OpenGL API 설치및환경설정 Visual Studio 2017 Community 10

01 1. OpenGL API 설치및환경설정 OpenGL API 환경설정 -I 11

01 1. OpenGL API 설치및환경설정 OpenGL API 환경설정 -II 12

01 1. OpenGL API 설치및환경설정 OpenGL API 환경설정 -III 13

01 1. OpenGL API 설치및환경설정 14 OpenGL API 환경설정 -IV : MS Visual Studio 2017 Community Project > Properties Configuration Properties -> Link -> Input >> Additional Dependencies opengl32.lib glut32.lib glu32.lib glaux.lib 등 4 개파일입력 한줄에한개파일만입력 : <Enter> 키이용 Include Directories C:\Program Files (x86)\microsoft Visual Studio\ 2017\Community\VC\Tools\MSVC\14.15.xxx\include\gl Lib Directories C:\Program Files (x86)\microsoft Visual Studio\ 2017\Community\VC\Tools\MSVC\14.15.xxx\lib\x86

01 1. OpenGL API 설치및환경설정 OpenGL API 설치및환경설정확인을위한 Sample Code 코드 1-1 #include <glut.h> #include <glu.h> 15 void MyDisplay( ) { glclear(gl_color_buffer_bit); glbegin(gl_polygon); glvertex3f(-0.5, -0.5, 0.0); glvertex3f(0.5, -0.5, 0.0); glvertex3f(0.5, 0.5, 0.0); glvertex3f(-0.5, 0.5, 0.0); glend( ); glflush( ); } int main( ) { glutcreatewindow("opengl Initialize Test"); glutdisplayfunc(mydisplay); glutmainloop( ); return 0; }

01 2. OpenGL API 구조 OpenGL API 와 OpenGL API 를지원하는 Library 들 16

01 2. OpenGL API 구조 OpenGL API 계층구조 17

01 2. OpenGL API 구조 OpenGL API 를지원하거나연관된 Library 들 18

01 2. OpenGL API 구조 OpenGL 함수의기본적인구조 OpenGL API 의종류에따른함수명의예시 19

01 2. OpenGL API 구조 OpenGL Data Type 20

01 2. OpenGL API 구조 glvertex3fv 함수의 Prototype 21

01 2. OpenGL API 구조 운영체제의종류에따른 OpenGL Library 들 22

01 2. OpenGL API 구조 주로많이사용되는 GLUT 함수들 Window 기능 23

01 2. OpenGL API 구조 glutinit, glutinitwindowposition 함수의 Prototype glutinitwindowsize 함수의 Prototype 24

01 2. OpenGL API 구조 glutinitdisplaymode 함수의 Prototype 25

01 2. OpenGL API 구조 glutsetwindowtitle 함수의 Prototype GlutCreateWindow 함수의 Prototype 26

01 2. OpenGL API 구조 glutreshapewindow 함수의 Prototype glutmainloop 함수의 Prototype 27

01 2. OpenGL API 구조 Window 초기화및관리를위해주로사용되는 GLUT 함수들의사용예시 코드 1-2 int main(int argc, char** argv) { glutinit(&argc, argv); glutinitdisplaymode (GLUT_DOUBLE GLUT_RGB); glutinitwindowsize (500, 500); glutinitwindowposition (100, 100); glutcreatewindow ( GLUT Sample );... glutmainloop(); 28 } return 0;

01 2. OpenGL API 구조 주로많이사용되는 GLUT 함수들 Callback 기능 29

01 2. OpenGL API 구조 Callback 기능을수행하는 GLUT 함수들의사용예시 30 코드 1-3 #include <windows.h> #include <stdlib.h> #include <stdio.h> #include <glaux.h> #include <glut.h> #include <glu.h> void MyDisplay() {... } void MyReshape() {... } void MyKeyboard() {... } void MyMouse() {... } void MyMotion() {... } int main(int argc, char** argv) { glutinit(&argc, argv); glutinitdisplaymode (GLUT_DOUBLE GLUT_RGB); glutinitwindowsize (500, 500); glutinitwindowposition (100, 100); glutcreatewindow ( OpenGL Callback Functions );... glutdisplayfunc(mydisplay); glutreshapefunc(myreshape); glutkeyboardfunc(mykeyboard); glutspecialfunc(myspecial); glutmousefunc(mymouse); glutmotionfunc(mymotion); glutmainloop(); return 0; }

02 Rendering Pipeline 1. OpenGL 로배우는 Graphics Pipeline 2. 실시간 (Real-time) Graphics Pipeline 3. OpenGL Rendering Pipeline 31

02 1. OpenGL 로배우는 Graphics Pipeline OpenGL 로배우는 Graphics Pipeline 32

02 2. 실시간 Graphics Pipeline 실시간 (Real-time) Graphics Pipeline 33

02 3. OpenGL Rendering Pipeline OpenGL Rendering Pipeline 34

Modeling 1. Modeling의종류 2. GL Modeling 3. GLU Modeling 4. GLUT Modeling 5. Outline Font를사용한 Symbol Modeling 35

1. Modeling 의종류 Modeling 방법의 3 가지종류에대한구현결과 (A) Wire-frame Modeling (B) Surface Modeling (C) Solid Modeling 36

2. GL Modeling GL Library 로생성할수있는 Primitive 들의종류 37

2. GL Modeling 기하 Primitive 들을생성하기위한매개변수 (Parameter) 들 38

2. GL Modeling 원 (Circle) 을그리기위한 Algorithm 39

2. GL Modeling 점 (Point) 으로생성한 Primitive 코드 1-4 #include <glut.h> #include <math.h> #define Pi 3.1415 40 void MyDisplay( ) { GLfloat Size[2], Angle; glclear(gl_color_buffer_bit); glcolor3f(0.0, 0.0, 0.0); glgetfloatv(gl_point_size_range, Size); glpointsize(size[0] * 10); glbegin(gl_points); for (Angle = 0.0; Angle <= 2.0*Pi; Angle += Pi/20.0) glvertex3f(0.5*cos(angle), 0.5*sin(Angle), 0.0); glend(); glflush(); }

2. GL Modeling glgetfloatv 함수의 Prototype glpointsize 함수의 Prototype 41

2. GL Modeling 다각형 (Polygon) 으로생성한 Primitive 코드 1-5 #include <glut.h> void MyDisplay( ) { glclear(gl_color_buffer_bit); glcolor3f(0.5, 0.4, 0.3); glbegin(gl_polygon); glvertex3f( 0.0, 1.0, 0.0); glvertex3f(-1.0, 0.5, 0.0); glvertex3f(-1.0, -0.5, 0.0); glvertex3f( 0.0, -1.0, 0.0); glvertex3f( 1.0, -0.5, 0.0); glvertex3f( 1.0, 0.5, 0.0); glend(); glflush(); 42 }

2. GL Modeling 정육면체의계층적자료구조 43

2. GL Modeling 오른손좌표계 44

2. GL Modeling Vertex Array 를이용한정육면체 Modeling 의구현결과 코드 1-6 45

2. GL Modeling glfrontface 함수의 Prototype 46

2. GL Modeling glenableclientstate 함수의 Prototype 47

2. GL Modeling glcolorpointer 함수의 Prototype 48

2. GL Modeling glvertexpointer 함수의 Prototype 49

2. GL Modeling gldrawelements 함수의 Prototype 50

3. GLU Modeling Quadrics 의생성을위한함수 코드 1-7 51

3. GLU Modeling gluquadricdrawstyle 함수의 Prototype 52

3. GLU Modeling gluquadricnormals 함수의 Prototype 53

3. GLU Modeling gluquadricorientation 함수의 Prototype 54

3. GLU Modeling GluQuadricTexture 함수의 Prototype 55

3. GLU Modeling glusphere 함수의 Prototype 56 (A) glusphere(obj, 1.0, 5, 5); (B) glusphere(obj, 1.0, 10, 10); (C) glusphere(obj, 1.0, 20, 20);

3. GLU Modeling glucylinder 함수의 Prototype 57 (A) (B) (C) (D) (A) glucylinder(obj, 1.0, 1.0, 2.0, 20, 8); (B) glucylinder(obj, 1.0, 1.0, 2.0, 8, 8); (C) glucylinder(obj, 1.0, 0.3, 2.0, 20, 8); (D) glucylinder(obj, 1.0, 0.0, 2.0, 20, 8);

3. GLU Modeling gludisk 함수의 Prototype 58 gludisk(obj, 0.0, 2.0, 20, 3); gludisk(obj, 0.5, 2.0, 20, 3);

3. GLU Modeling glupartialdisk 함수의 Prototype 59 glupartialdisk(obj, 1.5, 3.0, 26, 13, 0.0, -180); glupartialdisk(obj, 0.0, 3.0, 26, 13, 45, -145);

3. GLU Modeling NURBS 를이용한 Surface Modeling 구현결과 코드 1-8 60

3. GLU Modeling glpointsize, glcolor3ub 함수의 Prototype glubeginsurface 함수의 Prototype 61

3. GLU Modeling glunurbssurface 함수의 Prototype 62

3. GLU Modeling gluendsurface 함수의 Prototype glunewnurbsrender 함수의 Prototype 63

3. GLU Modeling glunurbsproperty 함수의 Prototype 64

3. GLU Modeling glnewlist(s) 함수의 Prototype 65

3. GLU Modeling glendlist, glcalllist(s) 함수의 Prototype 66

4. GLUT Modeling GLUT Library 를이용한 3D Primitive 구현결과 코드 1-9 67

4. GLUT Modeling glutwiresphere 및 glutsolidsphere 함수의 Prototype 68

4. GLUT Modeling glutwiresphere 및 glutsolidsphere 함수의구현결과 (A) glutwiresphere(1.0, 30, 30); (B) glutsolidsphere(1.0, 30, 30); 69

4. GLUT Modeling glutwirecube 및 glutsolidcube 함수의 Prototype 70

4. GLUT Modeling glutwirecube 및 glutsolidcube 함수의구현결과 (A) glutwirecube(1.0); (B) glutsolidcube(1.0); 71

4. GLUT Modeling glutwiretorus 및 glutsolidtorus 함수의 Prototype 72

4. GLUT Modeling glutwiretorus 및 glutsolidtorus 함수의구현결과 (A) glutwiretorus(0.3, 1.5, 20, 20); (B) glutsolidtorus(0.3, 1.5, 20, 20); 73

4. GLUT Modeling glutwirecone 및 glutsolidcone 함수의 Prototype 74

4. GLUT Modeling glutwirecone 및 glutsolidcone 함수의구현결과 (A) glutwirecone(1.0, 1.5, 12, 12); (B) glutsolidcone(1.0, 1.5, 12, 12); 75

4. GLUT Modeling glutwireteapot 및 glutsolidteapot 함수의 Prototype 76 (A) glutwireteapot(1.0); (B) glutsolidteapot(1.0);

4. GLUT Modeling glutwiretetrahedron 및 glutsolidtetrahedron 함수의 Prototype 77 (A) glutwiretetrahedron(); (B) glutsolidtetrahedron();

4. GLUT Modeling glutwireoctahedron 및 glutsolidoctahedron 함수의 Prototype (A) glutwireoctahedron(); (B) glutsolidoctahedron(); 78

4. GLUT Modeling glutwiredodecahedron 및 glutsoliddodecahedron 함수의 Prototype 79 (A) glutwiredodecahedron(); (B) glutsoliddodecahedron();

4. GLUT Modeling glutwireiconsahedron 및 glutsolidicosahedron 함수 의 Prototype (A) glutwireicosahedron(); (B) glutsolidicosahedron(); 80

5. Outline Font 를사용한 Symbol Modeling Alphabet 대문자 (A-Z) 를사용하여구현한 Symbol Modeling 구현결과 Alphabet 소문자 (a-z) 를사용하여구현한 Symbol Modeling 구현결과 81 코드 1-10

5. Outline Font 를사용한 Symbol Modeling 한글자음 ( ㄱ ㅎ ) 을사용하여구현한 Symbol Modeling 구현결과 한글모음 ( ㅏ ㅣ ) 을사용하여구현한 Symbol Modeling 구현결과 82

5. Outline Font 를사용한 Symbol Modeling CreateFont 함수의 Prototype 83

5. Outline Font 를사용한 Symbol Modeling wglusefontoutlines 함수의 Prototype 84

5. Outline Font 를사용한 Symbol Modeling GLYPHMETRICSFLOAT 구조체의 Prototype 85