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?

Motivation / Course Contents        3

Credit Type (4 credits total)        4

Approximate Schedule / Grading        4

Assignments        4

Assignments / Lesson Plans / Lecture Slides (TBD)        4

Grading Scale        6

Prerequisites        6

Required Courses        6

Required Computational Resources        6

Workload        6

Graduate Student Advisory        7

Resources        7

Community        7

Health        7

Policies        8

Collaboration        8

Lecture Recording        8

Submission        8

Late Assignment Submission        9

Incorrect Submission Format Penalty        9

Penalty Stacking        9

Attendance / Late Arrival        9

Regrades / Grading Disputes        10

Office Hours        10

Extra Credit        10

Respect and Maturity        10

Cheating / Honor Code        11

Staff AutoBios        11

Austin Yarger        11

Discussion        12

Relation to EECS 494 (GameDev) and EECS 440 (XR)        12

I have Extra Time– How May I Prepare for the Course?        12

Play around with Blender        12

Play around with Unity        12

Obtain a Drawing Program        13

Join Related Organizations        13

Pre-Class Music Playlist        13

Motivation / Course Contents

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.

Credit Type (4 credits total)

The following course credit types apply to EECS 298. Petition or consult your department advising otherwise.

CSE : FlexTech

STAMPS : Elective

LSA : ???

TAUBMAN : ???

Approximate Schedule / Grading

Assignments

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)

(daily 20-minute model)

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%

Assignments / Lesson Plans / Lecture Slides (TBD)

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.

Grading Scale

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.

Prerequisites

Required Courses

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.

Required Computational Resources

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–

Workload

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-”.

Graduate Student Advisory

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.

Resources

A number of resources exist to improve one’s EECS 298 experience--

Community

Check the course canvas site for links to...

Health

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.

Policies

Collaboration

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 Recording

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.

Submission

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.

Late Assignment Submission

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.

Incorrect Submission Format Penalty

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.

Penalty Stacking

The “Late Assignment Submission” and “Incorrect Submission Format” penalties described above may stack to form a single 40% penalty.

Attendance / Late Arrival

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.

Regrades / Grading Disputes

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

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.

Extra Credit

EECS 298 (XR) provides extra credit opportunities in an effort to...

Respect and Maturity

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.

Cheating / Honor Code

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.

Staff AutoBios

Austin Yarger

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.

Discussion

Relation to EECS 494 (GameDev) and EECS 440 (XR)

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.

I have Extra Time– How May I Prepare for the Course?

Preparing before the semester begins is absolutely unnecessary… but if you find yourself with extra time, please consider the following–

Play around with Blender

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.

Play around with Unity

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.

Obtain a Drawing Program

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–

Join Related Organizations

Learning is easier with helpful, friendly communities to support you. Fortunately, the University of Michigan has many–

Pre-Class Music Playlist