{"id":8426,"date":"2015-03-29T18:46:30","date_gmt":"2015-03-29T18:46:30","guid":{"rendered":"https:\/\/voxelvid.com\/?p=8426"},"modified":"2025-11-19T18:40:12","modified_gmt":"2025-11-19T18:40:12","slug":"tu-wien-rendering-8-surface-normals","status":"publish","type":"post","link":"https:\/\/voxelvid.com\/?p=8426","title":{"rendered":"TU Wien Rendering #8 &#8211; Surface Normals"},"content":{"rendered":"<p>To be able to perform shading on an object, we have to compute surface normals. It&#8217;s not so tricky, one only has to be able to compute gradients. We take an intuitive example for an elliptic paraboloid. It is also important to know when we have self-intersecting rays &#8211; this means that the ray trivially intersects the object it is sitting on, and this case we&#8217;d usually like to discard when we search for the first intersected object.<\/p>\n<p>About the course:<br \/>\nThis course aims to give an overview of basic and state-of-the-art methods of rendering. Offline methods such as ray and path tracing, photon mapping and many other algorithms are introduced and various refinement are explained. <\/p>\n<p>The basics of the involved physics, such as geometric optics, surface and media interaction with light and camera models are outlined. <\/p>\n<p>The apparatus of Monte Carlo methods is introduced which is heavily used in several algorithms and its refinement in the form of stratified sampling and the Metropolis-Hastings method is explained. <\/p>\n<p>At the end of the course students should be familiar with common techniques in rendering and find their way around the current state-of-the-art of the field. Furthermore the exercises should deepen the attendees&#8217; understanding of the basic principles of light transport and enable them to write a simple rendering program themselves.<\/p>\n<p>These videos are the recordings of the lectures of 2015 at the Teschnische Universit\u00e4t Wien by K\u00e1roly Zsolnai and Thomas Auzinger<\/p>\n<p>Course website and slides \u2192 http:\/\/www.cg.tuwien.ac.at\/courses\/Rendering\/<br \/>\nSubscribe \u2192 http:\/\/www.youtube.com\/subscription_center?add_user=keeroyz<br \/>\nWeb \u2192 https:\/\/cg.tuwien.ac.at\/~zsolnai\/<br \/>\nTwitter \u2192 https:\/\/twitter.com\/karoly_zsolnai<\/p>\n","protected":false},"excerpt":{"rendered":"<p>To be able to perform shading on an object, we have to compute surface normals. It&#8217;s not so tricky, one only has to be able to compute gradients. We take an intuitive example for an elliptic paraboloid. It is also important to know when we have self-intersecting rays &#8211; this means that the ray trivially [&hellip;]<\/p>\n","protected":false},"author":0,"featured_media":8427,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"video","meta":{"yasr_overall_rating":0,"yasr_post_is_review":"","yasr_auto_insert_disabled":"","yasr_review_type":"","footnotes":""},"categories":[23],"tags":[2741,2739,2738,2737,2740,2742,2736],"class_list":["post-8426","post","type-post","status-publish","format-video","has-post-thumbnail","hentry","category-ai_tech","tag-elliptic-paraboloid","tag-global-illumination","tag-ray-tracing","tag-rendering","tag-surface-normals","tag-tu-wien-rendering-transformations","tag-vienna-university-of-technology-college-university","post_format-post-format-video"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>TU Wien Rendering #8 - Surface Normals - voxelvid<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/voxelvid.com\/?p=8426\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"TU Wien Rendering #8 - Surface Normals - voxelvid\" \/>\n<meta property=\"og:description\" content=\"To be able to perform shading on an object, we have to compute surface normals. It&#8217;s not so tricky, one only has to be able to compute gradients. We take an intuitive example for an elliptic paraboloid. It is also important to know when we have self-intersecting rays &#8211; this means that the ray trivially [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/voxelvid.com\/?p=8426\" \/>\n<meta property=\"og:site_name\" content=\"voxelvid\" \/>\n<meta property=\"article:published_time\" content=\"2015-03-29T18:46:30+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-11-19T18:40:12+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/voxelvid.com\/wp-content\/uploads\/2025\/11\/private-id-zicvtgqjqi-youtube-au.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1280\" \/>\n\t<meta property=\"og:image:height\" content=\"720\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/voxelvid.com\/?p=8426\",\"url\":\"https:\/\/voxelvid.com\/?p=8426\",\"name\":\"TU Wien Rendering #8 - Surface Normals - voxelvid\",\"isPartOf\":{\"@id\":\"https:\/\/voxelvid.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/voxelvid.com\/?p=8426#primaryimage\"},\"image\":{\"@id\":\"https:\/\/voxelvid.com\/?p=8426#primaryimage\"},\"thumbnailUrl\":\"https:\/\/voxelvid.com\/wp-content\/uploads\/2025\/11\/private-id-zicvtgqjqi-youtube-au.jpg\",\"datePublished\":\"2015-03-29T18:46:30+00:00\",\"dateModified\":\"2025-11-19T18:40:12+00:00\",\"author\":{\"@id\":\"\"},\"breadcrumb\":{\"@id\":\"https:\/\/voxelvid.com\/?p=8426#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/voxelvid.com\/?p=8426\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/voxelvid.com\/?p=8426#primaryimage\",\"url\":\"https:\/\/voxelvid.com\/wp-content\/uploads\/2025\/11\/private-id-zicvtgqjqi-youtube-au.jpg\",\"contentUrl\":\"https:\/\/voxelvid.com\/wp-content\/uploads\/2025\/11\/private-id-zicvtgqjqi-youtube-au.jpg\",\"width\":1280,\"height\":720},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/voxelvid.com\/?p=8426#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/voxelvid.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"TU Wien Rendering #8 &#8211; Surface Normals\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/voxelvid.com\/#website\",\"url\":\"https:\/\/voxelvid.com\/\",\"name\":\"voxelvid\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/voxelvid.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},false]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"TU Wien Rendering #8 - Surface Normals - voxelvid","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/voxelvid.com\/?p=8426","og_locale":"en_US","og_type":"article","og_title":"TU Wien Rendering #8 - Surface Normals - voxelvid","og_description":"To be able to perform shading on an object, we have to compute surface normals. It&#8217;s not so tricky, one only has to be able to compute gradients. We take an intuitive example for an elliptic paraboloid. It is also important to know when we have self-intersecting rays &#8211; this means that the ray trivially [&hellip;]","og_url":"https:\/\/voxelvid.com\/?p=8426","og_site_name":"voxelvid","article_published_time":"2015-03-29T18:46:30+00:00","article_modified_time":"2025-11-19T18:40:12+00:00","og_image":[{"width":1280,"height":720,"url":"https:\/\/voxelvid.com\/wp-content\/uploads\/2025\/11\/private-id-zicvtgqjqi-youtube-au.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/voxelvid.com\/?p=8426","url":"https:\/\/voxelvid.com\/?p=8426","name":"TU Wien Rendering #8 - Surface Normals - voxelvid","isPartOf":{"@id":"https:\/\/voxelvid.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/voxelvid.com\/?p=8426#primaryimage"},"image":{"@id":"https:\/\/voxelvid.com\/?p=8426#primaryimage"},"thumbnailUrl":"https:\/\/voxelvid.com\/wp-content\/uploads\/2025\/11\/private-id-zicvtgqjqi-youtube-au.jpg","datePublished":"2015-03-29T18:46:30+00:00","dateModified":"2025-11-19T18:40:12+00:00","author":{"@id":""},"breadcrumb":{"@id":"https:\/\/voxelvid.com\/?p=8426#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/voxelvid.com\/?p=8426"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/voxelvid.com\/?p=8426#primaryimage","url":"https:\/\/voxelvid.com\/wp-content\/uploads\/2025\/11\/private-id-zicvtgqjqi-youtube-au.jpg","contentUrl":"https:\/\/voxelvid.com\/wp-content\/uploads\/2025\/11\/private-id-zicvtgqjqi-youtube-au.jpg","width":1280,"height":720},{"@type":"BreadcrumbList","@id":"https:\/\/voxelvid.com\/?p=8426#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/voxelvid.com\/"},{"@type":"ListItem","position":2,"name":"TU Wien Rendering #8 &#8211; Surface Normals"}]},{"@type":"WebSite","@id":"https:\/\/voxelvid.com\/#website","url":"https:\/\/voxelvid.com\/","name":"voxelvid","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/voxelvid.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},false]}},"yasr_visitor_votes":{"stars_attributes":{"read_only":true,"span_bottom":"<div class='yasr-small-block-bold'><span class='yasr-visitor-votes-must-sign-in'>You must sign in to vote<\/span><\/div>"},"number_of_votes":0,"sum_votes":0},"cmb2":{"poster_feature_image":{"vid_m_player_background":"","vid_m_poster_image":"","vid_m_poster_image_id":""},"gif_feature_image":{"vid_m_gif_image":"","vid_m_gif_image_id":""},"video_movie_settings":{"vid_m_director":"","vid_m_actor":"","vid_m_imdb_ratings":"","vid_m_amazon_associates":"","vid_m_vid_tmdb_movie":"","vid_m_vid_tmdb_tv_shows":"","vid_m_vid_tmdb_thumb":""},"vid_ads_m_videoads_settings_post":{"vid_ads_m_video_ads":"","vid_ads_m_video_ads_type":"","vid_ads_m_group_google_ima":"","vid_ads_m_group_image":"","vid_ads_m_group_html5_video":"","vid_ads_m_group_html":"","vid_ads_m_vpaid_mode":"","vid_ads_m_vast_preroll":"","vid_ads_m_vast_postroll":"","vid_ads_m_vast_pauseroll":"","vid_ads_m_vast_midroll":"","vid_ads_m_group_dynamic":"","vid_ads_m_time_to_show_ads":"","vid_ads_m_time_skip_ads":"","vid_ads_m_time_to_hide_ads":""},"feature_image_settings":{"feature_image_position":""},"video_player_settings":{"single_video_style":"","video_player_position":"","vm_video_url_btn_choose":"","vm_video_url_btn_choose_id":"","vm_video_url":"https:\/\/www.youtube.com\/watch?v=Zi_CVTgqJqI","vm_video_ratio":"","vm_video_ratio_mobile":"","video_player_library":"","plyr_player":"","video_streaming":"","vm_video_shortcode":"","vm_video_timelapse":"","vm_media_subtitles":"","vm_media_sources":"","vid_vtt_preview":"","vid_vtt_preview_vtt_file":"","vid_vtt_preview_vtt_file_id":"","vid_vtt_preview_sprite_image":"","vid_vtt_preview_sprite_image_id":"","vid_auto_play":"","vid_preview_mode":"","vm_video_trailer_manl_url":"","vm_screenshot_preview":"","vid_tags":"","vid_p_sync_playlist":"","vid_c_sync_channel":"","get_post_format":"","multiple_links_structure":"","multi_links_title":"","original_video_title":"","multi_links_series":"","vm_video_multi_links":"","vm_duration":"10:06","vid_social_locker":"","vid_locker_mode":"","vid_social_locker_id":"","vid_social_email_locker_id":"","vid_social_signin_locker_id":"","sv_login_to_watch":"","vid_membership_action":"","vm_video_trailer_url":"","vid_download_type":"","vid_download_target":"","vid_woo_product":"","vid_download_mode":"","vid_download_mode_trailer":"","vm_media_download":"","user_rating":"","user_rating_position":"","user_rating_mode":"","user_rating_multi_sets":"","ads_above_single_player":""},"video_auto_fetch_settings":{"vm_video_fetch":""},"video_fake_views_likes":{"vm_fake_views":"","vm_fake_likes":"","vm_fake_dislikes":""},"gallery_settings":{"gallery_position":""},"quote_settings":{"quote_position":""},"post_options":{"main_layout":"","main_logo":"","main_logo_id":"","main_logo_retina":"","main_logo_retina_id":"","main_logo_mobile":"","main_logo_mobile_id":"","main_logo_mobile_retina":"","main_logo_mobile_retina_id":"","sticky_logo":"","sticky_logo_id":"","sticky_logo_retina":"","sticky_logo_retina_id":"","main_nav_layout":"","header_background":"","theme_sidebar":"","single_post_comment_type":"","theme_background":""}},"_links":{"self":[{"href":"https:\/\/voxelvid.com\/index.php?rest_route=\/wp\/v2\/posts\/8426","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/voxelvid.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/voxelvid.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"replies":[{"embeddable":true,"href":"https:\/\/voxelvid.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=8426"}],"version-history":[{"count":1,"href":"https:\/\/voxelvid.com\/index.php?rest_route=\/wp\/v2\/posts\/8426\/revisions"}],"predecessor-version":[{"id":8428,"href":"https:\/\/voxelvid.com\/index.php?rest_route=\/wp\/v2\/posts\/8426\/revisions\/8428"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/voxelvid.com\/index.php?rest_route=\/wp\/v2\/media\/8427"}],"wp:attachment":[{"href":"https:\/\/voxelvid.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=8426"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/voxelvid.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=8426"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/voxelvid.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=8426"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}