No prerequisites. Course is designed primarily for freshmen at Johns Hopkins University.
Course Information
This course provides a practical, hands-on introduction to computer graphics, serving as an inspiring stepping stone towards the advanced 3 credit course in Computer Graphics. Central to this study is the fundamental concept of "the Laplacian" in computer graphics, an important topic, but not addressed in the 3-credit course. This technology has many practical applications, including computer game modeling, animation, and visual effects in movie production. The concept will be illuminated from both an algebraic and geometric perspective, accompanied by real-life examples and practical exercises. This course is designed to offer an expansive understanding of the role of the Laplacian in computer graphics, further enriched by hands-on opportunities coding with C++.
Course Goals
Specific outcomes for this course are that
Knowing what’s “the Laplacian” in the context of computer graphics.
Knowing the applications of “the Laplacian”.
Able to use CMake to compile and run the first C++ code on MacOS/Windows/Ubuntu.
Knowing how to install/compile/run popular libraries in computer graphics. (Libigl, Polyscope)
Rubric
No homework. No exam.
One “art contest” as the final presentation, mainly for fun.
Grading is P/F based on attendance and participation.
Attendance is mandatory. If you need to miss a class, please email me in advance (before class starts). You may have 1 excused absence, and 1 unexcused absence.
Learning Environment
Questions are welcomed during the lecture. Raise your hand any time when you have a question. Don’t worry about interrupting me.
Accessibility to a laptop or a PC might affect your learning progress in the hands-on part of this course. If your computer takes half an hour to turn on, that’s definitely affecting your progress. Don’t hesitate to contact me.
Don’t hesitate to reach out to me for help, if you find the environment not safe, due to discriminative/unfair behaviors/treatments in the classroom.
Don’t hesitate to reach out to me for help, if you find either your friend or yourself started to struggle in my class due to anxiety/stress/depression. (For instance, a 0 signifies you're in your dorm, tearfully cuddling your beloved teddy bear, while a 5 represents you've just earned a Fulbright scholarship. Should your situation rank lower than 3, don't hesitate to contact me.)
Don’t need to freak out if you find the contents below quite advanced.
Note: Our course has no prerequisites, focuses on intuitions, so we are doing lots of handwavings here and there when it comes to math. But it would be beneficial to point you to resources mathematically rigorous in case you are interested in digging further in the future. Lectures I mentioned are the most relevant. In general, the whole playlists are good contents. The books are rigorous to another level. Those are super well-written textbooks though. You might find them not that hard to follow.
Optional lectures
Shape Analysis, Justin Solomon, MIT
Lectures 12, Lecture14, Lecture14 Extra Content, Lecture 15 from this playlist: YouTube Playlist