CSE 872 Advanced Computer Graphics - PowerPoint PPT Presentation

About This Presentation
Title:

CSE 872 Advanced Computer Graphics

Description:

Volume rendering and constructive solid geometry. Gaming and simulation ... Culling, depth testing. Lighting. Materials. What happens when you do glVertex? ... – PowerPoint PPT presentation

Number of Views:50
Avg rating:3.0/5.0
Slides: 14
Provided by: cbo4
Learn more at: http://www.cse.msu.edu
Category:

less

Transcript and Presenter's Notes

Title: CSE 872 Advanced Computer Graphics


1
CSE 872 Advanced Computer Graphics
  • Charles B. Owen (Instructor)
  • 1138 E. B., 353-6488
  • MW 1230-150pm in Kresge Art Center 041

2
Introduction
  • Introduction to the class
  • Structure, rules, etc.
  • Where do we stand?
  • What you should know coming in or get caught up
    on!

3
Course Content
  • Basic and advanced modeling
  • Scan conversion for photorealistic rendering
  • Ray tracing and related methods
  • Radiosity and hybrid methods
  • Particle-based methods
  • Physical modeling
  • Water and fire
  • Curves, splines, NURBS

4
Course Content
  • Quaterians for computer graphics
  • Computational geometry
  • Non-photorealistic methods
  • Volume rendering and constructive solid geometry
  • Gaming and simulation
  • Level of detail
  • Augmented reality techniques

5
Course Content Anything else?
  • Real time using hardware
  • Pixel shaders
  • Virtual reality
  • Animation techniques
  • Motion capture
  • Post-production

6
Course Structure
  • See the syllabus

7
Course Materials
  • Textbooks
  • Advanced Animation and Rendering Techniques, Alan
    Watt, Mark Watt. ISBN 0-201-54412-1
  • OpenGL Programming Guide, Fifth Edition,
    Shreiner, Woo, Neider, and Davis, Addison Wesley,
    ISBN 0-321-33573-2. (Optional)
  • WWW
  • http//www.cse.msu.edu/cse872
  • And on angel (angel.msu.edu)

8
Course Structure
  • Paper review/presentation
  • Explorations
  • Project 1
  • Project 2
  • Project 3
  • Class Participation

9
Where do we stand?
  • What do we know about
  • Configuring projection matrices
  • Configuring modelview matrices
  • Culling, depth testing
  • Lighting
  • Materials
  • What happens when you do glVertex?

10
void CChildViewOnGLDraw(CDC pDC)
glClearColor(0.0f, 0.0f, 0.0f, 0.0f)
glClear(GL_COLOR_BUFFER_BIT GL_DEPTH_BUFFER_BIT)
// Set up the camera
glMatrixMode(GL_PROJECTION)
glLoadIdentity() // Determine the screen
size so we can determine the aspect ratio int
width, height GetSize(width, height)
// Set the camera parameters
gluPerspective(25., // Vertical field
of view in degrees.
GLdouble(width) / GLdouble(height), // The
aspect ratio. 10.,
// Near clipping 200.)
// Far clipping // Set the camera
location glMatrixMode(GL_MODELVIEW)
glLoadIdentity() gluLookAt(20., 10., 50.,
// eye x,y,z 0., 0., 0., //
center x,y,z 0., 1., 0.) // Up
direction
11
// Enable depth test glEnable(GL_DEPTH_TEST)
// Cull backfacing polygons
glCullFace(GL_BACK) glEnable(GL_CULL_FACE)
// Enable lighting glEnable(GL_LIGHTING)
glEnable(GL_LIGHT0) GLfloat lightpos
.5, 1, 1, 0. // GLfloat lightpos 10.,
10., 10., 1. glLightfv(GL_LIGHT0,
GL_POSITION, lightpos)
12
glPushMatrix() GLfloat white 0.8f,
0.8f, 0.8f, 1.0f GLfloat cyan 0.f, .8f,
.8f, 1.f glMaterialfv(GL_FRONT, GL_DIFFUSE,
cyan) glMaterialfv(GL_FRONT, GL_SPECULAR,
white) GLfloat shininess 100
glMaterialfv(GL_FRONT, GL_SHININESS,
shininess) glRotated(m_spinangle, 1, .5,
.7) Box(5, 5, 5) glPopMatrix()
glFlush()
13
void CChildViewBox(GLdouble p_x, GLdouble p_y,
GLdouble p_z) GLdouble a 0., 0., p_z
GLdouble e 0., 0., 0. GLdouble b
p_x, 0., p_z GLdouble f p_x, 0., 0.
GLdouble c p_x, p_y, p_z GLdouble g
p_x, p_y, 0. GLdouble d 0., p_y, p_z
GLdouble h 0., p_y, 0. // Front
glBegin(GL_QUADS) glNormal3d(0, 0, 1)
glVertex3dv(a) glVertex3dv(b)
glVertex3dv(c) glVertex3dv(d)
glEnd() // Right glBegin(GL_QUADS)
glNormal3d(1, 0, 0) glVertex3dv(c)
glVertex3dv(b) glVertex3dv(f)
glVertex3dv(g) glEnd()
Write a Comment
User Comments (0)
About PowerShow.com