EECS 298 : 3D Technical Art and Animation (4 credits)
Open to Everyone (No Prereqs) - MW 1:30-3:30 - Work In Progress - Fall Semesters Only
Instructor : Austin Yarger (ayarger@umich.edu - ayarger.com) - Course Website : eecs298.com
At the intersection of technology and art lies the field of “Technical Art”. A sought-after and celebrated role in film studios, game teams, and firms in the creative space, “Tech Artists” combine artistic knowledge of 3D asset creation (Blender, top-left), with the technical and algorithmic skills that breathe life into characters and environments (Unity, top-right). In this course you will study it all at an introductory, low-poly level. From geometry, topology, and armatures, to animation, game engines, and 3D-printing, there are few topics more fulfilling and fun than 3D Art.
No background in programming or art is assumed, but please be ready for a formidable, educational challenge.
Seeking More GameDev / XR Courses?
From animated Hollywood blockbusters and beloved game franchises to laboratory visualizations, educational / training simulations, medical 3D printing and historical preservation – the fields of 3D art and animation have achieved impact far beyond their traditional and treasured roles in artistic expression. In time, they have also become extraordinarily technical, to the point where combining the two– 3D art and the technology needed to give it life– has become its very own essential role. That of the Technical Artist.
“EECS 298 : 3D Technical Art and Animation” is an open-to-everyone art and technology course that empowers students with the knowledge and experience to…
Course topics are planned to include (at an introductory level)–
Basic Computational Geometry, 3D asset formats and representations, 3D topology, asset optimization, basic animation techniques, armature design, 3D content authoring, UV mapping and textures, basic materials and lighting / shader logic, asset-to-engine pipelines, open source tools (Blender), 3D printing and photogrammetry, etc.
Students will conclude the course with a portfolio of 30+ low-poly models, along with a functional, shareable, 3D platforming game (think Super Mario 3D World) featuring student-made (and student-integrated) playable characters, environments, NPCs, and objects. The course staff will provide some of the programming– you produce the 3D assets and game engine integration that brings it all together.
The following course credit types apply to EECS 298. Petition or consult your department advising otherwise.
CSE : FlexTech | STAMPS : Elective | LSA : ??? | TAUBMAN : ??? |
The approximate value of EECS 298’s assignment groups are listed below. Each group is represented by a (often substantial) set of assignments (see further below).
Assignment | Est. Grading Weight |
Weekly Homework (1. Blender Basics) (2. Geometry and Materials) (3. Textures and UVs) (4. Armatures and Key Poses) (5. Animation) (6. Animation II) (7. 3D IRL) (8. Game Engines) (9. Custom Character) (10. Custom Environments) (11. Special Effects) Technical assignments exercising art, animation, and game engine integration concepts from lecture and discussion. Team size : 1, Duration : 1 week each | 60% |
Daily 20-Minute Model (you may skip up to 25 days) Individual, quick, nightly model “sketches” to exercise our understanding of Blender and associated tools while also developing a low-poly art style. Students may skip a specified number of days without any impact to their grade. Graded for completion only. Team size : 1, Duration : 20 minutes each | 20% |
Custom Game Project (custom game project) A final, from-the-ground-up project in which students construct all the art assets for a polished 3D platformer game. Students handle integration and configuration of the assets into a partially pre-built unity project. Games feature multiple player characters, a custom themed environment, obstacles, NPCs, and light narrative elements. Work-in-progress example game here (it’s multiplayer, so send to your friends as well!) Team size : 1, Duration : 2 weeks | 20% |
The course schedule is subject to industry interviews, field trips, and federal holidays that may be difficult to predict-- causing small variations from semester to semester.
A portion of a mock / testing EECS 298 schedule. Read top-to-bottom, green means an assignment is launching and red means it is due. Lecture plans, including links to slides, announcements, etc, are available on the left once the day arrives.
EECS 298 employs the standard grading scale below in converting scores to letter grades.
Final grade projections are released on Canvas in the final several weeks of the course. Students are granted a period of at least 24 hours to review and dispute final grades before their submission to Wolverine Access.
There are no prerequisites to taking EECS 298, though students should be familiar with basic computer usage, and have a somewhat light / moderate schedule of other courses, before taking this course. Students outside of the EECS department are welcome to participate in the course.
All assignments within this course may be completed using on-campus computing resources (for instance, CAEN laboratories). Make your experience smoother by acquiring the following personal equipment–
EECS 298 : 3D Technical Art and Animation is a challenging, time-intensive course that requires, and rewards, a significant investment of time.
Please reconsider taking EECS 298 : 3D Technical Art and Animation if you...
The course will target a median grade of “B+ to A-”.
Non-CSE Graduate Students seeking to take the class should fill out this form.
Please reach out to ayarger@umich.edu if you have a unique case.
A number of resources exist to improve one’s EECS 298 experience--
Check the course canvas site for links to...
Should you feel overwhelmed, or find yourself consistently spending more than 12 hours on assignments per week, please reach out to the primary instructor via ayarger@umich.edu-- We will be happy to discuss your progress, techniques for time-efficiency / assignment planning, and ways to get back on track.
Should you find yourself unable to make progress due to factors beyond your control (sickness, family emergency, etc), please reach out immediately for extension consideration.
All assignments in EECS 298 are to be done individually– there is no teamwork. High-level, non-assignment-specific discussion of course concepts is encouraged among peers, however.
Lecture recordings will be made available an hour or so after a given lecture concludes (check canvas for a link to the recording repository).
You may find lecture recordings from previous semesters, in addition to other gamedev content, on the course youtube channel.
All deliverables required of an assignment must be submitted to the appropriate course canvas site. The student is responsible for meeting every requirement of the assignment specification, and following submission procedures including deliverable naming, timeliness, etc.
Students are responsible for understanding the submission technology and processes used by canvas and the course autograder. Students will not be held responsible for submission difficulties outside of their control, such as widespread canvas or autograder server outages.
Assignments that are submitted late will be subject to the following policy, exhibited in the Python programming language (unless otherwise specified in the assignment specification)--
if hours_late < 0.0: return graded_assignment_score elif hours_late < 24.0: Return graded_assignment_score * 0.8 return 0.0 |
That is to say, assignments that are less than 24 hours late will receive a 20% penalty. Submissions later than this will not be accepted.
Note that Canvas’ assignment submission timestamp will be the ultimate authority of when something was turned in. Begin your upload early to account for networking or technology-related delays. Assignment extensions will only be granted for exceptional, extenuating circumstances beyond the student’s control.
Submitted assignments that do not meet the submission requirements outlined in the “Deliverables” section of its assignment specification will have a 20% “Incorrect Submission Format” penalty applied.
The “Late Assignment Submission” and “Incorrect Submission Format” penalties described above may stack to form a single 40% penalty.
There is no explicit penalty for truancy, though much is likely to be missed without timely attendance. Those who cannot attend lectures in-person may watch recordings made available several hours later.
Any released grade may be disputed, either at office hours or via email (ayarger@umich.edu), so long as the dispute is raised within one week of the released grade.
Grades will only be considered for adjustment in situations where the instructor’s grading process is “cut-short”, or rendered incomplete, due to the instructor failing to notice features / content of the deliverable, or being physically unable to due to a high difficulty or by demanding an unreasonably long time investment of the grading staff.
To clarify, the following are not valid reasons to request a regrade--
Office hours will be held weekly, in both in-person and virtual modes, with each instructional staff member contributing one hour per week. Students who cannot make the scheduled office hours may request an appointment through ayarger@umich.edu. Check the course Canvas site and calendar for office hour dates, times, and locations.
EECS 298 (XR) provides extra credit opportunities in an effort to...
EECS 298 is a highly collaborative course in which students engage often with one another and the course staff. Students will…
Students who fail to meet these expectations risk reduction of their participation score, or in egregious cases, referral to the Dean’s office.
Students must respect the following policies…
You are strongly encouraged to discuss assignment goals and technical / artistic concepts and techniques at a high-level. Refrain from discussing exact solutions. If in doubt, ask the course staff.
Failure to comply with these policies may result in a reduction of the assignment grade and / or referral to the honor council.
Austin is an international educator and Lecturer of Game Development in the University of Michigan’s College of Engineering, co-founder of the International Game Developers Association (Ann Arbor Chapter - https://igda2.org), and President of Arbor Interactive, a local game and software development firm (www.arborinteractive.com).
A long-time hobbyist game developer, Austin got his taste of professional game development in the summer of 2014 with an internship at Maxis (Electronic Arts) where he helped engineer 2015’s top selling computer game, The Sims 4. Austin has taught EECS 494 (eecs494.com) since 2017, EECS 440 (eecs440.com) since 2022, and EECS 498.007 (eecs498.com) since 2024. His students have achieved positions at prestigious game developers such as Microsoft’s 343 Industries, Volition, Zynga, Google, Gaudium, NetEase, Jackbox Games, and Amazon Game Studios.
In addition to stops at EA Mobile and Facebook, Austin served as President of the Wolverine Soft game development organization from 2011 – 2014. He co-founded the Ann Arbor chapter of the International Game Developers Association (www.igda2.org), curates the MichiGames Arcade Cabinet, mentors the Huron High School Game Development Team, consults with technology startups in downtown Ann Arbor, and organizes multi-university exhibitions with Eastern Michigan University and Lawrence Technological University. He acquired a Bachelors and Masters degree from the University of Michigan in 2015 and 2018, respectively. His research interests include non-gaming applications of game development tools, technologies, and techniques. Learn more at www.ayarger.com.
EECS 494 (GameDev) and EECS 440 (XR) are CSE capstone / MDE courses that introduce students to modern game development and extended reality development respectively. These courses, while intensive, place their focus on the production and design of full game products (being MDEs - “Major Design Experiences”). In contrast, EECS 298 (3D Technical Art and Animation) concerns itself with the art and integration side of game development. While topics such as game, level, and narrative design will arise on occasion, they are not a focus. |
Preparing before the semester begins is absolutely unnecessary… but if you find yourself with extra time, please consider the following–
Blender is the primary course software of EECS 298, allowing us to author, tweak, and experiment with 3D assets and animations. Blender’s user experience is notoriously tricky to learn, but following a few youtube tutorials might help you get started.
Unity is a wonderful, beginner-grade integrated game engine packing some serious power. This is the tech behind Genshin Impact, Overcooked, and most of the games you’ll find on steam and itch.io. We will only learn Unity at a basic level this semester (no coding), but it might not hurt to follow a few video tutorials for fun.
Eventually, our 3D adventures will bring us to the land of textures and UVs, in which we will need to make use of a 2D image editor / drawing program. If you don’t already have one, obtain and play around with one of the following–
Learning is easier with helpful, friendly communities to support you. Fortunately, the University of Michigan has many–