This course is an introduction to three-dimensional computer graphics. Students will learn both the theory of 3D computer graphics, and how to program it efficiently using OpenGL. The course primarily teaches the "modern" shader-based OpenGL (core profile),but also introduces the "classic" fixed-function OpenGL (compatibility profile).Topics include 2D and 3D transformations, Bézier and B-Spline curves for geometric modeling, interactive 3D graphics programming, computer animation and kinematics, and computer graphics rendering including ray tracing, shading and lighting. There will be an emphasis on the mathematical and geometric aspects of computer graphics. This course is regularly offered every semester(the instructor may vary from offering to offering, as may the content somewhat).
Computer Graphics With Opengl 4th Edition Pdfl
There will be three programming homework assignments, teaching students OpenGL and how to program 3D computer graphics. Please see the schedule for links to assignments and due dates.All assignments must be done individually.
I wish to thank Prof. Frank Pfenning and Prof. Jessica Hodginsfrom Carnegie Mellon University forgenerously providing materials from their computer graphicscourses at CMU. This course has also been influenced by computer graphics coursesat Cornell, MIT and UC Berkeley.
Lectures: FL 320, Tuesdays, 6pm - 8.50pmInstructor: Prof. Emmanuel Agu, FL-139, 508-831-5568, emmanuel@cs.wpi.edu Office Hours: Tuesday 5-6PM; Others by appointmentText: Computer Graphics using OpenGL (second edition) by F.S. Hill Jr. Supplemental texts (Optional): (1) OpenGL Programming Guide (4th Edition) by Woo, Neider, Davis and Shreiner and(2) OpenGL Reference Manual (4th Edition) by ShreinerFacilities: You may do your assignments in C/C++ but may choose to develop your code on either Unix or Windows. Note that compiled graphics code tends to be large and may consume more than one megabyte of disk space. Very important: No matter what platform you write your code on, the final executable must run on the WPI CCC Unix machines with clear instructions on your documentation how to run it. Your submitted code will be compiled,tested and graded on the machine ccc.wpi.edu. Make sure your code runs well on that machine before submitting it.Points will be deducted if you do not check that your code works on that machine.Class Websites: The class website is at emmanuel/courses/cs543/. A myWPI class website has also been set up. Please post your questions on the discussion board to avoid excessive emails and so that everyone can benefit from answers given. You may send email to me if you have questionson matters that concern only you. Software Utilities: You will be provided a simplified interface to OpenGL, called MiniGL. Someof the projects for this course shall require using miniGL. You will get miniGL software later in thecourse. Grade Policy: 50% exams (2 exams), 50% assignments (5 projects)
Notes: Reading is mandatory, working ahead is encouraged. Exams are based on both lectures and readings, so class attendance is strongly encouraged. Working and discussions in pairs is okay. However, each student must turn in different and unique projects. Cheating is strictly forbidden Cheating (a.k.a., academic dishonesty), defined as taking credit for work you did not do or knowledge you do not possess, isstrictly forbidden. First offenders will receive a zero grade for the assignment or exam in question and an academic dishonesty report will be filed withthe Office of Student Affairs. Repeat offenders will receive an F for thecourse and the case will be brought before the campus hearing board (see Student Handbook). All assignments should be archived using the Unix tar command and emailed to me.For the benefit of students who have not used tar before, I will give instructions onhow to run this command. Both your executable and source code must be turned in.Files MUST include instructions on compiling and running the program and should be WELL documented. Typically, a well-organized README text file is sufficient.Insufficient documentation will result in a loss of points. Data files should include a comment line at the start giving your name, the assignment for which it is intended, and the most recent date in which the file was changed. Please do NOT turn in hardcopies!! Projects: There will be five projects (1 project in 2D and interaction, 3 projects in 3D and 1 project in raytracing). The 3D projects involve the modeling and rendering of an airplane to help Boeing indesigning its new range of aircrafts due for release in the year 2020. You will model youraircraft design using basic shapes. An approximation would be fine - I would not expect you to create a state-of-the-art model - but it should be recognizable. You can choose a fixed configuration of components (location and orientation of cockpit, wings, tail, etc) though those of you planning to carry out research or further projects in graphics might want to attempt some greater level of detail.
ITCS 6120/8120 Computer Graphics is a standard course on computer graphics as a discipline in computer science. This differs from a computer graphics course found in an industrial art and design department that might cover how to use computer graphics applications or how to program in a 4th generation programming/scripting languages to develop 2D or 3D visual media presentations (VRML, Macromedia Flash, etc.).
Lectures: Fuller Labs (FL) 320, Wednesdays, 6:00 - 8:50PMGrader/Student Assistant: Xuanyu Chen, xchen9@wpi.eduOffice hours: Tuesdays 3 - 5PM, Wednesdays 3 - 5PMNote: All SA office hours will be held in the zoolab unless you receive instructions otherwise.Instructor: Prof. Emmanuel Agu, FL-139, 508-831-5568, emmanuel@cs.wpi.edu Office Hours: Thursdays 5:00 - 6:00PM; Others by appointmentRequired Text: Interactive Computer Graphics (6th edition) by Angel and Shreiner (Available on Amazon.com) IMPORTANT NOTE: We are using the 6th edition NOT the 7th edition of the textSupplemental texts (Optional): Computer Graphics using OpenGL (Third edition) by F.S. Hill Jr. and S Kelley (1 copy held on reserve in library) OpenGL 4 Shading Language Cookbook (second edition) David Wolff (e-copy available through WPI library)OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 4.3 (8th Edition) by Dave Shreiner, Graham Sellers, John M. Kessenich, Bill M. Licea-Kane (e-copy available through WPI library) Foundations of 3D Computer Graphics Steven Gortler (e-copy available through WPI library) Graphics Shaders (second edition) Bailey and Cunningham (e-copy available through WPI library) 3D Math Primer for Graphics and Game Development Dunn and Parberry (e-copy available through WPI library) Mathematics for Computer Graphics John Vince (e-copy available through WPI library) Real-time rendering Tomas Moller, Eric Haines and Naty Hoffman (e-copy available through WPI library) Facilities: You should do your assignments in C/C++ on Microsoft Windows since that's the platform on which they will be graded. Note that compiled graphics code tends to be large and may consume more than one megabyte of disk space. Very important: No matter what platform you write your code on, the final executable must run on the Windows machines in the WPI Zoolab with clear instructions in your documentation on how to run it. Your submitted code will be compiled,tested and graded on the machines in the zoolab. Make sure your code runs well on those machines before submitting it.Points will be deducted if you do not check that your code works on those machines.Class Websites: The class website is at emmanuel/courses/cs543/s18/ . Message boards have been set up on InstructAssist where you can discuss the homeworks andask questions. Please post your questions on the discussion board to avoid excessive emails and so that everyone can benefit from answers given. You may send email to me if you have questionson matters that concern only you. You can log into InstructAssist here: [ InstructAssist Log In Page ] Software Utilities: Your programs will be written in OpenGL. Microsoft Visual Studio and OpenGL are all installed on the machines in the WPI Zoolab. Grade Policy: 50% exams (3 exams), 50% assignments (5 projects)
Computer graphics is the use of computing to synthesize visual informations. Specifically, it is a process of converting a mathematical representation of the geometric data to a set of pixel colors, so that the outcome best visualizes the virtual world. This course provides an introduction to computer graphics with the following focuses: 3D computer graphics system: Modern graphics pipeline with OpenGL and GLSL.
Geometry of our 3D world: Linear algebra for Euclidean, affine and projective geometries.
Lights and shadows: Color the pixels according to basic optics.
Color and transparency: The mathematical relationship between the physical, perceptional, and displayed color. The algebra of compositing translucent colors.
Vector graphics: Generate smooth curves and surfaces from a few control points.
Photorealism: A glimpse into ray tracing and global illumination.
Physical simulation: A glimpse into physically realistic animated special effects.
Course annoucement: This course is an introduction to computergraphics, with particular emphasis on the mathematical foundations and mathematicalmethods. Lectures will be theoretical, but students will also learn how to use OpenGL andto create 3D graphics. Computer graphics is widely used for scientific visualization,simulators, movies and computer games, and depends heavily on mathematical techniques. The course will discuss the mathematics and physics needed forcomptuter graphics, for both realtime and offline applications. topics include: affinetransformations, perspective, Bresenham algorithm, homogeneous coordinates, barycentriccoordinates, bilinear interpolation, hyperbolic interpolation, quaternions, Bezier curves,B-spline curves, blossoming, interpolating splines, shading, spline surfaces, colorperception, color representation, texture mapping, ray tracing, intersection testing,radiosity. If time permits, we will discuss topics from animation and simulation (inversekinematics, forward dymamics, collisions, intersections and contacts are possibilities). Prerequisites: This course is intended for graduatestudents in mathematics or engineering. The mathematical prerequisites are strongfamiliarity with undergraduate calculus and linear algebra. Undergraduates should take thecourse only with prior approval and only on a space-available basis. Students should havehad some exposure to at least one language in the C family (C, C++, Java, C#) as studentwork will include programming assignments. Programming will use OpenGL, a widely used,cross-platform API for real-time computer graphcis. No prior knowledge of OpenGL isexpected. In addition, special code for ray tracing will be made available. 2ff7e9595c
Comments