OpenGL 프로젝트 < animate the fire >

Slides:



Advertisements
Similar presentations
목 차 C# 언어 특징 .NET 프레임워크 C# 콘솔 프로그램 C# 윈도우 프로그램 실습 프로그래밍세미나 2.
Advertisements

팀 구성 : 조재민 (팀장), 고광춘, 유기민, 김대진, 이재호 발표 일자:
게임프로그래밍 입문 멀티미디어공학과 이재문.
03장 영상처리를 위한 Visual C++ 디지털 영상 파일 포맷 MFC 응용 프로그램 마법사를 이용한 MFC 프로젝트 작성
한신대학교 컴퓨터공학부 류승택 Spring
컴퓨터프로그래밍 1주차실습자료 Visual Studio 2005 사용법 익히기.
Image & Video processing
7장 디스플레이 리스트.
D. 지뢰찾기 분석 설계 예제.
윤 홍 란 다이알로그(대화상자) 윤 홍 란
1장. 이것이 C 언어다.. 1장. 이것이 C 언어다. 프로그래밍 언어 1-1 C 언어의 개론적 이야기 한글, 엑셀, 게임 등의 프로그램을 만들 때 사용하는 언어 ‘컴퓨터 프로그래머’라는 사람들이 제작 C 언어(C++ 포함)를 가장 많이 사용함.
Lab 2 Guide: 교재 3장 그래픽 예제 ( 쪽) - 펜과 브러시로 그리기 - 튀는 공
콘텐츠 제작 프로젝트 [교재] - OpenGL 프로그래밍 가이드, 제4판, Dave Shreiner, Mason Woo, Jackie Neider, Tom Davis 공저, 남기혁 역, 정 보문화사, [참고자료] OpenGL Programming.
최종 결과 보고서 [IDEA BOX팀] 김경률 김현철 프로젝트 명 : GROOVE RIDING
C언어 개요 게임프로그래밍.
Open Graphics Library 팀 명 : Spes 송정웅 김정환
OpenGL Project (3D 움직이는 자동차)
Sang Il Park Sejong University
openGL Project 제안서 - 해상 전투
Network Project (중간 보고)
CHAPTER 02 OpenCV 개요 PART 01 영상 처리 개요 및 OpenCV 소개.
1. C++ 시작하기.
Computer Graphics with OpenGL
openGL Project 제안서 야구 시구 시뮬레이션
openGL Project 결과보고서 야구 시구 시뮬레이션
컴퓨터 프로그래밍 기초 #02 : printf(), scanf()
NJM Messenger 박상원 박연호.
OpenGL 프로젝트 K.S.C팀.
C++프로그래 밍 컴퓨터정보과 / 이기희교수.
OpenGL PROJECT I T S 우광식 성기영 서창수
자바응용.
Computer Graphics OpenGL 설치 및 설정
광원 제어 하기.
2015 운영체제 특강 수업 소개 Special Topics on Operating Systems
영상처리 실습 인공지능연구실.
동물의 특징을 음악적 요소로 표현 하기 음악 3학년 2학기 20. 동물의 사육제(1 / 2) 수업계획 수업활동 [제작 의도]
컴퓨터소프트웨어설계및실험 년 1학기 실험계획 -.
Lab 1 Guide: 교재 2장 DrawX ( 쪽)
Chapter 4 컬러( COLOR ).
컴퓨터 프로그래밍 기초 - 10th : 포인터 및 구조체 -
3장. 변수와 연산자. 3장. 변수와 연산자 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, / 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, /
Network Programming - 최종보고서 -
Solar System TEAM Butterfly Effect 문대진 이재환
불(FIRE)이란? 산소공급차단 질식소화 가연물 제거 제거소화 열 원 냉 각 열원냉각 불 불을 끄기 위해 명 칭 산 소 가연물
Lab 8 Guide: 멀티스레딩 예제 2 * Critical Section을 이용한 멀티스레딩 동기화 (교재 15장, 쪽)
OPENGL PROJECT 별자리관측 이지은,정현정, 조은영, 황태량.
컴퓨터 프로그래밍 기초 - 8th : 함수와 변수 / 배열 -
미 술 6 학년 3. 다양한 표현 (1~2/6) 초기화면 다양한 표현 방법 알아보기.
컴퓨터 프로그래밍 기초 [01] Visual Studio 설치 및 사용방법
컴퓨터 소프트웨어 설계 및 실험 년 1학기 실험계획 -.
Open-GL PROJECT 구 리 구 루.
학습목표 처음 만드는 비주얼 베이직 프로그램 프로그램 실행과 실행 파일 생성. 학습목표 처음 만드는 비주얼 베이직 프로그램 프로그램 실행과 실행 파일 생성.
OpenGL Project OpenGL Project 팀명 : Will 팀명 : Will
컴퓨터 그래픽스 프로젝트 신형민 이정훈 차봉덕.
OpenGL project 게임 & 멀티미디어 공학부 3학년. 학 번 : 이 름 : 손 종 덕. 김 동 진.
컴퓨터 소프트웨어 설계 및 실험 년 1학기 실험계획 -.
OpenGL 프로젝트 계획서 - 탱탱볼 만들기 팀명 : 훈남들 조원 : _이상민 _박용만
OpenGL 프로젝트 오영택 이상엽.
3. 모듈 (5장. 모듈).
OpenGL Project.
Computer Graphics with OpenGL
Dongseo University 정보네트워크학과,컴퓨터공학과 박대은, 이병훈, 홍준형
Dongseo University 정보네트워크학과,컴퓨터공학과 이병훈, 박대은, 홍준형
OPENGL PROJECT 별자리관측 이지은,정현정, 조은영, 황태량.
OpenGL project 게임 & 멀티미디어 공학부 3학년. 학 번 : 이 름 : 손 종 덕. 김 동 진.
OpenGL Project - Basketball Shoot -
OpenGL Project Basketball Shoot – 결과 보고서 팀장: 김동군
OpenGL Project 과 목 명 : 컴퓨터 그래픽스 E14반 담당교수님 : 이병국교수님 팀 원 : 신호환
Solar System 최종보고서 TEAM Butterfly Effect 문대진 이재환.
MFC 기초 윈도우 응용프로그램 개발 간략한 역사 Microsoft Foundation Classes
Presentation transcript:

OpenGL 프로젝트 < animate the fire > 팀명 Basis 20051441 김수영 20051559 양자경 20051664 차미나

CONTENTS 목적 및 개요 프로젝트 소개 소스분석 결과보고 실행화면(1),(2) 프로젝트 후기 Computer Graphics(20071)

목적 및 개요 그래픽 프로그래밍에 대한 이해. OpenGL에 관한 이해. 전체적으로 깊이 있는 학습 유도. 개인 능력 확인 및 향상. 수업 내용의 응용 학습 유도. 팀 프로젝트 적응 및 팀원간의 유대감형성 개발환경) WindowsXP, Microsoft Visual C++ 6.0 Computer Graphics(20071)

프로젝트 소개 animate the fire은 OpenGL을 사용하여 모닥불을 피우는 모습을 표현한 작품이다. Computer Graphics(20071)

소스분석 // 타이머 정보. 성능 다른 컴퓨터들 사이에서 프레임 동일 유지를 위해,, extern float fTime, fDeltaTime; // Current window dimensions. extern GLsizei g_w, g_h; #ifndef NOEXTENSION extern HWND g_hwnd; #endif #include "FirePart.h" // 메시지창 호출 함수 bool Splash() { Computer Graphics(20071)

소스분석 return MessageBox(NULL, " \" \" : rotate/stop camera\n" " ENTER : stop fire animation\n" " ESC : put water on the fire\n" "\n" "Enjoy it :-) Hufo / N.A.A.\n" ,szAppName ,MB_OKCANCEL | MB_ICONWARNING) == IDOK; return True; } #endif bool Init() // 윈도우 초기화 함수 뒤에 OpenGL 초기화 위해 불려짐 { glMatrixMode(GL_PROJECTION); // projection모드로 설정하여 glLoadIdentity(); // GL Matrix 초기화한다. Computer Graphics(20071)

소스분석 float x = (float)g_w/(float)g_h; // Correct the viewing ratio of the window in the X axis. if (x>XSTD) gluOrtho2D( -x, x, -1, 1 ); // Reset to a 2D screen space. else gluOrtho2D( -XSTD, XSTD, -XSTD/x, XSTD/x ); // Reset to a 2D screen space. x0=x; // Reset model view matrix stack. glMatrixMode( GL_MODELVIEW ); glLoadIdentity(); // modelview 모드 설정후 Matrix 초기화 glCullFace(GL_FRONT); // 앞면만 그려지도록 컬링 모드 설정 glDepthFunc(GL_LESS); glBlendFunc(GL_SRC_ALPHA,GL_ONE); // 반투명 텍스쳐 위해 블렌딩 모드 지정 Computer Graphics(20071)

소스분석 for (int i=0;i<9;++i) { CylColor[i].r=CylBColor.r*CylShad[i]; CylColor[i].g=CylBColor.g*CylShad[i]; CylColor[i].b=CylBColor.b*CylShad[i]; } TFire=0.0; TVit=1.0; FireInit(); // initialise fire return true; //모든 것이 잘 동작한다면, return은 true Computer Graphics(20071)

소스분석 #ifndef NOEXTENSION static float secTime=fTime; static int nf=0; if (fTime-secTime>=1.0) { // aff framerate char buf[256]; sprintf(buf,"%s - %g fps",szAppName,nf/(fTime-secTime)); SetWindowText(g_hwnd,buf); secTime=fTime; nf=0; } #endif TFire+=fDeltaTime*TVit; CalcFire(TFire,fDeltaTime*TVit); // 불을 움직이게 함. glClear( GL_COLOR_BUFFER_BIT Computer Graphics(20071)

결과보고 GL Matrix 초기화 >>> modelview 모드 설정후 Matrix 초기화하여 앞면만 그려지도록 컬링 모드 설정, 반투명 텍스쳐 위해 블렌딩 모드 지정 불을 움직이게 한다. CalcFire(TFire,fDeltaTime*TVit); Computer Graphics(20071)

실행화면 그림(1) 실행 초기 화면 Computer Graphics(20071)

실행화면 그림(2) 모닥불꺼지는 모습 Computer Graphics(20071)

프로젝트 후기 그저 결과물만 보기에는 정말 간단한 프로그램이다. 하지만 게임이나 영화에서나 보던 컴퓨터 그래픽으로 처음으로 직접 제작해 보고 그 원리와 구조를 알게 된 것은 값진 수확이라고 생각한다. Computer Graphics(20071)