IFDM 250 – Fall 2017

Introduction to Game Development (IFDM 250)

Instructors: Nathan Fabian (ndfabian@gmail.com) Jonathan Whetzel (jon.whetzel@gmail.com)

Office Hours: Mesa del Sol PC Lab, Tuesdays 30 minutes before and after class.

TA: Allie Valdez (alvaldez@unm.edu)

Extra Office Hours: By appointment

Online Syllabus: tosos.com/ifdm-250-fall-2017

Summary: In tandem with innovations of modern computing machines, people have been devising ways to “play” with these systems through programming games on these devices. Video games have matured into an expressive medium rooted in using algorithms as the means for constructing interactive experiences. Building these games requires an understanding on principles of interactive design, computer science, and storytelling.

This course serves to provide fundamental knowledge on the process of video game development. Students will gain this hands-on experience on through altering existing games and making their own creations. We expect that students will learn: fundamentals of game engine architecture, programming of game design concepts / game mechanics, the business and career pathways for game development, and how to use industry development tools.

Prerequisites: There is no formal course prerequisite, however we expect students to have taken an introductory programming course (e.g., IFDM 105) or equivalent outside experience. We will use JavaScript as the language for all programming related assignments.

Course Materials: This course does not have a required textbook. All reference materials will be online or provided by the instructors.

We do encourage all students to download the following on their personal computers for assignments outside of class:

Students will have access to the IFDM PC labs at both Mesa del Sol and Hartung Hall to perform their work.

Class Structure: Class meets every Tuesday & Thursday from 3:00 pm – 4:15pm in the IFDM Mesa Del Sol PC Lab (Rm 210). Classes will vary between lectures, demonstrations, and open sessions to aid in completing lab assignments throughout the semester.

Assignments: Students will develop a 2D platforming adventure game (a modified version of Terraria) using templates provided by the instructors. Students will learn Unity’s tool base for performing necessary tasks (e.g., importing art assets, animation, lighting, user input, etc).

Students will also learn Unity’s script interface (e.g., Javascript) for programming mechanics and game features (e.g., event management, artificial intelligence, file I/O, etc). Students will have an opportunity to apply their skills and game design prowess through creating their own modifications to the game for their final project.

Students will also have periodic quizzes covering lecture topics. All quizzes, assignments, and the final project must be completed individually.

Turning-in assignments: Assignments will be submitted electronically to a repository owned by the instructor. Students must have their assignments checked into the repository by 11:59 pm of the due date. Any check-ins of your project following the due date will be considered late. The instructors will deduct ten (10) points per day after the due date.


  • Bi-weekly quizzes (200 points total, 50 points each)
  • Bi-weekly assignments (200 points each)
  • Final Project (200points)

Students may earn additional points by turning in all assignments through Git and other challenges offered within each of the assignments.

Grade Levels:

  • Level of Noob: 0 – 959 points(Incomplete)
  • Level of Youngling: > 960 points (GradeD)
  • Level of Tinker: > 1120 points (GradeC)
  • Level of Journeyman: > 1280 points (GradeB)
  • Level of Master > 1440 points (GradeA)
  • Level of Legend > 1600 points (Grade A++)

Attendance Policy: Regular and punctual attendance is required. UNM Pathfinder policies apply, which in part means instructor drops based on non-attendance are possible. This policy applies regardless of the grading option you have chosen.

Accommodation Statement: Accessibility Services (Mesa Vista Hall 2021, 277-3506) provides academic support to students who have disabilities. If you think you need alternative accessible formats for undertaking and completing coursework, you should contact this service right away to assure your needs are met in a timely manner. If you need local assistance in contacting Accessibility Services, see the Bachelor and Graduate Programs office.

Academic Integrity: The University of New Mexico believes that academic honesty is a foundation principle for personal and academic development. All University policies regarding academic honesty apply to this course. Academic dishonesty includes, but is not limited to, cheating or copying, plagiarism (claiming credit for the words or works of another from any type of source such as print,

Internet or electronic database, or failing to cite the source), fabricating information or citations, facilitating acts of academic dishonesty by others, having unauthorized possession of examinations, submitting work of another person or work previously used without informing the instructor, or tampering with the academic work of other students. The University’s full statement on academic honesty and the consequences for failure to comply is available in the college catalog and in the Pathfinder.

Title IX: In an effort to meet obligations under Title IX, UNM faculty, Teaching Assistants, Instructional Assistants, and Graduate Assistants are considered “responsible employees” by the Department of Education (see pg 15 – http://www2.ed.gov/about/offices/list/ocr/docs/qa-201404-title-ix.pdf). This designation requires that any report of gender discrimination which includes sexual harassment, sexual misconduct and sexual violence made to a faculty member, TA, IA, or GA must be reported to the Title IX Coordinator at the Office of Equal Opportunity (oeo.unm.edu). For more information on the campus policy regarding sexual misconduct, see: https://policy.unm.edu/university-policies/2000/2740.html

Cell Phones and Technology: As a matter of courtesy, please turn off cell phones, pagers, and other communication and entertainment devices prior to the beginning of class. Notify me in advance if you are monitoring an emergency, for which cell phone ringers should be switched to vibrate. If you are using the PC computers during lecture, please turn down the volume on any external speakers to not disturb others


Date Topic Notes
Aug 22 & 24 Introduction & History of Games, Unity Intro + Gitlab  History of Games, Notes
Assignment 1
Forest Scene Asset
File Server: \\ent153cfs01.colleges.ad.unm.edu\cfa2\Fabian
Aug 29 & 31 Game Design Game Design Notes
Assignment #1 due: Submitting first Unity Project
Sep 5 & 7 Programming and Unity Scripting Programming and Unity Scripting, Notes
Assignment 2
Quiz #1: Game Design
Sep 12 & 14 Game Engines Game Engines, Notes

Assignment #2 due: User controls and parallax background

Sep 19 & 21 2D Graphics 2D Graphics, Notes
Assignment 3
Platformer Tips
Quiz #2: Game Engines
Sep 26 & 28 Sprite Animation, State Machines Assignment #3 due: Character Animation
Oct 3 & 5 Collisions Assignment 4
UseEquipment Script
Cameras in SideScrollers
Sparks Prefab
Quiz #3: Programming
Oct 10 & 12 Catch up & Fall Break Universal Paperclips
Oct 17 & 19 Unity UI Programming UI Programming, Notes
Assignment #4 due: Block Destruction/Creation
Oct 24 & 26 Crafting Crafting and Data Structures, Notes
Assignment 5
Inventory UI Assets
Crafting Scripts
Oct 31 & Nov 2 Artificial Intelligence Assignment #5 due: UI and Crafting

Nov 7 & 9 Business of Games Assignment 6
Quiz #4: Data Structures
Nov 13 & 15 Advanced Topics Assignment #6 due: Enemy AI
Nov 21 & 23 Advanced Topics Final Project
AI Script
Nov 28 & 30 Advanced Topics Business Part 2, notes
Blizzard Student Programs
Dec 5 & 7 Final Project Work Week Final Project due


  1. No comments yet.
(will not be published)