TA: Ryan Freedman Sushma Kini Chi Zhou.  Due Date: March 8 2016, 12:30 PM  We want a zip folder named cs418_mp1_{netid}.zip which contains  Source.

Slides:



Advertisements
Similar presentations
Computer Graphics - Viewing -
Advertisements

Computer Graphics 2D & 3D Transformation.
CLASS 4 CS770/870. Translation Scale Multiplying Matrices. The R C rule What happens when we do two translates? What happens when we do two scales?
The View Frustum and the Camera Lecture 19 Fri, Oct 10, 2003.
Three Dimensional Modeling Transformations
CLASS 6 PERSPECTIVE CS770/870. Orthographic projections Isometric ObliqueIn isometric all distances along the major axes are the same.
Computer Graphics Through OpenGL: From Theory to Experiments, Second Edition Chapter 4.
The Firing Solution IMGD 4000 Due: optional, but no later than May 5 th, 11:59pm Note! No “late” submission allowed for this project.
Based on slides created by Edward Angel
1 3D modelling with OpenGL Brian Farrimond Robina Hetherington.
1 Angel: Interactive Computer Graphics 4E © Addison-Wesley 2005 Computer Viewing Ed Angel Professor of Computer Science, Electrical and Computer Engineering,
CS 352: Computer Graphics Chapter 5: Viewing. Interactive Computer GraphicsChapter Overview Specifying the viewpoint Specifying the projection Types.
1 Project 2: Navigation five ways to navigate Absolute Rotate/Translate Keyboard Absolute Lookat Keyboard move wrt global coordinate system Relative Rolling.
TA: Zhicheng Yan Sushma S Kini Mary Pietrowicz
Computer Graphics (Fall 2008) COMS 4160, Lecture 4: Transformations 2
OpenGL (II). How to Draw a 3-D object on Screen?
CS 4731: Computer Graphics Lecture 11: 3D Viewing Emmanuel Agu.
3D Rendering with JOGL Introduction to Java OpenGL Graphic Library By Ricardo Veguilla
3D VIEWING ILLUSTRATED. WHAT YOU SEE DEPENDS ON YOUR POSITION In the real world, what you see depends on where you stand, the direction you look, how.
A Camera Class for OpenGL John McGuiness October 2006.
1 Perception, Illusion and VR HNRS 299, Spring 2008 Lecture 19 Other Graphics Considerations Review.
Mouse-Based Viewing & Navigation Glenn G. Chappell U. of Alaska Fairbanks CS 381 Lecture Notes Monday, November 3, 2003.
VIDEO GAME PROGRAMMING Video Game Programming Junior – DigiPutt INSTRUCTOR TEACHER’S ASSISTANT.
Image Synthesis Rabie A. Ramadan, PhD 2. 2 Java OpenGL Using JOGL: Using JOGL: Wiki: You can download JOGL from.
Geometric transformations The Pipeline
Viewing Angel Angel: Interactive Computer Graphics5E © Addison-Wesley
Interactive Computer Graphics CS 418 – Spring 2015 Mesh Rendering, Transformation, Camera Viewing and Projection in OpenGL TA: Zhicheng Yan Sushma S Kini.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
Foundations of Computer Graphics (Fall 2012) CS 184, Lecture 4: Transformations 2
Stages of Vertex Transformation To specify viewing, modeling, and projection transformations, you construct a 4 × 4 matrix M, which is then multiplied.
Computer Graphics I, Fall 2010 Computer Viewing.
Interactive Computer Graphics CS 418 MP1: Dancing I TA: Zhicheng Yan Sushma S Kini Mary Pietrowicz Slides Taken from: “An Interactive Introduction to OpenGL.
Modeling with OpenGL Practice with OpenGL transformations.
OpenGL: Introduction Yanci Zhang Game Programming Practice.
OpenGL The Viewing Pipeline: Definition: a series of operations that are applied to the OpenGL matrices, in order to create a 2D representation from 3D.
Image Synthesis Rabie A. Ramadan, PhD 4. 2 Review Questions Q1: What are the two principal tasks required to create an image of a three-dimensional scene?
Advanced Viewing Glenn G. Chappell U. of Alaska Fairbanks CS 381 Lecture Notes Friday, October 31, 2003.
2 COEN Computer Graphics I Evening’s Goals n Discuss viewing and modeling transformations n Describe matrix stacks and their uses n Show basic geometric.
Review on Graphics Basics. Outline Polygon rendering pipeline Affine transformations Projective transformations Lighting and shading From vertices to.
The Camera Analogy ► Set up your tripod and point the camera at the scene (viewing transformation) ► Arrange the scene to be photographed into the desired.
Chapters 5 2 March Classical & Computer Viewing Same elements –objects –viewer –projectors –projection plane.
Graphics CSCI 343, Fall 2015 Lecture 16 Viewing I
Fall 2007ACS-1805 Ron McFadyen1 Chapter 2 Creating Your First Animation (An Introduction to Programming)
 Learn some important functions and process in OpenGL ES  Draw some triangles on the screen  Do some transformation on each triangle in each frame.
Chap 3 Viewing and Transformation
Honours Graphics 2008 Session 3. Today’s focus Perspective and orthogonal projection Quaternions Graphics camera.
Visualization Recreate the ping pong scene in 3D using ball and racket coordinates.
Camera. “Up”, “Forward” and “Along” The three camera view vectors are defined as shown:
Game Programming Step-03 How to control the keyboard in Game.
CS5500 Computer Graphics March 20, Computer Viewing Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts.
1 E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 Computer Viewing Isaac Gang University of Mary Hardin-Baylor.
Coordinate Systems Lecture 20 Wed, Oct 15, Object Coordinates Each object has its own “local” coordinate system, called object coordinates. Normally.
Transformation Example. Order of Transformation Matters Scale, translate Scale, translate Translate scale Translate scale Rotate, Translate Rotate, Translate.
OpenGL LAB III.
CS 490: Computer Graphics Chapter 5: Viewing. Interactive Computer GraphicsChapter Overview Specifying the viewpoint Specifying the projection Types.
Introduction to 3-D Viewing Glenn G. Chappell U. of Alaska Fairbanks CS 381 Lecture Notes Monday, October 27, 2003.
Viewing.
School of Computer Science
Computer Viewing.
Camera Position (5.6) we specify the position and orientation of the camera to determine what will be seen. use gluLookAt (eye x, y, z, at x, y, z, up.
Isaac Gang University of Mary Hardin-Baylor
A Camera Class for OpenGL
CSC461: Lecture 19 Computer Viewing
Introduction to Computer Graphics with WebGL
University of New Mexico
Computer Graphics 3Practical Lesson
Computer Graphics Computer Viewing
Computer Viewing Ed Angel Professor Emeritus of Computer Science
CS 352: Computer Graphics Chapter 5: Viewing.
Prepared by your friendly, phantom TA Jennifer
Presentation transcript:

TA: Ryan Freedman Sushma Kini Chi Zhou

 Due Date: March , 12:30 PM  We want a zip folder named cs418_mp1_{netid}.zip which contains  Source Code folder  Screen Shot folder  README with compilation instructions and link to mandatory video demo  Submit your zip folder on Compass  Late Submission: 10% penalty each day after the due date

 Automatic forward motion with constant speed  Roll and Pitch features  Use Key events to perform rolling and pitching.  Document the key events used in README  Transformation should be in correct order  Once you pitch up, then the plane should move in direction the plane is facing  Roll left + Pitch =Plane turns to the left and not straight up.  4 credits student only: Use vertex shader

 Interactive UI (10%): Using either keyboard or mouse to control your plane interactively.  Translation (20%): The plane should move forward automatically.  Roll (25%): Apply correct rotation when your plane rolls left or right.  Pitch (25%): Apply correct rotation when your plane pitch up and down.  Performance (15%): Your simulator should run interactively and should be reasonably efficient.  Documentation (5%): Your code should be commented or self-explanatory. A readme.txt should explain the features and special instructions ( if any ) to run your code.  Bonus (5%): Show your creativeness in the scene, or any impressive features from your program.

 Increase/Decrease Speed: +1  “Restart” option through key event +1  Increase/Decrease Sea level: +1  Regenerate terrain during flight sim through key event +1-5  Displaying a timer on the screen +2  Performing Yaw feature: +2  Displaying Speed on your window: +2  Generating your own new terrain: +5  Converting your flight simulator into a small game: +5

 gluLookAt(eye_x, eye_y,eye_z, lookat_x, lookat_y, lookat_z, up_x, up_y, up_z);  Initialize Eye position, LookAt, Up and R vector  Constant forward motion: Offset Eye position in Lookat direction  Pitch Up/Down: Rotate LookAt and Up vector about R axis  Roll Left/ Right: Rotate Up, R about LookAt axis.  Every time you press arrow keys, update LookAt, Up and R accordingly  In display function set: gluLookAt(Eye, Eye+LookAt, Up); Eye LookAt Up R=Cross(LookAt,Up)

 Imagine your Eye={0,0,0}, LookAt={0,0,-1}, Up={0,1,0}  For Roll left by angle 30 o, you need to update R and Up.  Here R={1,0,0}  New Eye, LookAt, Up, R:  Eye = {0,0,0}  LookAt = {0,0,-1}  Up = {0.5,0.866,0}  R = {.866,-0.5,0} Eye LookAt Up R Eye LookAt Up R

 Moving camera is equivalent to moving every object in the world towards a stationary camera  Using a fixed gluLookAt, but call OpenGL transformation command instead.  Where should you put glTranslate/glRotate to simulate a flight simulator ?  Before or after gluLookAt ?  Remember premultiply?  “glMultMatrix multiplies the current matrix with the one specified using m, and replaces the current matrix with the product.”

 glPushMatrix() : Create a copy of top matrix & push it into stack.  glPopMatrix() : Remove the top matrix from stack  Example: Drawing each object : glPushMatrix();glTranslate()glScale()glBegin()….glEnd()glPopMatrix();

 Use glutSpecialFunc(int key, int x, int y) for using arrow key events.  Reference: