CSC 425 Computer Graphics and Games



Similar documents
CSC475 Distributed and Cloud Computing Pre- or Co-requisite: CSC280

COMP-557: Fundamentals of Computer Graphics McGill University, Fall 2010

City University of Hong Kong

How To Learn To Program In Csc 406 Computer Graphics

CPIT-285 Computer Graphics

William Paterson University of New Jersey Department of Computer Science College of Science and Health Course Outline

CSCD18: Computer Graphics

Course Overview. CSCI 480 Computer Graphics Lecture 1. Administrative Issues Modeling Animation Rendering OpenGL Programming [Angel Ch.

UNIVERSITY OF MACAU DEPARTMENT OF COMPUTER AND INFORMATION SCIENCE SFTW 463 Data Visualization Syllabus 1 st Semester 2011/2012 Part A Course Outline

How To Teach Computer Graphics

Introduction to Computer Graphics

Video Game Programming ITP 380 (4 Units)

Institution : Majmaah University. Academic Department : College of Science at AzZulfi. Programme : Computer Science and Information Course :

GUI GRAPHICS AND USER INTERFACES. Welcome to GUI! Mechanics. Mihail Gaianu 26/02/2014 1

CS 378: Computer Game Technology

Introduction to Computer Graphics. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012

Teaching Introductory Computer Graphics Via Ray Tracing

Carleton University School of Computer Science COMP Computer graphics Fall 2015

NEW YORK CITY COLLEGE OF TECHNOLOGY/CUNY Computer Systems Technology Department

WILLIAM PATERSON UNIVERSITY OF NEW JERSEY COLLEGE OF SCIENCE AND HEALTH Computer Science Department Course Outline

3D Game Programming using Unity3D Syllabus

COMP175: Computer Graphics. Lecture 1 Introduction and Display Technologies

TEACHING INTRODUCTORY COMPUTER GRAPHICS WITH THE PROCESSING LANGUAGE

COMPUTER GRAPHICS Computer Graphics

Monash University Clayton s School of Information Technology CSE3313 Computer Graphics Sample Exam Questions 2007

TEACHING GRAPHICS PROGRAMMING ON MOBILE DEVICES

Introduction Week 1, Lecture 1

Instructor. Goals. Image Synthesis Examples. Applications. Computer Graphics. Why Study 3D Computer Graphics?

CURRICULUM VITAE EDUCATION:

COMP252: Systems Administration and Networking Online SYLLABUS COURSE DESCRIPTION OBJECTIVES

Introduction to Information Visualization

COMPUTER SCIENCE. FACULTY: Jennifer Bowen, Chair Denise Byrnes, Associate Chair Sofia Visa

Lecture Notes, CEng 477

Computer Applications in Textile Engineering. Computer Applications in Textile Engineering

2: Introducing image synthesis. Some orientation how did we get here? Graphics system architecture Overview of OpenGL / GLU / GLUT

Computer Graphics. Introduction. Aleksandra Pizurica. Ghent University

CAD and Creativity. Contents

Students will be notified by the instructor of any changes in course requirements or policies.

Introduction. Video Game Technologies 11498: MSc in Computer Science and Engineering 11156: MSc in Game Design and Development

Computer Graphics. Anders Hast

Syllabus College Algebra (MAC 1105) 3 credit Fall 2011

Bachelor of Games and Virtual Worlds (Programming) Subject and Course Summaries

Artificial Intelligence. Class: 3 rd

Course Syllabus. Tuesday 4 pm to 5 pm & Thursday 4 to 5 pm

MAT Elements of Modern Mathematics Syllabus for Spring 2011 Section 100, TTh 9:30-10:50 AM; Section 200, TTh 8:00-9:20 AM

INTRODUCTION TO INFORMATION TECHNOLOGY CSIT Class Hours: 3.0 Credit Hours: 4.0 Laboratory Hours: 3.0 Revised: August 24, 2012

SAN DIEGO COMMUNITY COLLEGE DISTRICT MESA COLLEGE ASSOCIATE DEGREE COURSE OUTLINE

CSE 445/598 Distributed Software Development

MUSIC BUSINESS Northwest College MUSB COOPERATIVE EDUCATION, MUSIC MANAGEMENT AND MERCHANDISING. CRN Summer 2014

CS 425 Software Engineering. Course Syllabus

Computer Graphics ( / ) Prof. Misha Kazhdan misha@cs.jhu.edu

Central COLLEGE Department of Mathematics COURSE SYLLABUS. MATH 0308: Fundamentals of Math II

Interactive Computer Graphics

DEGREE CURRICULUM COMPUTER GRAPHICS AND MULTIMEDIA Master's Degree in Informatics Enginneering

Bergen Community College - Information Technology Course Syllabus

School of Business and Nonprofit Management Course Syllabus

MAT 103B College Algebra Part I Winter 2016 Course Outline and Syllabus

Grading Distribution: Homework: 20% Examination: 15% Final Examination: 25% Project: 40%

LOS ANGELES VALLEY COLLEGE MATH 275. Ordinary Differential Equations (section # units) S16. MW 9:40 11:05a MS 108

CS 425 Software Engineering. Course Syllabus

CS 425 Software Engineering

CSE 564: Visualization. GPU Programming (First Steps) GPU Generations. Klaus Mueller. Computer Science Department Stony Brook University

MASTER SYLLABUS

New York City College of Technology The City University of New York. Department of Communication Design. COMD D Animation & Modeling II

Monfort College of Business Semester Course Syllabus ( )

Universidade de Aveiro Departamento de Electrónica, Telecomunicações e Informática. Introduction to Information Visualization

ICS : 435. Computer Graphics Applications. Instructor : Da'ad Albalawneh

Philadelphia University Faculty of Information Technology Department of Computer Science --- Semester, 2007/2008. Course Syllabus

Syllabus. HMI 7437: Data Warehousing and Data/Text Mining for Healthcare

An Animation Definition Interface Rapid Design of MPEG-4 Compliant Animated Faces and Bodies

INTRODUCTION TO RENDERING TECHNIQUES

Image Processing and Computer Graphics. Rendering Pipeline. Matthias Teschner. Computer Science Department University of Freiburg

ITFN3112 Systems Analysis and Design Spring 2014 (CRN 2-190)

Computer Graphics. Introduction. Computer graphics. What is computer graphics? Yung-Yu Chuang

CS135 Computer Science I Spring 2015

NEW YORK CITY COLLEGE OF TECHNOLOGY/CUNY Computer Systems Technology Department. COURSE: CST2403 C++ Programming Part 1 ( 4 hours, 3 credits )

Computer Graphics CS 543 Lecture 12 (Part 1) Curves. Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI)

INTRODUCTION TO INFORMATION TECHNOLOGY

PELLISSIPPI STATE COMMUNITY COLLEGE MASTER SYLLABUS ADVANCED DATABASE MANAGEMENT SYSTEMS CSIT 2510

Learning Web Page: Office Hours: I can be melvin.mays@hccs.edu or

RARITAN VALLEY COMMUNITY COLLEGE ACADEMIC COURSE OUTLINE. CISY 105 Foundations of Computer Science

Applied Network Security Course Syllabus Spring 2015

Sample Syllabus (C++) CSCI 1301 Introduction to Programming Principles

CME 405 Building Information Modeling for Construction Management 3 Credits (3 Lecture Hours)

PELLISSIPPI STATE COMMUNITY COLLEGE MASTER SYLLABUS 3D MODELING & ANIMATION CGT Class Hours: 3.0 Credit Hours: 3.0

Introduction to Game Design and Development GAME 1303 Syllabus

Introduction Week 1, Lecture 1

Computer Graphics and Image Processing Introduction

Transcription:

Computer Science Department cs.salemstate.edu CSC 425 Computer Graphics and Games 4 cr. Instructor: TBA Office: location Phone: (978) 542-extension email: TBA@salemstate.edu Office Hours: days and times Section Time Room Final Exam nn days and times location Lnn days and times location date and time Catalog description: This course covers fundamental principles and applications underlying computer graphics and computer games. The course presents key aspects of computer graphics including graphics pipeline, scene graphs, 2D/3D geometric objects and transformations, viewing, shading, and modeling. Topics related to computer game development include game engines, animation, and behavior and interaction. The course will also introduce basic concepts of collision detection, illumination, game design and implementation, and will emphasize the application of the topics in game-related computer graphics programming projects with the use of graphics libraries and game engines and toolkits. Three lecture hours and three hours of scheduled laboratory time per week, plus programming work outside of class. Prerequisites: MAT 108 or MAT 110 or any MAT course numbered 208 or above except MAT 247, plus CSC 260. Goals: The purpose of this course is to develop students' understanding of modern computer graphics and game development. The goals of this course are: CG01: to develop an appreciation for the modern computer graphics and game design; CG02: to understand the basic mathematics behind computer graphics; CG03: to understand the fundamental concepts in creating graphical contents; CG04: to present the design issues for game development; CG05: to give students experience in the construction of visual elements and environment (including games). Objectives: Upon successful completion of the course, a student will have: CO01: demonstrated knowledge of the mathematical foundations of computer graphics; CO02: demonstrated knowledge of the rendering pipeline in computer graphics; CO03: described scene graphs, 2D/3D transformations, 2D/3D viewing, lighting, and clipping; CO04: utilized at least one graphics library and at least one programming language to construct 2D/3D graphical objects and apply transformations, material properties, illuminations, and camera models to the objects to create a graphical environment; CO05: identified texturing, shading, curves and surfaces, rasterization, and z-buffer; CO06: become acquainted with basic game programming theory and tools, game engine, game GUI and input devices, collision detection; CO07: demonstrated the ability to design and develop an interactive game with the application of computer graphics techniques. Page 1 of 6

Program Objective vs. Course Objective matrix Program Objective (condensed form) PO-A: apply knowledge of computing and math PO-B: analyze a problem and define its computing requirements PO-C: design, implement and evaluate applications PO-D: function effectively in teams to accomplish a common goal PO-E: professional, ethical, and social responsibilities PO-F: communicate effectively with a range of audiences PO-G: local and global impact of computing on people and society PO-H: need for continuing professional development PO-I: use current techniques, skills, and tools PO-J: apply theory and principles to model and design systems PO-K: apply design and development principles in constructing software CO01 CO02 CO03 CO04 CO05 CO06 CO07 Topics: Introduction graphics system (hardware and software) graphics pipeline rasterization scene graph graphics libraries and APIs computer graphics programming GPU interactive graphics mathematical fundamentals of computer graphics Geometric objects and transformations scalars, points, vectors graphics primitives coordinate systems and frames representations and N-tules homogeneous coordinates transformations affine transformations translation rotation scaling shear transformations in homogeneous coordinates modeling shapes with polygonal meshes concatenation of transformations Viewing positioning of the camera Page 2 of 6 GV1(5), GV2(2) GV1(5), GV4(2) GV1(3)

projections orthogonal projections perspective projections clipping z-buffer Lighting and texturing GV1(1), GV5(4) light and matter light sources color sources ambient light point sources spotlights distant light sources Phong reflection model ambient reflection diffuse reflection specular reflection use of Phong model in graphics API translation texture mapping Interactive graphics and games GV2(3), GV3(1), GV8(3), HCI2(2), HCI5(1.5), HCI7(1.5), IS2(1.5), SE2(2) input and interaction input devices event-driven programming picking design of interactive programs fundamentals of game design design components and processes user interfaces genres of games game development collision detection artificial intelligence in games game engine patterns Assignments: Five to eight homework assignments will be given to help understand computer graphics and games topics and their related mathematical basics. Six to eight programming projects will be given to reinforce the concepts and techniques covered in the class. Lab exercises are preparations to and part of the programming assignments. Quizzes, Tests and Examinations: there will be two examinations: a midterm exam administered in the middle of the semester and a comprehensive final exam administered during the final exam period. Grading: The course grade will be determined using the following approximate weights: homework, 20%; programming assignments, 55%; midterm and final exams, 25%. There will penalties for late submissions of homework and programming assignments. Assessment Mechanism / Course Objective matrix Exam Questions Homework Problems Page 3 of 6 Programming Projects (individual and group) Lab Exercises CO01

Assessment Mechanism / Course Objective matrix Exam Questions Homework Problems Programming Projects (individual and group) Lab Exercises CO02 CO03 CO04 CO05 CO06 CO07 Bibliography: Main texts: Angel, Edward. Interactive Computer Graphics: A Top-down Approach Using OpenGL. Fifth Edition. Addison- Wesley, 2009. Angel, Edward. OpenGL: A Primer. Third Edition. Addison-Wesley, 2007. Brackeen, David. Developing Games in Java. New Riders Games, 2003. Blundell, Barry G. An Introduction to Computer Graphics and Creative 3-D Environments. Springer, 2008. Buckland, Mat. Programming Game AI by Example. Jones & Bartlett publishers, 2004. Cunningham, Steve. Computer Graphics: Programming in OpenGL for Visual Communication. Prentice Hall, 2006. Davison, Andrew. Killer Game Programming in Java. O Reilly Media, 2005. Davison, Andrew. Pro Java 6 3D Game Development: Java 3D, JOGL, JInput, and JOAL APIs. Apress, 2007. Fulton, Jeff. The Essential Guide to Flash Games: Building Interactive Enternment with ActionScript. Friends Of ED. 2010. Harbour, Joanthan, S. Beginning Game Programming. Third Edition. Course Technology PTR, 2009. Harbour, Joanthan, S. Beginning Java Game Programming. Second Edition. Course Technology PTR, 2007. Hearn, Donald D.; Baker, M. Pauline. Computer Graphics with OpenGL. Third Edition. Prentice Hall, 2003. Sherrod, Allen. Game Graphics Programming. Charles River Media, 2008. Zhang, Hong; Liang, Y. Daniel. Computer Graphics Using Java 2D and 3D. Pearson & Prentice Hall, 2007. Computer Graphics/Games References: Adam, Ernest. Fundamentals of Game Design. Second Edition. New Riders Press, 2009. Bailey, Mike; Cunningham, Steve. Graphics Shaders: Theory and Practice. A K Peters, 2009. Dunn, Fletcher; Parberry, Ian. 3D Math Primer for Graphics and Game Development (Wordware Game Math Library). Jones & Bartlett Publishers, 2002. Eberly, David H. Game Physics (Interactive 3D Technology Series). Morgan Kaufmann, 2003. Eberly, David H. 3D Game Engine Design: A Practical Approach to Real-time Computer Graphics (The Morgan Kaufmann Series in Interactive 3D Technology). Morgan Kaufmann, 2006. Ericson, Christer. Real-Time Collision Detection (The Morgan Kaufmann Series in Interactive 3D Technology. Morgan Kaufmann, 2005. Erleben, Kenny; Sporring, Jon; Henricksen, Knud; Dohlmann, Herik. Physics Based Animation (Graphics Series). Charles River Media, 2005. Gregory, Jason; Lander, Jeff. Game Engine Architecture. A K Peters, 2009. Harbour, Joanthan, S. Advanced 2D Game Development. Course Technology PTR, 2008. Harbour, Joanthan, S. Game Programming All in One. Third Edition. Course Technology PTR, 2006. Hill, Francis S.; Kelley, Stephen M. Computer Graphics Using OpenGL. Third Edition. Prentice Hall, 2006. LaMothe, Andre. Multiplayer Game Programming w/cd (Prima Tech s Game Development). Course Technology, 2001. Page 4 of 6

Lengyel, Eric. Mathematics for 3D Game Programming and Computer Graphics. Second Edition (Game Development Series). Charles River Media, 2003. McConnell, Jeffrey J. Computer Graphics: Theory into Practice. Jones & Bartlett, 2005. McShaffry, Mike. Game Coding Complete. Third Edition. Charles River Media, 2009. Millington, Ian. Game Physics Engine Development (The Morgan Kaufmann Series in Interactive 3D technology). Morgan Kaufmann, 2007. Palmer, Grant. Physics for Game Programmers. Apress, 2006. Parent, Rick. Computer Animation: Algorithms and Techniques. Second Edition. (The Morgan Kaufmann Series in Computer Graphics). Morgan Kaufmann, 2007. Polack, Trent. Focus on 3D Terrain Programming (Game Development). Course Technology, 2002. Prautzsch, Hartmut; Boehm, Wolfgang; Paluszny, Marco. Bezier and B-Spline Techniques. Springer, 2002. Verth, James M. Van; Bishop, Lars M. Essential Mathematics for Games and Interactive Applications: AProgrammer s Guide (The Morgan Kaufmann Series in Interactive 3D Technology). Morgan Kaufmann, 2004. Watt, Alan. 3D Computer Graphics. Third Edition. Addison-Wesley, 1999. Language/API references: Braunstein, Roger. ActioScript 3.0 Bible, 2 nd Edition. Wiley, 2010. OpenInventor Group. Open Inventor C++ Reference Manual: The Official Reference Document for Open Inventor, Release 2. Addison-Wesley, 1994. Peters, Keith. Foundation ActionScript 3.0 Animation: Making Things Move. Apress, 2007. Peters, Keith. Advanced ActionScript 3.0 Animation: Making Things Move. Apress, 2008. Reas, Casey; Fry, Ben; Maeda, John. Processing: A Programming Handbook for Visual Designers and Artists. The MIT Press, 2007. Rost, Randi J.; Licea-Kane, Bill; and et al. OpenGL Shading Language. Third Edition. Addison-Wesley, 2009. Shirley, Peter; Marschner, Steve. Fundamentals of Computer Graphics. Third Edition. A K Peters, 2009. Luna, Frank. Introduction to 3D Game Programming with Direct X 9.0c: A Shader Approach (Wordware Game and Graphics Library). Jones & Bartlett Publishers, 2006. Rosenzweig, Gary. ActionScript 3.0 Game Programming University, 2 nd Edition. Que, 2011. Shiffman, Daniel. Learning Processing: A Beginner s Guide to Programming Images, Animation, and Interaction (Morgan Kaufmann Series in Computer Graphics). Morgan Kaufmann, 2008. Shreiner, Dave; The Khronos OpenGL ARB Working Group. OpenGL Programming Guide: The Official Guide to Learning OpenGL, Version 3.0 and 3.1. Seventh Edition. Addison-Wesley, 2009. Shreiner, Dave; The Khronos OpenGL Reference Manual: The Official Reference Document to OpenGL, Version 1.4. Fourth Edition. Addison-Wesley, 2004. Wernecke, Josie; Open Inventor Architecture Group. The Inventor Mentor: Programming Object-Oriented 3D Graphics with Open Inventor, Release 2. Addison-Wesley, 1994. Wernecke, Josie; Open Inventor Architecture Group. The Inventor Toolmaker: Extending Open Inventor, Release 2. Addison-Wesley, 1994. Wihidal, Graham. Game Engine Toolset Development. Course Technology PTR, 2006. Academic Integrity Statement: Salem State University assumes that all students come to the University with serious educational intent and expects them to be mature, responsible individuals who will exhibit high standards of honesty and personal conduct in their academic life. All forms of academic dishonesty are considered to be serious offences against the University community. The University will apply sanctions when student conduct interferes with the University primary responsibility of ensuring its educational objectives. Consult the University catalog for further details on Academic Integrity Regulations and, in particular, the University definition of academic dishonesty. The Academic Integrity Policy and Regulations can be found in the University Catalog and on the University website (http://www.salemstate.edu/content_images/academic_integrity_regulations_2007(1).pdf). The formal regulations are extensive and detailed - familiarize yourself with them if you have not previously done so. A concise summary of and direct quote from the regulations: "Materials (written or otherwise) submitted to fulfill academic requirements must represent a student's own efforts". Submission of other's work as one's own without proper attribution is in direct violation of the University's Policy and will be dealt with according to the University's formal Procedures. Copying without attribution is considered cheating in an academic environment - simply put, do not do it! Page 5 of 6

University-Declared Critical Emergency Statement: In the event of a university-declared emergency, Salem State University reserves the right to alter this course plan. Students should refer to www.salemstate.edu for further information and updates. The course attendance policy stays in effect until there is a university-declared critical emergency. In the event of an emergency, please refer to the alternative educational plans for this course, which will be distributed via standing class communication protocols. Students should review the plans and act accordingly. Any required material that may be necessary will have been previously distributed to students electronically or will be made available as needed via email and/or Internet access. Equal Access Statement: "Salem State University is committed to providing equal access to the educational experience for all students in compliance with Section 504 of The Rehabilitation Act and The Americans with Disabilities Act and to providing all reasonable academic accommodations, aids and adjustments. Any student who has a documented disability requiring an accommodation, aid or adjustment should speak with the instructor immediately. Students with Disabilities who have not previously done so should provide documentation to and schedule an appointment with the Office for Students with Disabilities and obtain appropriate services." Note: This syllabus represents the intended structure of the course for the semester. If changes are necessary, students will be notified in writing and via email. Page 6 of 6