# CS190I: Introduction to Offline Rendering

#### Fall 2020

##### Course Description

[Path tracing (Big Hero 6 by Disney)]

[Participating media (Novak et al.)]

[Offline Denoising (KPCN) (Bako et al.)]

[Disney Principled BRDF (Burley et al.)]
This course will teach you everything about offline rendering, so you will be able to write a fully functional industry-level renderer (such as Disney's Hyperion and Pixar's RenderMan) that produces stunning graphics. Topics in this course will cover the physics of light, the rendering equation, Monte Carlo integration, path tracing, physically-based reflectance models, participating media, other advanced light transport methods, production rendering approaches, and so on.

This course is the step stone if you want to find a job in the animation companies and/or if you want to apply for graduate school focusing on Computer Graphics research. Like CS180, our CS190I will not be very easy, but will be both interesting and rewarding. Graphics is AWESOME.

##### Course Comparison

Some of you (especially those who have taken CS180) may wonder what the differences are between CS180 and CS190I. The answer is that CS180 to CS190I is like Artificial Intelligence to Deep Learning. CS180 is an overview in Computer Graphics, but CS190I is focused on accurate and high-quality offline rendering within the framework of ray tracing. Prior knowledge in CS180 is PREFERRED but NOT STRICTLY REQUIRED.

The difference between CS291A and CS190I is much more clear. CS291A is focused on real-time (>30 FPS) approaches. They are smart, fast but less accurate, usually used in video games and VR/AR applications. CS190I cares more about correctness and quality, but does not exploit GPU computing and does not worry about slow performance, thus is more used in animations, etc.

##### Course Prerequisites

[Required] [CS 16/24/32] C++ Programming,

[Required] [CS 130A/B] Algorithm and Data Structure,

[Required] [MATH 3A/3B/6A] Multivariable Calculus,

[Required] [CS 40] Probability Theory,

[Optional] [PSTAT 5A, 120A/B/C, 160A/B] Probability Theory / Statistics / Stochastic Processes.

In each group marked as *Required*, you are OK as long as you have taken any one of them. Also, upper division CS students should have already satisfied these prerequisites. Otherwise (CS lower division, CS graduate division, CCS, etc.), equivalents or alternatives may be considered. Please contact the instructor.

##### Instructor

Lingqi Yan

Email: lingqi@cs.ucsb.edu

Office hour: TBD

##### Teaching Assistants

TBD

Sign up on Piazza for course announcements, discussion and Q/A!

##### Time and Locations

TBD

##### Details of the course logistics / syllabus are still in progress...