Skip to content

IGME-202-17S2/Syllabus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IGME-202 : Section 02 - Spring 2017-18

Course Description

In this course, students will learn to create visually rich interactive experiences. It is a course in programming graphics and media, but it is also a course on the relationship between ideas and code. Students will explore topics in math and physics by building programs that simulate and visualize processes in the natural world. Assignments will include major programming projects, such as building a virtual world inhabited by digital creatures that display observable behaviors.

Prerequisites

  • either IGME-201 New Media Interactive Design and Algorithmic Problem Solving III
  • or IGME-106 Game Development and Algorithmic Problem Solving II
  • IGME-110 Introduction to Interactive Media
  • MATH-131 Discrete Mathematics
  • MATH-185 Mathematics of Graphical Simulation I




Instructor Info

Instructor Joe Pietruch
Email jcpigm@rit.edu
Phone (585)496-4563
Office Hours Tues/Thurs 5pm-5:30pm (ORN-1375)
Monday 8pm-9pm (On Slack)
Friday 5pm-6pm (GOL-2350)
otherwise, by appointment

I'm also available on slack and by appointment!




Important RIT Deadlines

Last Add/Drop Tuesday, January 23
Last Withdrawal Friday, April 6




Textbooks, Resources, Materials

Required The Nature of Code by Daniel Shiffman
ISBN: 978-0123944436
Available online for free! http://natureofcode.com/book/
Optional Game Programming Algorithms and Techniques by Sanjay Madhav
ISBN: 978-0321940155
Available on Amazon
Other Readings Handouts, PDFs, URLs
myCourses Grades, Exams, Quizzes
Slack Messaging
Google Hangouts Remote Classes, Office Hours




Topic List

Roughly speaking, here is what we'll be covering over the course of the semester:

  • Git, GitHub, Version Control
  • Introduction to Unity 3D
  • 3D Coordinate Systems
  • Exploration of Randomness
  • Mathematical Foundations
  • Vectors and Movement
  • Approximating Physics and Movement
  • Steering Algorithms
  • Flocking Algorithms
  • Collision Detection Strategies
  • Autonomous Agents with Simple AI
  • Basic Obstacle Avoidance




Course Organization

Every day we'll have a warm-up exercise, some lecture/slides, and an exercise and/or quiz. There will be three mini-projects and a final project, along with two exams. Details below:

Attendance : 15%

Attendance to each class is worth 2 points, weighted to 0.5% of your final grade. 30 classes adds up to 15%.

  • 2 - show up: easy 0.5%
  • 1 - notify me of an absence before class starts: consolation 0.25%
  • 0 - no communication: 0.0%

In the event that I cancel class, I will provide ample notice, and you'll receive full attendence credit for that class.

Exercises : 15%

Each week we'll have an exercise. Each exercise is worth 2 points, weighted to 1% of your final grade. 15 exercises adds up to 15%.

  • 2 - high effort, complete: full 1.0%
  • 1 - low effort, incomplete: partial 0.5%
  • 0 - fail to turn it in: 0.0%

Quizzes : 10%

Most weeks we'll have a quiz (I have 11 planned). Each quiz is worth a varying amount of points, but each one is weighted to 0.909% of your final grade (yeah, the math is strange). Quizzes will be given through myCourses, and (usually) graded automatically. They are open book / open notes / open internet - closed communication. Quizzes have no time limit, but there will be a deadline.

Projects : 40%

Over the semester we'll have three mini-projects that put together the pieces we've learned in class. The course culminates in one final project where you show off what you've learned. Each project is weighted to 10% of your final grade.

  • P1 - Random Placement
  • P2 - Asteroids
  • P3 - Humans v Zombies
  • FP - TBD (based on where the class ends up)

Exams : 20%

Two exams: one mid-term, one final. Each exam is administered through myCourses, and weighted to 10% of your final grade. A portion of each is graded automatically, but the free-response answers require my eyes (so don't panic if you see a low mark at first!).




Grading and Late Work Policies

Attendence, Exercises, and Quizzes are reasonably clear-cut. If you have a dispute, come talk to me and we'll resolve it. Generally speaking, I do not accept late work. These items are worth few enough points, anyway.

Projects will be graded once after the due date. After receiving your grade, you will have one week to make improvements and resubmit for a better grade. If you did not submit your project on time, you still have until the end of the resubmit period to get something in, but you will be docked 10% of the project's value and lose the opportunity to resubmit. (An exception to this is the final project, in that resubmissions will only be allowed up until the labs close for the semester, in fairness to students who rely on the labs for work (this class isn't pay-to-win).)

If at all humanly possible, please take the Exams at the offered time. If you must miss an exam, we can schedule a make-up - but I'd really really prefer it not come to that.

Final grades are divided according to the percentage of weighted points earned over the semester. The letter grade breakdown is as follows:

Percentage Range Grade
93 - 100 A
90 - 92.99 A-
87 - 89.99 B+
83 - 86.99 B
80 - 82.99 B-
77 - 79.99 C+
73 - 76.99 C
70 - 72.99 C-
60 - 69.99 D
0 - 59.99 F




Tips for Success

Be present in class. This includes being physically in the room, as well as mentally attentive. Stay off Facebook / Steam / your phone during class time. Take notes. Ask questions. Be where you are when you're there!

When in doubt, ask me! I try to make myself super-available between slack, email, office hours. If you're struggling, if you need help, if something comes up, if you just want to say hello - send me a messgae!

Get Help Early and Often! As with many things, the material for this class builds on itself. If you struggle with the core concepts, and then wait a few weeks to ask for help, you'll have a harder time later on! Whereas if you get help as you need it, we can shore up things early and have a strong foundation to build on!

Read! The reading assignments are meant to help further your understanding of the software and course materail. Take notes as you read, and come to class with questions about anything that was unclear.

File Handling Work off of the D:/ drive. When possible, sit in the same seat every day. Back up everything (if you only have one copy, you actually have zero copies!). Use GitHub, too!




RIT and IGM Policies




Travel Exception

I work remote full-time for Forbes as a front-end web developer. This requires occassional business trips. In the event that I am out-of town for a class:

  1. All students will receive full attendance credit for that class.
  2. I will provide materials for class (slides, readings, exercises).
  3. I will attempt to host the class over Slack as a video call.




Change Notice

Lastly, these policies are subject to change. You can see the history in GitHub, and I'll notify you by email any time a change is to take place.

About

Syllabus for IGME-202-2175-02

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published