Instructor: Dr. Shaun D. Ramsey Email: sramsey2@washcoll.edu Phone: (410)810-7485 Office: DUNN N102 Office Hours: 2:30pm W, 1pm TR CSI 494 - SpTp: Computer Graphics Fall 2014 Website: http://shaunramsey.com/494 Classroom/Meetings: DUNN N103 TR 11:30-12:45pm Text: None - OpenGL Red Book (OpenGL Programming Guide) Tentative Exam Dates: 10/7 Grade Breakdown: Exams (25% each), Homework, Classwork, Quizzes (35% combined), Final Project (40%) Attendance: Fail on 6 == absences+lates/2 Overview and Advising: The field of computer graphics is prevelant in much of pop culture, science and medicine, and throughout almost any emerging technology. The fundamentals of most graphics system include transformations, viewing and modeling, and many other similar design considerations. As efficiency drives the limit of computer graphics, intense focus on data structures, memory coherence, machine-level programming and other techniques are prevelent in advanced computer graphics. As such, graphics is a great way to encourage students to learn more about many of these topics in an exiting field. This course will cover the fundamentals of graphics pipelines and programming. Students will learn basic graphics concepts such as line drawing, z-buffers, double buffers, transformations, viewing, color, lighting and texturing. In this course, students will learn the complexiites of coding a rasterizer by hand and then enjoy the benefits of modeling and development in OpenGL. Students will gain a simple working understanding of vectors and matrices, especially as they pertain to graphics and graphics hardware. Graphics is challenging material and 494 is a challenging course, with many assignments and a large amount of mathematics. Exams: An absence on the day of the exam will result in a grade of 0. Except in cases of very extreme emergency, exams must be taken on the day the exam is given. Before a make-up test is scheduled, documentation of the extreme emergency must be given. Make-up exams for tests missed due to an extreme emergency will be arranged for a time that is mutually convenient for the student and Dr. Ramsey. Attendance: Attendance is mandatory in this course. On your sixth absence, you automatically fail the course. As a matter of courtesy, you are expected to notify Dr. Ramsey before class describing the reason of your absence. You must be present on the day of an exam or you will receive a 0. There is no distinction between excused and unexcused absences. It is quite likely that I will email you to discuss the reasons you have missed the class, but it is ultimately your duty to keep track of your absences and to contact me. Missing a class may result in missed classwork and/or quizzes. There are no make-up quizzes or classwork. It is your responsibility to obtain assigned homework, announcements and class notes from a classmate. Coming late to class will also count against you. In this case, every two late arrivals (lates) count as an absence. Thus you fail the course with 12 lates or 6 absences or any mix of the two that add up to 6. Examples are: 2 lates and 5 absences, 4 lates and 4 absences, 6 lates and 3 absences, and so on. Grading: Programming assignments must be handed in on time and compile. Late homework (and programming that does not compile) will receive a grade of 0, however, I will grade late homework and consider it when tallying final grades. It is most important to do the homework to gain programming skill, rather than to achieve high marks. Each homework is fully accessible in this course and there are two lab sessions each week to help you. Homework is due by the beginning of class on the day it is due. Do not ’touch’ or modify your files on the server after handing in the assignment, as this will change the time stamp. If you miss an assignment, you should always make up the work for consideration, review and mark up. Academic Honesty: You are always subject to the Honor Code of Washington College. Always sign the honor code on materials that you hand in (including homework and exams). All work must be your own. Accommodations: If you have an accommodation that has been reported to the college, please let me know as soon as possible so I can work to meet your accommodation. You must notify me of any necessary accommodation at least two weeks prior to the requirement. Suggestions: Get into a group. You may point out programming errors and discuss design with others, but all code must be of your own creation. Copying the code of another might help you pass an assignment (if you are not caught), but your ability with programming will definitely reveal itself during the examinations if this is how you get by homework. General Schedule: Week 1 Event Based Programming - Graphics Week 2 Line Drawing - What's the Point? Week 3 Clipping and Filling Week 4 Vectors and Meshes Week 5 Transformations Week 6 Catch-up, Exam Week 7 Viewing, Perspectives, Z-buffers Week 8 Lighting and Calculations Week 9 Final Proposal Presentations Week 10 Collisions and Collision Detection Week 11 Texture Mapping Week 12 Final Works Week 13 Final Presentations Week 14 Final Presentations and Individual Meetings