ITP Spring 2024
Tuesdays 6:00pm - 8:30pm
3/12/2024 - 4/30/2024
370 Jay St Room 412

Professor: Elias (Elie) Zananiri
Contact Email: [email protected]
Office Hours: Tuesdays 5:00pm-6:00pm by appointment
Discord Server: It’s Shader Time @ ITP

Overview

A course where we will follow the computer rendering pipeline, and understand how shapes and images end up on our screens. The course will cover different steps of the process, but will focus primarily on shaders and how they can be used to program the graphics card and render out visuals. Topics will include meshing techniques and topology, the ins and outs of the different shading steps, and how graphics cards can be used for non-graphics computing.

The course will primarily use web technologies (p5.js and three.js) making it easy to view and share each other’s work.

Every week, we will have online lectures, work together to solve challenges, and have offline creative assignments. You will have to complete and publish an assignment every week.

At the end of the course, you should have a better understanding of how computer rendering works, and will be able to understand and write your very own shader programs!

This is the second time this class is taught. It is (and probably always will be) a work in progress, so please let me know if there is any topic you would like to cover!

Objectives

  • Gain understanding of the steps a computer takes to render graphics to the screen.
  • Learn about parallel programming and shading language concepts.
  • Write your own shader programs at various steps in the pipeline.
  • Build cool projects.

Schedule

Date Topic Assignment Recordings
Mar 12 Rendering
Transformations
Meshes
Assignment 1 OUT AUDIO
VIDEO
Mar 19
Mar 26 Shading Pipeline
Texture Mapping
Assignment 1 DUE
Assignment 2 OUT
AUDIO
VIDEO
Apr 2 Texture Coordinates
Intro to three.js
Assignment 2 DUE
Assignment 3 OUT
AUDIO
VIDEO
Apr 9 Image Compositing
Shaders in three.js
Assignment 3 DUE
Assignment 4 OUT
AUDIO
VIDEO
Apr 16 Custom Geometry
Post-Processing
Assignment 4 DUE
Assignment 5 OUT
AUDIO
VIDEO
Apr 23 GPU Computing Assignment 5 DUE
Assignment 6 OUT
AUDIO
VIDEO
Apr 30 Tool and Framework Explorations Assignment 6 DUE

Tools

Classes will be held in person and streamed on Zoom. Recordings will be made available shortly after on this page.

A Discord channel has been set up for this class. Click the invite link to join. All discussions, both during class and outside of class, should be held on Discord so that all the information is in one place.

Code examples for the class will be shared using CodeSandbox. This platform makes it easy to view code and output side-by-side, embed sketches in webpages, fork and remix templates, etc. While it is not required, students are strongly encouraged to use CodeSandbox (or a similar service) to share exercises and assignments.

Evaluation

You should be an active participant in the class.

  • Log in on time and pay attention.
  • Participate in discussions and ask questions.

There will be an assignment every week.

  • Assignments should be completed individually.
  • The objective of these is to make sure you understand what is covered in the class and get your hands dirty.
  • If you are familiar with the techniques explored, get out of your comfort zone!
  • Assignments will be based on an in-class exercise, and have an open-ended component. Creativity is encouraged.
  • Assignments have to be posted online before the start of the class on the day they are due.
  • You are encouraged to look at what the other students are creating.

The evaluation breakdown is as follows:

On-time Participation 30%
Assignments 70%

Pass/Fail means that anything below 80% is a fail.

I will notify you ahead of time if you are at risk of failing, and you can reach out to me at any time if you are concerned about your standing in the class.

Academic Integrity

Plagiarism is presenting someone else’s work as though it were your own. More specifically, plagiarism is to present as your own: A sequence of words quoted without quotation marks from another writer or a paraphrased passage from another writer’s work or facts, ideas or images composed by someone else.

The core of the educational experience at the Tisch School of the Arts is the creation of original academic and artistic work by students for the critical review of faculty members. It is therefore of the utmost importance that students at all times provide their instructors with an accurate sense of their current abilities and knowledge in order to receive appropriate constructive criticism and advice. Any attempt to evade that essential, transparent transaction between instructor and student through plagiarism or cheating is educationally self-defeating and a grave violation of Tisch School of the Arts community standards. For all the details on plagiarism, please refer to page 10 of the Tisch School of the Arts, Policies and Procedures Handbook, which can be found online at: http://students.tisch.nyu.edu/page/home.html

Accessibility

Please feel free to make suggestions to your instructor about ways in which this class could become more accessible to you. Academic accommodations are available for students with documented disabilities. Please contact the Moses Center for Students with Disabilities at 212 998-4980 for further information.

Counseling and Wellness

Your health and safety are a priority at NYU. If you experience any health or mental health issues during this course, we encourage you to utilize the support services of the 24/7 NYU Wellness Exchange 212-443-9999. Also, all students who may require an academic accommodation due to a qualified disability, physical or mental, please register with the Moses Center 212-998-4980. Please let your instructor know if you need help connecting to these resources.

Use of Electronic Devices

Laptops will be an essential part of the course and may be used in class during workshops and for taking notes in lecture. Laptops must be closed during class discussions and student presentations. Phone use in class is strictly prohibited unless directly related to a presentation of your own work or if you are asked to do so as part of the curriculum.

Title IX

Tisch School of the Arts to dedicated to providing its students with a learning environment that is rigorous, respectful, supportive and nurturing so that they can engage in the free exchange of ideas and commit themselves fully to the study of their discipline. To that end Tisch is committed to enforcing University policies prohibiting all forms of sexual misconduct as well as discrimination on the basis of sex and gender. Detailed information regarding these policies and the resources that are available to students through the Title IX office can be found by using the following link: Title IX at NYU.