Google Summer of Code (GSOC) 2013, Info and updates for all projects

I wanted to make a centralized thread with quick links to information/updates about the projects that were accepted for Blender’s Google Summer of Code (GSOC) 2013, so here it is. Check past the dividing line below for a list of all accepted projects with summaries (from

Official list from the wiki of all 2013 projects, there are links here (and below) to each user’s page which contain weekly updates:

Official GSOC 2013 page for Blender:

Alex Kuznetsov – VSE Improvements
Mentor: Peter Schlaile
Video Sequence Editor will be redesigned and upgraded to be closely integrated with the rest of Blender, while having cleaner API. Underlying structure will be significantly modified for cleaner and optimizable code.

Alexander Pinzon – Sketch Mesh Editing
Mentor: Howard Trickey
This project proposes to implement a method for mesh editing based on sketching lines defines by user and preserving the geometric details of the surface.
Based on paper:

Antonis Riakiotakis – Painting tool improvements
Mentor: Lukas Toenne
This proposal will target usability, feature and system design improvements for Blender’s paint system. Unification of symmetry and anchored and area stroke modes, curve driven strokes, sharpen tool, re-use code for Vertex/Weight paint, bucket fill, better texture selection, etc.

Daniel Stokes – BGE LOD and Bug Fixing/Polishing
Mentor: Joerg Mueller
This proposed project intends to be mostly a bug fixing and polishing project for the BGE, similar to some past Blender GSoC projects. It also contains a level of detail system to allow Game Engine artists to make more efficient use of system resources.

Gavin Howard – Cycles Deformation Motion Blur
Mentor: Stuart Broadfoot
My proposal is to add to the Cycles Render Engine the capability of blurring moving parts of deformed meshes, separate from the non-moving parts.

Ines Almeida – Improved OpenGL Debugging and Profiling
Mentor: Mitchel Stokes
This project aims to bring common profiling options to BGE, extending and improving the existing ones, namely: resources spent with user logic, rendering different objects and how much of the graphics card memory and capabilities is being used. Another objective of this project is to improve general Blender debugging using the new OpenGL debugging system.

Jason Wilkins – Viewport FX II
Mentor: Brecht van Lommel
This is a proposal to continue updating the way Blender draws to the screen. Blender relies on an older version of the OpenGL graphics library that is no longer fully supported by hardware providers. For this reason, when new generations of graphics cards are released, Blender would not fully benefit from the increases in capability and performance.

Joseph Mansfield – Expand and improve motion tracking
Mentor: Keir Mierle
I plan to focus on multicamera solving and reconstruction from footage with variable focal length. In addition, I will make various smaller improvements to the motion tracking workflow and interface.

Joshua Leung – Dependency Graph and Evaluation
Mentor: Ton Roosendaal
This project aims to investigate and resolve the various design issues involved in creating a new future-proof dependency graph system, and will result in an initial implementation of relevant core components.

Rafael Campos – Texturing for Volume Rendering in Cycles
Mentor: Brecht van Lommel
Volume Rendering can be divided in texturing and in shading – this project aims to implement part of the texturing required: creation of the 3D texture Voxel Data and integration of the OpenVDB library to use its grid representation for the volume data, all in the new rendering engine, Cycles.

Sergej Reich – Rigid Body Simulation Improvements
Mentor: Miika Hamalainen
Since version 2.66 blender has a rigid body simulation integrated with the animation system. While it works well for simple cases, there are several limitations that make more complicated setups difficult or even impossible. This projects aims at improving this system.

Sergey Sharybin – Threaded Object update for dependency graph
Mentor: Campbell Barton
Main goal of this project is to achieve Object animation updates to use multiple threads. For this project I could foresee changes in both dependency handling and the modifier stack code.

Thomas Dinges – Cycles: Add new shader nodes
Mentor: Stuart Broadfoot
I would like to add several new nodes to the shader nodes, to give the user more options and possibilities. Also, some shading features to give more control over shaders and the rendering. Most items are approved already and are listed on the Cycles ToDo list.

Vincent Akkermans – Towards a full User action replay system
Mentor: Ton Roosendaal
This proposed project aims to bring several enhancements to existing code with the objective of making full action replay possible in the future. More concretely it aims to finish the macro system, enhance RNA descriptions, fix operator re-execution by capturing contexts, and implement a user action log system for visualisation.

Walid Shouman - Mesh Custom-Data Transfer
Mentor: Campbell Barton
A generic system to move custom-data (such as UV, seams) between different mesh objects. Support for different methods to transfer mesh data will be added. Spacial – find close points on both meshes. Ray-casting – do ray-trace lookups to identify similar geometry. Topology – 2 meshes with the same or similar topology.

The student’s weekly reports can be found here: