Top Banner
CSE 5542 - Real Time Rendering
80

CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Jan 02, 2016

Download

Documents

Scot Morgan
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

CSE 5542 - Real Time Rendering

Page 2: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

TBT

(Not So) Real Time Rendering

Page 3: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Time - TR 10:20 AM – 11:15 AMPlace - DL 0264

Where ?

Page 4: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.
Page 5: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Name: Raghu Machiraju

Email: [email protected]

Office hours: MWF 11:30 – 1:00 PM

The Instructor

Page 6: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.
Page 7: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Name: TBD

Email: TBA

Office hours: TBA

The Grader

Page 8: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.
Page 9: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Information

Web: http://www.cse.ohio-state.edu/~raghu/5542 Piazza: https://piazza.com/osu/autumn2014/cse5542/home

Prerequisite: 3901 (560) or 3902 or 3903 math 2568 (568) or 571 permission from the instructor

Page 10: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Pre-reqs

Page 11: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Must Haves

You need to be enthusiastic about Computer Graphics

You need to be fluent in C/C++ programming

You need to be comfortable with linear algebra

You need to be willing to get hands-dirty: OpenGL, 3D Printing, GLSL, hardware

Page 12: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.
Page 13: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

The Book

Page 14: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

OpenGL programmingGuide , 8th edition

OpenGL shading language 3rd edition

http://proquest.safaribooksonline.com

Useful Books

Page 15: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Reference Books

Computer GraphicsPrinciple and Practice3rd edition

Real-Time Rendering3rd edition

Page 16: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Reference Books

OpenGL 4.0 ShadingLanguage Cookbook

Graphics shaders: Theory and Practice, 2nd edition

Page 17: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Und Others

Page 18: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Grading- Four Labs: 40% - Strict deadlines.

- Quizzes: 4 x 5% - Date is a stochastic variable

- Midterm Exam: 20% - Firm date.

- Final Exam: 20% - Firm date.

Page 19: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Labs ?• Your own machine …

• Graphics PC Lab – CL 112D

• Graphics cards that supports at least OpenGL 2.1

• Platforms: PC (visual studio), Mac OS X or Linux

Page 20: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

What do we Study ?

Page 21: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Teapots

Page 22: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

A Real One

Page 23: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Drawing Teapots

Page 24: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Step 1

Page 25: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Step 2

Page 26: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Step 3

Page 27: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Step 4

Page 28: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Step 5

Page 29: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Step 6

Page 30: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Manufacturing Teapots

Page 31: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Manufacturing Teapots

https://www.ted.com/talks/lisa_harouni_a_primer_on_3d_printing

http://oncampus.osu.edu/replicating-in-3d/

http://news.cornell.edu/stories/2013/04/rapid-reality-students-design-3-d-printed-products

Page 32: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

You will all make these

http://www.thingiverse.com/thing:68880

Page 33: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

http://www.thingiverse.com/thing:68880

Page 34: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Manufacturing Teapots

http://onderin.de.buro.la/cura-ani-500-64c.gif

Page 35: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

We will not do this …

Page 36: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Virtual Teapots

Page 37: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

An Icon !

Page 38: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Which one is real ?

Page 39: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Real vs Virtual – Boston Museum

Page 40: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

More fake ones !

http://codegolf.stackexchange.com/questions/22620/draw-the-utah-teapot

Page 41: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Shutterbug !

Page 42: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Toy Story

Page 43: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

A Platonic Relationship !

Page 44: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Building with Blender

https://www.youtube.com/watch?v=QyiBwL2Scec

Page 45: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Another Method

https://www.youtube.com/watch?v=x8AiEi4aJ4g

Page 46: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

You will be doing this …

Page 47: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

And better than this !

Page 48: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

OpenGL, GLSL

Page 49: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

OpenGL, GLSL

Page 50: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Learning Outcomes- Basic understanding of graphics

hardware/software

- Basics of modeling and 3D Printing

- OpenGL/GLSL to control graphics hardware

- Advanced real time rendering algorithms

Page 51: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Specific Topics• Overview of Graphics Hardware and

Software• Coordinate systems • OpenGL geometry drawing

- OpenGL vertex buffer objects• OpenGL Shading Language

- Vertex and fragment shaders• 3D transformation and Viewing• Quaternion and virtual trackball

Page 52: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Specific Topics• Illumination

– Flat, Gourad, Phong shading models – Fixed function pipeline and shaders

• Visibility and Z-buffering • Texture Mapping

– Image and procedural textures

• Bump, environment, & projective texture mapping

Page 53: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Specific Topics

• Real time shadows

• Advanced topics in shaders– Geometry shader– Tessellation shader

• Advanced topics in rendering and graphics

Page 54: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

54

Angel and Shreiner: Interactive Computer Graphics6E © Addison-Wesley 2012

Image Formation

Page 55: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

55

Image Formation

– Cameras– Microscopes– Telescopes– Human visual system

Page 56: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

56

Synthetic Camera Model

center of projection

image plane

projector

p

projection of p

Page 57: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

57

Ray Tracing and Geometric OpticsProblemo ?

Image Formation (Eine Explanation)

Page 58: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

The Real Thing !

http://www.uccs.edu/~rtirado/Astronomy_Texts/Light_Image_Formation.pdf

Page 59: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

59

Essentials of Image Formation

• Objects

• Camera

• Light source(s)

• Light-material interaction

• Independence of objects, viewer, and light source(s)

Page 60: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

60

Light

Page 61: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

61

Luminance vs. Color

http://www.workwithcolor.com/color-luminance-2233.htm

Page 62: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

62

How Many Colors ?

Human visual system – Rods: monochromatic, night vision– Cones

• Color sensitive• Three types of cones• Only three values (the tristimulus

values) are sent to the brain

– Three primary colors – R, G, B

Page 63: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

63

Angel and Shreiner: Interactive Computer Graphics6E © Addison-Wesley 2012

In Days Long Gone

Page 64: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Even in these days !

Page 65: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

The Camera

Page 66: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Real Cameras

Page 67: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Viewing

Page 68: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

68

Angel and Shreiner: Interactive Computer Graphics6E © Addison-Wesley 2012

Eine Simple Camera – The Pinhole

xp= -x/z/d yp= -y/z/d

Simple Perspective - find projection of point at (x,y,z)

zp= d

Page 69: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Perspective

Page 70: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

DYC

http://www.pinhole.cz/en/pinholecameras/dirkon_01.html

Page 71: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Not Bad

Page 72: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Let Us Go Digital

http://electronics.howstuffworks.com/digital-camera.htm

Page 73: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Rasters

Page 74: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Pixels & Resolution

Page 75: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Is A Pixel Really A Square ?

http://alvyray.com/Memos/CG/Microsoft/6_pixel.pdf

Page 76: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

An image ?8 bits/pixel

0

255

Page 77: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

CCD Cameras - Resolution

http://www.dalsa.com/shared/content/pdfs/CCD_vs_CMOS_Litwiller_2005.pdf

Page 78: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Image Digitization

Sampling: ResolutionQuantization: Measured Value

Page 79: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.

Image Digitization

Sampling Quantization

Page 80: CSE 5542 - Real Time Rendering. TBT (Not So) Real Time Rendering.