This is the course information for TNCG13 SFX - Tricks of the Trade 2011. It contains the schedule and information about the course. All material distributed during the course will be linked to from this page (or there will be a description on where to find it).
Course Overview
The course is organized into four mini series with invited lecturers from the movie industry, three short paper home exercises that will give you an understanding of current research, and a project where you can practice what you have studied throughout the course. The purpose of the lectures is to give a first experience view of the R&D as well as the production workflow at four different world leading special effects houses. The lecturers are:
The short bio of each lecturer can be found at the bottom of this page, or by clicking their names.
Jonas Unger is managing this course and will organize the examination tasks. The examination of this course is divided into two parts: a set of written short papers (3hp) and a group project (3hp).
Course Schedule
1. Fri Oct 28, 08:15-10:00, K1
Course introduction, Jonas Unger
Slides: Course overview (.pdf)
2. Tue Nov 1, 13:15-17:00, TP1
The history of SFX and Overview of the modern VFX pipeline, Fredrik Limsäter
Slides (.pdf) (76MB)
Extended History of SFX and VFX (.pdf) (2MB)

3. Fri Nov 4, 08:15-12:00, K1
Fluid simulation for visual effects and Volume rendering for visual effects,
Magnus Wrenninge
Slides: Fluid Simulation, Volume Rendering
Recommended reading:
Siggraph course: Production Volume Rendering (SIGGRAPH 2011), Wrenninge et al.
Book: Fluid Simulation for Computer Graphics, Robert Bridson
Siggraph Course: Fluid Simulation for Computer Animation Bridson and Fischer, (2006-2007)
Paper: Deep Shadow Maps, Lokovic and Veach, (2000)
4. Tue Nov 8, 13:15-15:00, TP41
Final project overview and discussion, Jonas Unger
Slides: Project overview (.pdf)
Recommended reading:
High Dynamic Range Imaging 2nd edition, Reinhard et al., ISBN: 978-0-12-374914-7
Chapter 11, Image Based Lighting
The art and science of digital compositing, Ron Brinkmann ISBN: 978-0-12-370638-6
Rendering Synthetic Objects into Real Scenes Paul Debevec (1998)
See below for further instructions and image data.
5. Deadline short paper 1: Fri Nov 11, 17.00.
6. Mon Nov 14, 08:15-10:00, TP1
Mixing the old with the new (focus on Image Based Lighting), Andrew Gardner
7. Tue Nov 15, 13:15-15:00, TP1
Production programming - Practical methods and philosophies of extensible software,
Andrew Gardner
8. Wed Nov 16, 10:15-12:00, TP1
Production Quality Fur - Balancing speed, look, and data, Andrew Gardner
9. Mon Nov 21, 08:15-10:00, TP1
Rigid body simulation in production, Rob Pieké
Recommended reading:
Intro to Rigid Bodies, Siggraph course
10. Tue Nov 22, 13:15-15:00, K2
Rigid body simulation in production, Rob Pieké
Recommended reading:
Collision detection:
Nonconvex Rigid Bodies with Stacking, Guendelman et al., (.pdf)
Physics Framework (shown at lecture) and libraries:
Imath (OpenEXR)
C++ Python language bindings

11. Wed Nov 23, 10:15-12:00, TP53
Project supervision, Jonas unger
12. Thu Nov 24, 17:15-21:00, K4504 booked for project work, Jonas Unger
13. Deadline short paper 2: Mon Nov 28, 17.00.
14. Tue Nov 29, 13:15-17:00, K4504 booked for project work, Jonas Unger
15. Wed Nov 30, 08:15-12:00, K4504 booked for project work, Jonas Unger
16. Thu Dec 1, 08:15-12:00, K4504 booked for project work, Jonas Unger
17. Tue Dec 6, 13:15-17:00, K4504 booked for project work, Jonas Unger
18. Deadline short paper 3: Thu Dec 22, 17.00.
19. Final project deadline, Jan. 20th 2012 at 17.00
20. Final project presentations, TBD
The examination of this course is divided into two parts: a set of written short papers (3hp) and a group project (3hp). The papers you have to write individually, and the project can be done either alone or in groups of 2-3 persons. The short papers will be graded (3-5), and are thus what sets your individual grade in the course. The group project is only pass or fail (U/G).
Below, you can find detailed instructions on the examination.
- Remember that deadlines are strictly enforced. Late submissions will NOT be accepted!
- Read the requirements carefully
Project 3hp (group or individual)
Your project task is to implement an effect of choice and render and composite this effect into a real scene. We will supply you with back-plates (video and stills), HDR light probe images and other information that may be required from a number of scenes that you may choose from.
Data, links and other information useful for your project can be found below.
The project will be structured in the following way:
1.) Select scene
We will capture back-plates (video and stills), HDR light probe images and other information that may be required from a number of scenes. You may choose any of the scenes that we have captured or capture the corresponding information from a scene of choice.
2.) Implementation and rendering
Select an effect to be rendered in this scene. The choice is fully up to you, but must be discussed with the lecturer. Example effects could be: an animated object, a stationary object with complex materials, a fluid simulation (water, smoke, etc.), atmospheric effects, image based lighting, etc. The only requirement is that it involves a significant amount of your own implementation. The implementation may be carried out in any programming or scripting language.
Please note that, if you wish, you may choose to implement a tool for extracting or reconstructing some information that is useful for the rendering or compositing (scene geometry, light sources, importance sampling, a rendering algorithm etc.) instead of implementing a directly visual effect.
3.) Render and composite
Render your visual effect in a renderer of choice and composite the result into the background material. Depending on you project it is not a hard requirement that you use the video back-plates.
4.) Write report
Please keep in mind that the project should be thought of as a programming exercise, but with a visually interesting result.
To pass the project, you have to implement the final project exercise and write a short report on the final project. The report shall describe what you have implemented, and how you rendered and composited your effect onto the background material. You have to decide and report to the teacher what your final project no later than Nov. 16 2011.
The final project including the report is due: January 20th 2012.

Project image data sets
Here you can find the data captured at the different locations. Each image data set contains two - three high resolution HDR panoramas captured at different locations, a large set of still images, as well as video sequences that you can use in the production of your final renderings. You can either download all images and videos from each location as (large) zip-files or browse individual frames, videos or panoramas in yor web browser.
Location: Visualiseringscenter C exterior
The images, HDR panoramas and videos were captured outside the Norrköping Visualization center C.
Browse image and video data here.
Download entire zip archive here (3.7GB).
Location: Campus basement corridor
The images, HDR panoramas and videos were captured in a corridor in the basement of Täppan at Campus Norrköping.
Browse image and video data here.
Download entire zip archive here (3.1GB).
Location: Campus hallway
The images, HDR panoramas and videos were captured outside lecture hall K4 at Campus Norrköping.
Browse image and video data here.
Download entire zip archive here (2.4GB).

The HDR panoramas are stored in OpenEXR format. For reading these images within your own code, you can use the development libraries found at the OpenEXR web page. Note that you will need both the ilmbase and openexr libraries found under download. A detailed overview of how these libraries work can be found under documentation.
The panoramic images are stored in the latitude longitude mapping of the sphere. Each pixel in the HDR panoramas can be thought of as the radiance contribution from a certain direction (solid angle). If you want to use these images in your own rendering code it is necessary to understand how to map from a direction in world coordinates to the corresponding pixel coordinate. This is briefly described in these files: Panorama mapping (.zip)
The zip archive contains a breif explanation of the mapping and Matlab code that maps from world directions (x,y,z) to image coordinates (u,v) and vice versa. There is also a file, test.m, that gives an overview of the code.
An HDR panorama does not contain any information on what parts of the image that represent light sources, and what parts that represent background. The large differences in intensity between the, often very small, light sources and the background leads to a significant sampling problem during rendering, especially if a stochastic rendering approach is used. This leads to long rendering times.
There are ways to improve the sampling efficiency during rendering. These are called importance sampling. An introduction to basic importance sampling techniques can be found in:
High Dynamic Range Imaging 2nd Edition, Reinhard et al., ISBN: 978-0-12-374914-7, Chapter 11, Image Based Lighting
Physically Based Rendering 2nd Edition, Pharr and Humphreys, ISBN: 978-0-12-375079-2, Chapters 12.5 and 14.6.5, Note that this book refers to this as infinite area lights.
Another option to improve rendering speed is to extract a set of light sources that approximate the HDR panorama. One approach, called A Median Cut Algorithm for Light Probe Sampling, for such an approximation that is straight forward to implement is described here.

Short papers 3hp (individual)
To pass this course you need to write a report covering three specific topics, related to Visual Effects in Shows (Motion Pictures). These topics will be covered during the lectures and in the reading material described below. For each topic, you are required to get yourself an overview of the field and select a sub-topic that you find interesting. You are then required to write a short paper that gives an overview of the sub-topic and describes one or two by you selected state-of-the-art techniques in detail. See below for the requirements.
An example of a well written short paper can be found here.
The purpose of the papers is for you to get an overview of computer graphics content creation and to further investigate the selected sub-topics in detail. The initial reading material is based on SIGGRAPH courses and sketches from 2008 - 2011. The courses give in-depth overviews of a subject, and the sketches and posters present new ideas or production techniques on a single page. The courses and sketches can be found at:
Siggraph 2011 talks, posters and courses
Siggraph 2010 posters and courses
Siggraph 2009 sketches and courses
Siggraph 2008 sketches and courses

The recommended reading will serve as a starting point for your investigations. However, you will also be required to seek information on your selected topics from other sources, and to read scientific papers. You are required to find, read and correctly reference at least two full length scientific paper about your selected sub-topics. Relevant references to scientific papers can be found from the course notes and sketches. The actual papers can be found from the ACM portal:
ACM digital library (works from within the university network.)
To make sure that there is enough time for the group project towards the end of the course there will be three deadlines, one for each topic.
Note that the listed sub-topics are examples and that you are encouraged to, based on your own interest, select other topics. You are not required to read all of the material listed under recommended reading. Instead, the idea is for you to get an overview of the material and select what is appropriate for your selected topics. However, you are encouraged to read other course notes, papers, sketches, books etc. than the ones listed.
-Each paper shall be at least 3 and no more than 5 pages formated in 11 or 12 pt font size.
-For each paper you select a sub-topic. The sub-topic is selected by you during your investigations.
-Each paper shall give an overview of the subject and also present an in-depth study of one or two state-of-the-art techniques the field.
-Apart from other references, you need to, for each paper, read and reference (correctly) at least 2 full length scientific papers on your selected sub-topic(s). Referencing is described below.
-The papers shall be sent to Jonas Unger by email. In the subject line you must write the following: [tncg13] Your Name, Topic. Replace "Your Name" with your actual name and "Topic" with the actual topic, i.e. Modeling and Animation, Rendering Techniques or Compositing.
Check your spelling and grammar more than once! If the report contains non-original texts you have copied from other sources without appropriate quotation it is disqualified and considered plagiarism, which will be reported. If you include quotes from other sources it is imperative you clearly specify these as quotes and from where they are taken. The report must also include a proper reference list for all the cited articles in the report. Carefully examine how citations and references are written in scientific publications and do the same in your report. Plese note that your report will be run through the "urkund" system to detect plagiarism.
Citations are given as [N] in the text, commonly as "Kronander et al. [1] present a method to ..."
In the list of references the citation is detailed:
1. Joel Kronander, Jonas Unger, Torsten Möller and Anders Ynnerman. Estimation and Modeling of Actual Numerical Errors in Volume Rendering. Computer Graphics Forum, Vol. 29, No. 3, June 2010
Guest Lecturers
Andrew Gardner
Andrew Gardner is a Senior Software Engineer at Tippett Studios, where he is responsible for the design, implementation, and maintenance of large scale studio tools. He recieved his bachelor's degree from the University of Wisconsin with a focus on retargeting motion capture data, moved to the University of Southern California's Institute for Creative Technologies to develop novel image-based lighting and facial animation techniques, and later found himself at Tweak Films as a Senior Technical Director working on specialized shots in films such as "Superman" and "Spiderman 3." His most recent work involves the practical implementation of fur, making image based lighting work for traditional lighters, development of the in-house matchmove camera solver, and the creation of an efficient visual effects pipeline to tie it all together.
Fredrik Limsäter
Fredrik Limsäter is co-owner and CTO at Fido in Stockholm. Fido is the largest and fastest growing VFX facility in Scandinavia with currently 40 artists employed. Recent work includes The Sorcerer's Apprentice and Kick-Ass among others. Before he joined Fido he worked as Senior Technical Director at Sony Pictures Imageworks on movies like I Am Legend, Surf's Up, Hancock and Cloudy with a Chance of Meatballs. His experience also includes Research & Development, at Cinesite in London he developed proprietary 3D software and tools for V for Vendetta, Harry Potter and the Goblet of Fire, Charlie and the Chocolate Factory, Hitchhikers Guide for the Galaxy and King Arthur among others. Fredriks holds a M.Sc. degree in Media Technology from Linköpings Universitet.
Magnus Wrenninge
Magnus Wrenninge is a Senior Technical Director at Sony Pictures Imageworks. He started his career in computer graphics as an R&D engineer at Digital Domain where he worked on fluid simulation and terrain rendering software. He is the original author of Imageworks' proprietary volumetrics system Svea and the open source Field3D library, and is also involved with fluid simulation R&D. He has worked as an Effects TD on films such as Spiderman 3, Alice In Wonderland and Green Lantern, and is currently Lead Technical Director on Oz, The Great and Powerful. He holds an M.Sc. in Media Technology from Linköping University.
Rob Pieké
Rob Pieké is the Research Lead at MPC in the heart of London. He dabbled in computer graphics programming in BASIC on the PCjr from an early age, and was completely hooked by the visual effects industry after seeing Jurassic Park in the cinema. After studying Computer Engineering at the University of Waterloo, Rob led a small VFX R&D team at C.O.R.E. Digital Pictures in Toronto from 2003-2007. He then moved to London to join MPC as a Senior R&D Artist on The Chronicles of Narnia: Prince Caspian, and has since developed a series of Character, FX, and Core technologies for a variety of Hollywood blockbuster films. Presently Rob is focused on investigating the state-of-the-art in computer graphics technologies, and trying to figure out what “the next big thing” for the visual effects industry will be.

  Valid XHTML 1.0 Transitional
Jonas Unger 2011