18
CSED451 Term Project Final Presentation Title: Mirror Maze 20120324 CiTE 김김김 20120327 CiTE 김김김

CSED451 Term Project Final Presentation Title: Mirror Maze 20120324 CiTE 김현지 20120327 CiTE 김진석

Embed Size (px)

Citation preview

Page 1: CSED451 Term Project Final Presentation Title: Mirror Maze 20120324 CiTE 김현지 20120327 CiTE 김진석

CSED451 Term ProjectFinal PresentationTitle: Mirror Maze

20120324 CiTE 김현지20120327 CiTE 김진석

Page 2: CSED451 Term Project Final Presentation Title: Mirror Maze 20120324 CiTE 김현지 20120327 CiTE 김진석

1. Introduction

3D 거울 미로3D 공간 상에서 벽이 거울로 이루어진 미로를 사용자가 탐험할 수 있는 프로그램 제작

• http://youtu.be/b7VVNyTESTE?t=22s

Page 3: CSED451 Term Project Final Presentation Title: Mirror Maze 20120324 CiTE 김현지 20120327 CiTE 김진석

2. Key Pipeline

1. Modeling– 기하학적 특이성 고려• GUI 로 쉽게 새로운 맵 디자인

– 추가 요소 고려• 실시간 모델 수정

2. Rendering– 효율적인 방법으로 Multi-Mirror 렌더링• Ray Tracing• Projection

– 추가 요소 고려• 국부 조명

Page 4: CSED451 Term Project Final Presentation Title: Mirror Maze 20120324 CiTE 김현지 20120327 CiTE 김진석

3. Research & Development Process

• Modeling Simplification

Page 5: CSED451 Term Project Final Presentation Title: Mirror Maze 20120324 CiTE 김현지 20120327 CiTE 김진석

• Rendering: Ray Tracing vs Pro-

jection

3. Research & Development Process

Page 6: CSED451 Term Project Final Presentation Title: Mirror Maze 20120324 CiTE 김현지 20120327 CiTE 김진석

• Implementation:

OpenGL w/ Programmable Shader

– GPU 를 사용하여 병렬화

– Vertex Shader, Fragment Shader 의 역할 변경

• Vertex Shader: 물리적인 스크린을 Ray Tracing 이 적용되는

한 픽셀에 매칭

• Fragment Shader: Ray Tracing 이 적용되는 하나의 픽셀로

써 , 픽셀의 위치로 향하는 눈으로부터의 Ray Tracing 을 수행

3. Research & Development Process

Page 7: CSED451 Term Project Final Presentation Title: Mirror Maze 20120324 CiTE 김현지 20120327 CiTE 김진석

• Implementation:

OpenGL w/ Programmable Shader

– Fragment Shader 의 중요성

• Screen 을 Vertex 로 선언하기 때문에 픽셀 별로

호출

• Fragment, Vertex 간 소통 불가로 인한 Model-

ing/Rendering 의 Fragment Shader 내재화

3. Research & Development Process

Page 8: CSED451 Term Project Final Presentation Title: Mirror Maze 20120324 CiTE 김현지 20120327 CiTE 김진석

4. Results

Page 9: CSED451 Term Project Final Presentation Title: Mirror Maze 20120324 CiTE 김현지 20120327 CiTE 김진석

4. Results

Page 10: CSED451 Term Project Final Presentation Title: Mirror Maze 20120324 CiTE 김현지 20120327 CiTE 김진석

4. Results

Page 11: CSED451 Term Project Final Presentation Title: Mirror Maze 20120324 CiTE 김현지 20120327 CiTE 김진석

4. Results

Page 12: CSED451 Term Project Final Presentation Title: Mirror Maze 20120324 CiTE 김현지 20120327 CiTE 김진석

4. Results

Page 13: CSED451 Term Project Final Presentation Title: Mirror Maze 20120324 CiTE 김현지 20120327 CiTE 김진석

4. Results (Depth = 1)

Page 14: CSED451 Term Project Final Presentation Title: Mirror Maze 20120324 CiTE 김현지 20120327 CiTE 김진석

4. Results (Depth = 2)

Page 15: CSED451 Term Project Final Presentation Title: Mirror Maze 20120324 CiTE 김현지 20120327 CiTE 김진석

4. Results (Depth = 4)

Page 16: CSED451 Term Project Final Presentation Title: Mirror Maze 20120324 CiTE 김현지 20120327 CiTE 김진석

4. Results (Depth = 20)

Page 17: CSED451 Term Project Final Presentation Title: Mirror Maze 20120324 CiTE 김현지 20120327 CiTE 김진석

4. Further Plan

• Game Interface– Character–Menu

• Additional Algorithm– Ray Tracing in Top-View

• Light + Mirror

Page 18: CSED451 Term Project Final Presentation Title: Mirror Maze 20120324 CiTE 김현지 20120327 CiTE 김진석

Reference

1. "Multi Mirror - An Animation", http://cglabprojects.blogspot.kr/2014/03/multi-mirror-animation.html

2. "Clipping & Reflections Using The Stencil Buffer", http://nehe.gamedev.net/tutorial/clipping__reflections_using_the_stencil_buffer/17004/

3. "OpenGL FAQ - 9.170 How do I render a mirror?", http://www.opengl.org/archives/resources/faq/technical/transformations.htm#tran0170

4. Wikipedia – “Ray Tracing”,http://en.wikipedia.org/wiki/Ray_tracing_(graphics)

5. “OpenGL Super Bible”, http://www.openglsuperbible.com/