We may earn an affiliate commission when you visit our partners.
Take this course
Ravi Ramamoorthi

Today, computer graphics is a central part of our lives, in movies, games, computer-aided design, virtual simulators, visualization and even imaging products and cameras. This course teaches the basics of computer graphics rendering, that is of great recent relevance in industry, and that apply to all of these domains.

Read more

Today, computer graphics is a central part of our lives, in movies, games, computer-aided design, virtual simulators, visualization and even imaging products and cameras. This course teaches the basics of computer graphics rendering, that is of great recent relevance in industry, and that apply to all of these domains.

Students will learn to create very realistic computer-generated images of 3D scenes, with ray and path tracing. The course follows on from CSE 167, Foundations of computer graphics, to delve into the details of high-quality physically-based rendering, creating the most realistic and beautiful computer-generated images, culminating in a state-of-the-art path tracer with multiple importance sampling. The projects will be as follows (each counting for 25% of the grade, a passing score will be 60%)

What's inside

Learning objectives

  • Raytracing (homework 1)
  • Direct lighting (homework 2)
  • Path tracing (homework 3)
  • Importance sampling (homework 4)

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Builds upon prior knowledge of computer graphics to explore advanced rendering techniques, which is ideal for students seeking to specialize in this area
Teaches ray tracing and path tracing, which are essential skills for creating realistic and visually stunning graphics in movies and games
Focuses on physically-based rendering, a technique of great recent relevance in industry for creating realistic computer-generated images
Follows on from CSE 167, Foundations of computer graphics, so learners may need to take that course first or have equivalent experience
Culminates in a state-of-the-art path tracer with multiple importance sampling, which allows learners to explore cutting-edge rendering methods

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

In-depth rendering techniques with path tracing

According to students, this course offers a positive deep dive into advanced computer graphics rendering, particularly ray and path tracing. Many learners praise the hands-on projects, noting they are challenging but highly rewarding for solidifying understanding of theoretical concepts like importance sampling. However, some reviewers point out that the course is quite demanding and requires a strong foundation in prerequisite material like CSE 167. While the depth is appreciated, the difficulty level means it's best suited for those serious about mastering rendering pipelines.
Covers complex rendering concepts in depth.
"The course covers advanced topics like importance sampling and physically based rendering with impressive depth."
"Lectures provided a solid theoretical backing for the rendering techniques used in the projects."
"I appreciated the rigorous approach to understanding the 'why' behind path tracing algorithms."
Projects are practical and reinforce learning.
"The projects are where everything comes together; they are difficult but absolutely crucial for learning."
"Building the ray tracer and path tracer from scratch was the most valuable part of the course for me."
"Though the projects were tough, completing them gave me a tangible sense of accomplishment and real skills."
Need solid background for success.
"Make sure you are very comfortable with the concepts from CSE 167 or equivalent before starting this."
"If your linear algebra or C++ skills are rusty, you will struggle significantly with the assignments."
"The course assumes you have a strong foundation in computer graphics fundamentals."
Requires significant time and effort.
"This course is incredibly challenging and requires a large time commitment, especially the programming projects."
"The material moves fast and builds quickly; I spent many hours outside of lectures trying to keep up."
"Be prepared to dedicate a lot of time to the assignments, they are not trivial and push your skills."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Computer Graphics II: Rendering with these activities:
Review Linear Algebra Concepts
Strengthen your understanding of linear algebra, which is fundamental to 3D transformations and rendering calculations.
Browse courses on Linear Transformations
Show steps
  • Review vector and matrix operations.
  • Practice solving linear systems of equations.
  • Study transformations in 2D and 3D space.
Review Foundations of Computer Graphics
Refresh your knowledge of the foundational concepts covered in CSE 167 to better understand the advanced rendering techniques in this course.
Show steps
  • Review the graphics pipeline stages.
  • Study basic shading models like Phong shading.
  • Practice applying texture mapping techniques.
Implement Basic Ray-Object Intersections
Practice implementing ray-object intersection tests (e.g., ray-sphere, ray-triangle) to solidify your understanding of ray tracing fundamentals.
Show steps
  • Implement ray-sphere intersection.
  • Implement ray-triangle intersection.
  • Test your implementations thoroughly.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Follow Tutorials on Monte Carlo Integration
Learn about Monte Carlo integration techniques, which are essential for path tracing and importance sampling, by following online tutorials and examples.
Show steps
  • Find tutorials on Monte Carlo integration.
  • Implement basic Monte Carlo estimators.
  • Experiment with different sampling strategies.
Physically Based Rendering: From Theory to Implementation
Reference this book to gain a deeper understanding of physically based rendering principles and implementation techniques.
Show steps
  • Read relevant chapters on path tracing and importance sampling.
  • Study the code examples provided in the book.
Extend Your Path Tracer with a New Feature
Extend your path tracer by adding a new feature, such as support for participating media or a more advanced BRDF, to deepen your understanding of rendering techniques.
Show steps
  • Choose a feature to implement.
  • Research the implementation details.
  • Integrate the feature into your path tracer.
  • Test and debug your implementation.
Create a Rendering Showcase
Create a showcase of images rendered with your path tracer, highlighting different features and demonstrating your understanding of rendering principles.
Show steps
  • Render a variety of scenes.
  • Document the rendering settings used.
  • Present your work in a visually appealing format.

Career center

Learners who complete Computer Graphics II: Rendering will develop knowledge and skills that may be useful to these careers:
Rendering Engineer
As a Rendering Engineer, you will develop and optimize rendering techniques to bring virtual worlds to life. This course, with its focus on computer graphics rendering, offers a strong foundation for understanding the core principles behind creating realistic and visually stunning images. By learning ray tracing and path tracing, you'll gain insights into how light interacts with surfaces, a crucial aspect of the rendering process. The hands-on projects that culminate in a state-of-the-art path tracer with multiple importance sampling will provide invaluable experience that is directly applicable to the work of a Rendering Engineer.
Graphics Software Engineer
A Graphics Software Engineer works on the underlying technology that powers visual displays, and this course provides a deep understanding of rendering. The course will allow you to delve into high-quality rendering using techniques like ray tracing and path tracing, and to create realistic computer-generated images of 3D scenes. By mastering importance sampling, you can optimize rendering performance, ensuring smooth and efficient graphics processing. A Graphics Software Engineer will make use of homework assignments to sharpen skills.
Computer Graphics Programmer
A Computer Graphics Programmer is responsible for developing software that generates images. This course provides invaluable knowledge for this role. The course focuses on computer graphics rendering and teaches the basics applicable to many domains. By completing homework assignments, you will gain a strong grasp of ray tracing, direct lighting, path tracing, and importance sampling, all critical elements in the creation of visual content. A Computer Graphics Programmer will benefit from the hands-on experience this course provides.
Visual Effects Artist
Visual Effects Artists create stunning visual effects for films and television, and knowledge of computer graphics rendering is a must. This course can help you learn rendering techniques. The course focuses on creating realistic computer-generated images, using ray tracing and path tracing, which are fundamental to producing high-quality visual effects. A Visual Effects Artist will find the experience gained from this course invaluable in creating believable and captivating visual effects that enhance storytelling.
Technical Artist
Technical Artists bridge the gap between artists and programmers, and computer graphics rendering is a key area of expertise. This course teaches the fundamentals of rendering. The course focuses on creating realistic computer-generated images, using techniques like ray tracing and path tracing, which are essential for creating high-quality visuals in games and films. By understanding physically-based rendering, a Technical Artist can optimize the visual pipeline, ensuring that artistic vision is realized efficiently and effectively.
Game Developer
The role of a Game Developer can require expertise in a wide range of areas, including computer graphics. This course equips you with the skills needed to render realistic 3D environments in games. The course delves into high-quality, physically-based rendering, which is increasingly important for creating immersive gaming experiences. By mastering techniques like direct lighting and importance sampling, you can improve the visual fidelity of game environments. The projects involving ray tracing and path tracing will provide practical experience to help you become a skilled Game Developer.
Visualization Specialist
Visualization Specialists transform data into visual representations, and a strong understanding of computer graphics is invaluable. This course hones skills in creating visually appealing images. The course covers ray tracing and path tracing, helping you to render 3D scenes realistically. As a Visualization Specialist, the skills learned in this course will enable you to produce impactful visuals that effectively communicate insights from complex datasets, as well as to create images that are not only informative but also aesthetically pleasing.
Augmented Reality Developer
Augmented Reality Developers create applications that blend virtual elements with the real world, making realistic rendering crucial. This course introduces you to creating realistic computer-generated images. The course covers ray tracing and path tracing, which are essential for seamlessly integrating virtual objects into real-world scenes. As an Augmented Reality Developer, you can use the skills learned in this course to create immersive and believable AR experiences that enhance the user's perception of reality.
Virtual Reality Developer
Virtual Reality Developers create immersive experiences, and realistic rendering is key to a convincing VR environment. This course helps build a foundation for this role. The course covers techniques for creating very realistic computer-generated images of 3D scenes. Mastering ray tracing and path tracing, as taught in this course, allows a Virtual Reality Developer to enhance the sense of presence and realism in VR applications. The projects will help a Virtual Reality Developer create high-quality visuals.
Simulation Engineer
Simulation Engineers often rely on computer graphics to visualize complex data and models. This course, focusing on creating realistic computer-generated images, provides critical skills for this purpose. The course teaches techniques for high-quality, physically-based rendering, which is essential for accurate and informative visualizations. As a Simulation Engineer, you can use the skills learned in this course to create compelling and insightful representations of simulation results, ensuring that stakeholders can understand the information effectively.
Software Engineer
Software Engineers with knowledge of computer graphics rendering are highly sought after in various industries. This course offers a deep dive into rendering techniques. The course covers the creation of realistic computer-generated images of 3D scenes, using ray and path tracing, which are highly valuable skills for a Software Engineer. This course can help you differentiate yourself in a competitive job market. The course culminates in the creation of a state-of-the-art path tracer with multiple importance sampling.
Image Processing Engineer
Image Processing Engineers develop algorithms to manipulate and enhance images, often utilizing rendering techniques. This course may be useful, with its focus on computer graphics rendering. By learning ray tracing and path tracing, you can gain a deeper understanding of how light interacts with objects, which can inform the development of advanced image processing algorithms. The course provides an understanding of the underlying principles that drive image creation and manipulation, which is a great asset for an Image Processing Engineer.
3D Modeler
A 3D Modeler creates digital models of objects and environments. While this role is focused on the creation of 3D assets, understanding rendering principles enhances a modeler's ability to optimize their creations. This course may be useful. The course focuses on rendering, specifically, and teaches how to create realistic computer-generated images of 3D scenes. Understanding ray tracing and path tracing will allow a 3D Modeler to create assets that render efficiently and realistically, improving the overall quality of visual projects.
Machine Learning Engineer
Machine Learning Engineers are increasingly using computer graphics for generating training data and visualizing model outputs. This course may be useful for Machine Learning Engineers. The course focuses on creating realistic computer-generated images and can provide an understanding of image creation. By learning ray tracing and path tracing, you can generate synthetic data for training machine learning models or create visualizations that help interpret and explain model behavior. The course can expand a Machine Learning Engineer's toolkit.
Photographer
A Photographer captures images using different types of equipment. While photography is primarily about capturing real-world scenes, understanding computer graphics rendering may be useful for post-processing and enhancing images. This course may be useful. The course focuses on creating realistic computer-generated images with ray tracing and path tracing. A Photographer uses this understanding to manipulate light and shadow in digital images. A Photographer will learn the creative potential of digital tools.

Reading list

We've selected one books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Computer Graphics II: Rendering.
Is the bible of physically based rendering. It covers all aspects of rendering, from the theoretical foundations to practical implementation details. It is commonly used as a textbook at academic institutions and by industry professionals. This book adds significant depth to the course material and is an invaluable reference for anyone serious about computer graphics rendering.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser