Weekly Reports for year 2013

Week 70: 31th December - 6th January

Had two days off, so not so much done.

  • General development
    • Added 16 bit PNG write support
    • Finished and commited alpha premul pipeline cleanup, with some further fixes and optimizations
    • Added currently rendering tiles highlight
    • Made dynamic topology sculpt display proper mesh in textured shading mode
  • Bug-tracker work
    • Fix T33761 Infinite loop in space_image if tile size > image size
    • Fix T33753 Not selected surface objects don't update in view if shading is changed
    • Fix T33750 Error loading MHX file from MakeHuman
    • Fix T33674 2 Meta Strips occupies same place in timeline
    • Fix T33768 BGE segfaults in do_versions during libload
    • Fix T33767 Edge of objects rendered out jerky when using OpenGL Rendering

Fixed: 6, Patches 3, Closed: 8.

Week 71: 7th - 13th January

  • General development
    • Some fixes/improvements to motion tracking Python API
    • Alpha-over images on a black background when in RGB display mode (instead of showing straight alpha, which wasn't so much informative)
    • Changed buildbot rules and configuration, so now it compiles sm_13 CUDA kernel for 32bit platform (was running out of memory before)
    • Packed and generated images support for Cycles
    • Spent some time helping Campbell with FFmpeg patch
  • Bug-tracker work
    • Fix T33822 Compositor gets stuck if a sequencer window is also visible
    • Fix T33816 property not found: World.use_textures
    • Fix T33809 EXPOSURE: Appears inverted in Colormanagment Panel
    • Fix T33804 Blender crash removing Image in image node
    • Fix T33796 Bezier Curve issue with Full fill bevel after apply scale.
    • Fix T33735 sequencer crash when using rendered preview (.blend included)
    • Fix T33676 Texture/Project Paint "Clone" Permanently Greyed Out

Fixed: 7, Patches 5, Closed: 6.

Week 72: 13th - 20th January

  • General development
    • Further tweaks to our ffmpeg code to support libav from Debian Wheezy repoistory
    • Solved couple of threading issues related on compositor and mask editing
    • Fixed alpha issues when saving 16bit jpeg2k
  • Stuff i've worked this week, but not happened to trunk
    • Investigated and solved dramatic render time slowdown caused by image threading safe commit. Got a patch tested by original reported and reviewed by Brecht. Needs some minor tweaks and it'll be in trunk.
    • Worked on fixing issued of displacement baking -- mainly normalization when maximal distance is not set. Patch is now reviewed by Brecht and could go to trunk soon.
    • Looked into Qt's X11/ogl contexts stuff, it's not so much different as it seemed at first glance, needs some further investigation why we could fail disabling multisamples and Qt not.
  • Bug-tracker work
    • Fix T33916 2.65a regression: particles duplicating objects with halo - crash
    • Fix T33913 Sequencer proxy custom directory is not showing as relative path
    • Fix T33910 Wipe effect starts and stops to early with blur enabled.
    • Fix T33877 Pressure Sensitivity stop after opening User Preferences Window
  • Cycles
    • Heavily reduced compilation time on windows (10sec vs. approx 50min) for kernel.cpp. Took some time to figure out which part of code confuses msvc.
    • Added support of movie textures

Fixed: 4, Patches 7, Closed: 3.

Week 73: 21st - 27th January

  • General development
    • Finished unfinished stuff from last week
    • Fix memory leak in multires baker caused by threading issues
    • Fix bad face->grid index conversion for displacement mode of multires baker
    • Fix wrong normalization if multires baking happens to multiple images
  • Bug-tracker work
    • Fix T33975 Crash when reloading texture
    • Fix T33953 blender crash after few steps with .exr image in compositor
    • Fix T33951 Bad Scene - Baking get only margin corners on black
    • Fix T33916 2.65a regression: particles duplicating objects with halo - crash
    • Fix T33913 Sequencer proxy custom directory is not showing as relative path
    • Fix T33910 Wipe effect starts and stops to early with blur enabled.
    • Fix T33899 Maya keymap/custom keymap selection issues
    • Fix T33818 Baking doesn't work
  • Cycles
    • Fix threading issues of viewport rendering when using movies/generated images
    • Tiles highlight shall work fine with border render now
    • Currently looking into preview rendering, basis skeleton is implemented nicely scalable, but currently stuck to some issues caused by Py API. Would ask Campbell for help.

Fixed: 8, Patches 6, Closed: 10.

Week 74: 28st January - 3d February

  • General development
    • Most of the week was spend on checking bug tracker. Run into couple of nasty issues which took time to investigate. Working on fixes for them locally.
    • During weekend would continue working on solving shader node tree editing and previews in Cycles (need to switch Cycles to own Main)
    • Fixed geenrated/packed images and movies in Cycles preview.
  • Bug-tracker work
    • Fix T34009 multi user curves + deform modifier behavior
    • Fix T34004 crash when canceling ongoing render with scene strip
    • Fix T33996 Latest build crashes on win xp
    • Fix T33993 Crash on Blender startup (Vista x32)

Fixed: 4, Patches 2, Closed: 9.

Week 75: 4th - 10th February

Had one day off due to some kind of flu or cold :(

  • General development
    • Fixed issues with preview render caused by different layers names in preview.blend and preview_cycles.blend
    • Workaround deadlock in Carve, so now degenerated faces shouldn't deadlock but would give nice label that boolean operation couldn't be applied
    • Spent some time on re-configuring build environment for releases -- needed because sm_13 kernels shall be compiled in 64bit environment
    • Started collecting fixed bugs for release logs:
    • Hopefully made alpha do_versions() much less destructive for compositors. Ton, you know what i mean :)
  • Bug-tracker work
    • Some of them are nasty threading issues which took time to figure out
    • Fix T34165 Disappearing active marker label in timeline window
    • Fix T34156 Spec. and Alpha Intensity OpenGL issue
    • Fix T34145 'Save Image' incorrect file type.
    • Fix T34079 RGB and HSV values inconsistency
    • Fix T34041 rendered view + border
    • Fix T34040 Moving Normal Node with enabled Cycles Material Preview crashes
    • Partial fix T33935: Texture painting slow down with mouse, but not with tablet
    • Fix T34186 VSE: Incorrect movie output when scene strip is muted by keyframe

Fixed: 7, Patches 6, Closed: 10.

Week 76: 11th - 17th February

  • General development
    • Spent some time helping Brecht finding which changes to Cycles lead to issues with GPU. Fix for that changes were done by Brecht.
    • Fix for Sequencer layer not displaying properly when rendering animation with mixes float/byte buffers
    • Preview image render was missing image buffer release, leading to memleaks
    • Made maya keymad deselect everything in cases nothing was selected with LMB, took a bit to find out best way to implement this.
    • After scroll bar commit motrack dopesheet went out of sync vertically, fixed now
  • Bug-tracker work
    • Fix T34218 Release tarball doesn't include
    • Fix T34217 Maya keymap Preset not loading correctly
    • Fix T34212 no material icon for new materials (Blender Render)
    • Fix T34209 Texture preview in brush settings does not update
    • Fix T34205 Cycles: Zooming in rendered mode during update out of sync with intended zoom
    • Fix T34194 Scene render node with image textures inconsistant with Blender Internal
    • Final fix T33935 Texture painting slow down with mouse, but not with tablet
  • Motion tracking work
    • Implemented color background for motion tracking dopesheet illustration. It could be helpful to know which frames has got few tracks.
    • Returned back to automatic keyframe patch, almost implemented improvements i wanted, shall be finished soon.

Fixed: 7, Patches 7, Closed: 5.

Week 77: 18th - 24th February

  • General development
    • Spent 100 hours in IRC
    • Some release bizz like finishing Fixed Bugs wiki section, preparing tag and doing linux builds
    • Made movie distortion node respect distortion model to calculate area of interest
    • Fixed movie clips, which apparently always used straight alpha
    • Fixed do_versions for alpha cleanup which used to keep almost all EXR images from odler files as Straight alpha
  • Bug-tracker work
    • Fix T34359 2.66 crashes when using output node
    • Fix T34351 Displacement map Bake margin does not work
    • Fix T34299 Motion Tracking 20x Slower Under Standard Windows Build vs MinGW or Mac OS or Linux
    • Fix T34289 Wrong grid color on light background
    • Fix T34249 collapse edges crash blender with a specific mesh
  • Motion tracking work
    • Do have new bundle adjustment code working. Next steps: optimization and glueing to keyframe selection code. Not in tomato yet.

Fixed: 4, Patches 3, Closed: 3.

Week 78: 25th February - 3d March

  • General development
    • Update bundled version of minilzo, solves some memory issues reported by valgrind.
    • Update Carve library used by Blender, solves some bugs artists might have experienced.
    • Fixed sequencer crashes when copying scene strip to a clipboard, deleting scene and trying to paste strip from clipboard.
    • Draw a checker board as a background for animation player.
    • Spend hours in irc discussing alpha crap.
    • Changed a way how RGB images are saving from RGBA, now they'll be alpha-overed on black background.
    • Fix/workaround for newer FFmpeg 1.1.3 and MP3 decoder.
  • Bug-tracker work
    • Fix T34461 Inconsistent behavior of "Color Mix Node" and "Alpha Over Node"
    • Fix T34453 VSE: Subtract function does not work properly
    • Fix T34439 Strip modifier - Mask multiply failure
  • Motion tracking work
    • Updated Ceres library used by Blender. Needed for further feature development.
    • Merged cleanups and some small features from tomato branch. One of the features is colored background in tracking dopesheet which will indicate frames with bad tracks coverage.
    • Finally new Bundle Adjustment is in trunk. And we've got Keir checking in again, yay!
    • Removed old crappy SSBA and ldl libraries, with new bundler they're not needed.
    • Euclidean intersection is now also uses Ceres instead of old LM minimizer from libmv. Shall make intersection more accurate.
    • Added support of refining just K1 and K2 radial distortion coefficients, without affecting on other camera intrinsics.
    • Rewrite modal (tripod) solver from scratch and added bundle adjustment and camera intrinsics refirement to it. Makes solves for tripod motions a way (even two ways) more accurate and usable.
    • Fixed memory leak when trying to use multilayer EXR as movie clip. Nothing would be displayed on the screen yet, but at least memory wouldn't be lost. Adding full support of multilayer is on TODO.
    • Tried to finish keyframe selection, but it appeared a bit more of math research. Now i know what to do, just matter of coding all that math.
    • Started writing all the docs for new features and more detailed descriptions here.

Fixed: 3, Patches 15, Closed: 3.

Week 79: 4th - 10th March

  • General development
    • Border for compositor viewer node feature
  • Bug-tracker work
    • Fix T34574 Empty Movie Clip Editor Crash
    • Fix T34572 Issue with Backgound Display / Color Space Settings
    • Fix T34501 Painting on image editor with texture brush causes memory leaks in render module
    • Fix T34475 Weird noise bug with Texture nodes
  • Motion tracking work
    • Fix for incorrect subpixel precision of marker when using track offset
    • View All operator for motion tracking dopesheet
    • Some other smaller fixes
    • Mostly finished reconstruciton variance patch. Behaves better in half of cases, in others manual keyframe selection is still much better. Patch is in code-review would need to double-check on math.

Fixed: 4, Patches 4, Closed: 5.

Week 80: 11th - 17th March

  • General development
    • Spent some time solving issues with buildbot -- updating rules for windows slave mainly so now it's guaranteed all redistrtibutable dlls are included into archive
    • Speed up in displaying byte images on a screen

Reviewed and applied patches:

  • Patch #34204: [Render Animation] Fails with "Error: Specified sample_fmt is not supported" with ogg vorbis
  • Patch #34632: DPX/Cineon speed up
  • Patch #34569: Enable PNG Codec for video output
  • Bug-tracker work
    • Fix T34633 Merge First/Last crashes Blender
    • Fix T34616 Mirror modifier flips curve normals
    • Fix T34615 Crash. Translate Node crash Blender if input from GroupNode
    • Fix T34608 MultiLayer OpenEXR (from Maya) - passes lost in Compositor Image Node
    • Fix T34599 Mask nodes stop working if output is later piped through HSV node
    • Fix T34589 Strange behavior with projection painting and 16bit PNGSs
    • Fix T34511 Invalid Audio/Video codec combination produces hung filehandle
  • Compositor
    • Some fixes for border in compositor, made it even more faster
    • Fix for changing image ID datablock from browser in Image node didn't change output sockets
    • Fix for crash in special cases when mixing translate node with other (reported in IRC)
    • Print compositor execution statistics when in background mode
    • Disable viewer nodes and previews when rendering in background mode, they're not needed for render result and only wasted time
    • Border rendering now works for all scenes used in compositor (before only active scene will use border)
    • Also worked on smarter composite output, which is currently slows down previews a lot. There's ongoing discussion in ML
  • Motion tracking work
    • Skip doing frame undistortion if it's not needed for proxies.
    • Multi-threaded frame calculation for movie clip proxies

Fixed: 7, Patches 11, Closed: 4.

Week 81: 18th - 24th March

  • General development
    • Reviewed blender-side of freestyle branch (didn't check on /source/blender/freestyle yet :()
    • Added alpha output to movie clip compositor node
    • Use checker backdrop for footage with alpha channel in clip editor
    • Fix regression in viewport background image transparency (cuased by glaDrawPixelsAuto)
    • Implemented movie clip prefetching in Clip Editor.
  • Bug-tracker work
    • Fix T34720: Sculpt mode T panel has no texture preview
    • Fix T34707: Blender crash on enabling of boolean modifier
    • Fix T34689: Multilayer EXRs don't load correctly if one layer is named and the other is not
    • Fix T34672: Image sampling line didn't use color management for byte buffers
  • Compositor
    • When using border rendering, use the same border for compositor
    • Finished and commited changed to how/when compositor node is calculating
    • Render border + crop will be handled correct in compositor now

Fixed: 4, Patches 7, Closed: 5.

Week 82: 25th - 31th March

  • General development
    • Avoid loading frames below sequence range for movie clips (before this for every frame requested for a frame before sequence starts first frame used to be loaded, polluting memory with the same image).
    • Prefetching in clip editor now first prefetch frames after current frame, then prefetcs frames before current frame.
    • Spent some time investigating crash related on noewtrees in compositor (final fix by Lukas) and playback speed (ended up an audaspace thing, re-assigned to Joerg).
    • Also spent some time updating opencollada for release build environment.
    • Investigated on GLSL display transformation for clip editor.
  • Bug-tracker work
    • Fix T34785 only one curve cap is visible while backface culling is enabled
    • Fix T34782 Video Editor - Substract after transform fails
    • Fix T34779 Channels disappear from multilayer exr sequence
    • Fix T34773 smooth brush used on a shape key messes up the topology
    • Fix T33518 Jack sync doesn't work in 2.64, 2.64 or 2.65 stable versions

Fixed: 5, Closed: 11.

Week 83: 1st - 7th April

  • General development
    • Most of the week was spent on GLSL display things: various fixes, improvements, and so on.
    • Draw checker backdrop for sequencer when in RGBA mode
    • Box and Ellipse mask nodes will now output shape even if nothing is attached to input
  • Bug-tracker
    • Fix T34877 The render status feedback (progress bar) does not take into account specific Renderlayer samples
    • Fix T34872 Every images are displayed as black in UV/image editor
    • Fix T34855 Crash on change Pass (from Combined to Depth)
    • Fix T34854 Compositing: input from primary renderlayer is replaced with another renderlayer
    • Fix T34819 Background image gets pixelated when zooming in
    • Fix T34813 smooth brush used on a shape key messes up the topology - part2
  • Color management
    • Fixed regression caused by optimizations in IMB_display_buffer_acquire -- crash happened when buffer doesn't have 4 channels.
    • Made image editor, compositor backdrop and sequencer use GLSL for display transform.
    • Just a bunch of various fixes for GLSL display transform.
  • Motion tracking
    • Prefetch is now an operator instead of automatic prefetching. (Filling the whole memory with frames is not always desired behavior). Still need to update release notes.
    • Changes to cache invalidation policy for movie clips:
      • When changing clip in clip editor, remove all frames from it's cache to free memory for new clip.
      • When changing proxy render settings, free cache as well.
    • Jump to start/end of tracked segment works in Mask editing mode now.
    • Also updated ceres from upstream for some performance boost, and libmv from own branch for some smaller fixes.

Fixed: 6, Closed: 3.

Week 84: 8th - 14th April

  • General development
    • Two days spent in Russian Academy of Science. As profig got some founding for my science work.
    • Fix eternal compo refresh when having image editor with mask opened
    • Fixes for sequencer effects:
      • Add and subtract effects will now affect on only RGB channels, and alpha of first input is used as an alpha for the result. Also solved creepyness with straight->premul->straight conversion in byte versions of add/subtract.
      • Solved issue with multiply modifier, which lead to white*white not being white (was off by 1.0/255) due to wrong optimization of division by 255 with shr by 8.
    • Use SWS_FULL_CHR_H_INT for SWS context for more accurate conversion
    • Fix for material icon rendering with cycles
    • Fix issue with bright frames appearing in clip editor when compositor is open.
    • Image draw method option (supports AUTO, GLSL, 2D Textures and DrawPixels)
  • Bug-tracker
    • Fix T34938 Not freeing dynstr_cstring memory blocks when setting shape keys
    • Fix T34872 Every images are displayed as black in UV/image editor
    • Fix T34811 VSE - Wrong result of add/subtract effects
  • Motion tracking
    • Fixed wrong bilinear sampling in motion tracker
    • Camera stabilization fixes and improvements
      • Nearest interpolation was always used when there's no rotation for stabilization. Was a failure of optimization heuristic
      • Made 2d stabilization frame acquiring threaded. This function is only used for display and sequencer which will only benefit of threads here
      • Fixed bug introduced in r48749 which lead to re-making stable frame on every redraw
      • 2D stabilization default filter to bilinear
    • Bundle adjustment improvements:
      • Get rid of rotation matrix parameterization, use angle-axis instead. Also joined rotation and translation into a single parameter block. This made minimization go significantly faster, like 1.3x times in average.
      • Fix first camera when bundling. This is to address orientation ambiguity. Reconstruction result could still vary in size, but that's another issue to be addressed later
    • Fix for Setup Tracking Scene operator:
      • Ported to new node add operator
      • Alpha mode shall be set to Transparent
      • Made it so Cycles are also supported by this operator
      • Hide preview for nodes created with Setup Tracking Scene

Fixed: 3, Closed: 4.

Week 85: 15th - 21th April

  • General development
    • Fix compilation with current FFmpeg trunk
    • Also fix compilation with FFmpeg starting from version 0.7
    • Fixed an issue when adding several movie strips fails second time in sequencer
    • Make freestyle use local Main for temporary objects
    • Enable numpy install for buildbot
    • Also helped Ton fixing current mask calculation for an ARegions (to fix crash when making compo/logic editors tiny height)
  • Bug-tracker
    • Fix T34988 Blender References Deleted FFmpeg Constant
    • Fix T34985 Crash with Motion tracker (Tripod Motion)
    • Fix T34972 Blender crashes when Force Field-> Curve Guide is created
    • Fix T34967 Painting using Erase Alpha causes issues in the image editor window IF not using sRGB colourspace.
    • Fix T34897 Select edge loop shortcut not working in Maya preset

Fixed: 5, Closed: 5.

Week 86: 22th - 28th April

  • General development
    • Finished numpy integration into linux build environment
    • Worked on release notes (mainly Fixed Bugs section)
    • Added test files for motion tracker into our svn
    • Run all the regression files form our svn. Two of the files gave issues, but this already happens with couple of previous releases, will investigate further
  • Bug-tracker
    • Fix T35082 Blender Freeze On win7 when change smoke domain setting.
    • Fix T35074 Image editor shows color banding on rendered images (even with dither set to 2.0)
    • Fix T35039 two other issues with curve caps
    • Fix T35037 Compositor: MultilayerEXR + undo loses image. Crash when selecting in Image Editor
    • Fix T34350 Maya Keyboard map preset problems
  • Motion tracking
    • Added footage information panel, so you could see footage dimension, frame within sequence and current sequence file name in this panel
    • Fix for BA possible move bundles behind the camera
    • Reduced scale ambiguity on scene solving (tomato only)
    • Initial commit of reconstruction variance criteria into tomato branch (plus further improvements)
    • Made bundles in 3D viewport have constant size (tomato only)
    • Added a button to apply scale on scene solution (tomato only)

Fixed: 6, Closed: 4.

Week 87: 29th April - 5th May

  • General development
    • Fix flattened/clamped colors in sequencer
    • Fix for bad allocation vars used for some spaces, making GLSL display go bad
    • Fix for non-linear images displaying on a raw display (unwanted linearization happened in this case)
    • Changed image draw option again. Now it's either 2D Tex, GLSL or DrawPixels. Default is 2D Tex.
    • Apart from spending time on replying in bug tracker and updating release notes, started working on improving speed of keyframe selection in tomato. Don't have anything specific to be mentioned yet -- mostly was investigating slowest parts of code and possible ways speeding them up.
  • Bug-tracker
    • Fix T35182 VSE - speed control Trim duration (soft) end reset to 0
    • Fix T35177 Press P Crashes Blender After Fracture of Cube
    • Fix T35144 Image editor is not updateing if in new window
    • Fix T35139 Output panel options are not taken into account when you safe your render (JPG)
    • Fix T35132 GPU can't be activated

Fixed: 5, Closed: 4.

Week 88: 6th - 12th May

  • General development
    • Added mask modifier for sequences (affects on frame alpha for easier alpha-overing objects in sequencer)
    • Updated and added some regressions tests in svn
    • Spent some time on running regression tests and building linux 2.67 release
  • Bug-tracker
    • Fix T35252 Crash with the node placed partially behind the screen
    • Fix T35175 "error reading screen ... file corrupt" in the system console
    • Fix T35093 New Basis shape key doesn't act as Basis
    • Fix T35122 Blenderplayer crashes when loading level
  • Motion tracking
    • Fix missing angle zerolization when 2d stabilization is disabled
    • Fix for crash when using 2D stabilization for float movie clips
    • Cleaned up patches in tomato a bit and merged projects from there (features were implemented some time ago, needed to merge them over new trunk):
      • Reconstructed scene scale ambiguity improvement
      • Made bundles in 3D viewport have constant size
      • Setting tracking object scale shall not depend on active object
      • Added a button to apply scale on scene solution
      • Add check for points behind camera in euclidan BA cost functor
    • Remove check for zero focal length in BA cost functor, it's not needed and now functor shall be few CPU ticks faster
    • Set scene frames operator for clip editor.
    • Optimized keyframe selection, which is reached by switching pseudoInverse from SVD to eigensolver
    • Refine markers position operator

Fixed: 4, Closed: 3.

Week 89: 13th - 19th May

  • General development
    • Speedup for rendered viewport for blender internal by using threaded color space conversion or even glsl display (depending on Image Draw Method option in the preferences)
    • Added RNA access to mask spline's points
  • Bug-tracker
    • Fix T35393 Sculpt Shortcuts are bananas.
    • Fix T35369 Crop node or FileOutput node bug.
    • Fix T35364 sculpting - D shortcut inconsistency
    • Fix T35362 using dyntopo gives wrong render results
    • Fix T35354 dyntopo - materials and UI display issues
    • Fix T35330 Map-Value crash
    • Fix T35313 object and ID anti-aliased masks get messed up when using border render + crop
  • Motion tracking
    • Fix for keyed marker search not happening correct in some cases
    • Bunch of code cleanup, no functional changes but adding new features are not so much annoying now. Plus some smaller optimizations
    • Apply scale on scene reconstruction when applying scale on camera
    • Worked on a feature to use the tracker for masks (using motion tracker to animate the mask as an alternative to manual animation). Do have initial patch ready, hope to commit it to tomato soon.

Fixed: 7, Closed: 2.

Week 90: 20th - 26th May

  • General development
    • Some further fixes for brush selection operator
    • Masks API improvements: added functions to add/remove splines and points
    • Fixed stack corruption happening in seatch_cb in special cases
    • Finished (at current stage) masks tracking and commited to tomato branch. Required some post-commit fixes
    • Actually, lots of time was spent in bug tracker, trying to reproduce bugs, answering people and so..
  • Bug-tracker
    • Fix T35493 Blender crash when rendering in terminal mode
    • Fix T35492 Blender crashes when Alt+Rightclick an edge (edge loop selecting)
    • Fix T35476 Disable all layers shows error and does nothing
    • Fix T35461 Marker gets initialized to arbitrary position
    • Fix T35458 SIGSEGV ( crash ) in imagewraposa()
    • Fix T35443 Animation player doesn't play some movie formats
    • Fix T35313 object and ID anti-aliased masks get messed up when using border render + crop
    • Fix T35232 Marker right-click misbehavior on adding

Fixed: 8, Closed: 6.

Week 91: 27th May - 2th June

  • General development
    • Spent quite a while fixing bools, needed to ensure they've got the same size in both C and C++ and no integer overflow happens in cases like 'bool foo = BitField & BitFlag'
    • Merged automatic keyframe selection for motrack from tomato into trunk
    • Reviewed and applied patch (with own modifications) #35464: Marker placement for motion tracker by clicking on a desired location
    • Cleaned up files which are not actually used by motrack but which were giving compilation errors with msvc2012
    • Added a backtrace for unfreed memory blocks, enabled by defining DEBUG_BACKTRACE in mallocn.h
    • Also spent some time on maintaining buildbot (enabling multivew branch there, started (but not finished..) updating openexr for linux).
  • Bug-tracker
    • Fix T35587 Cycles: image movie to single image crashing
    • Fix T35581 Crash when using Track Refine
    • Fix T35567 Shift+LMB doesn't toggle selection when using the Maya preset
    • Fix T35553 Compositor broken (Backdrop & Preview)
    • Fix T35547 incomplete tooltips in node editor
    • Fix T35515 Old sculpt data available to mesh after deleting multires modifier
    • Fix T35513 Multires modifier normal corruption on apply base
    • Fix T35511 2.67a makes some blend crash. (conversion problems?)
    • Fix T35504 Blender crashes on separating curves with different Evaluation Time / keyframes
    • Fix T35497 rendering preview range gives wrong duration
    • Fix T35480 object without material crash blender when starting game engine
    • Fix T35473 Using Redo panel in View3D after Grease Pencil action moves GP layer to that area
    • Fix T35374 Region overlap + bugs

Fixed: 13, Closed: 7.

Week 92: 3th - 9th June

  • General development
    • Was mostly afk this week due to science conference in Ufa. My professor was pretty much fine with my presentation tho.
    • Worked on an operator to remove unneeded shapekeys from masks. The idea is to use this operator to cleanup shapekeys after mask tracking. Commited it to tomato branch.
  • Bug-tracker
    • Fix T35638 Object disappears when rotating after using the simplify brush
    • Fix T35611 'Quick Edit' in Texture mode + RGBA16bit gives bright results
    • Fix T35610 Multiresolution Modifier Complains About Sculpt Mode
    • Fix T35599 blender segmentation faults when I try to pick a .EXR file for an input movie node
    • Fix T35378 Shape Key Animation Data still linked when creating full copy of scene

Fixed: 5, Closed: 2.

Week 93: 10th - 16th June

  • General development
    • Fixed some issues with depsgraph and masks (doing DAG_id_tag_update for mask didn't evaluate mask).
    • Fix for distortion of sculpted data happens when flipping mesh normals
    • Use OpenMP threads in bm_loop_interp_mdisps (gives quite of few of speed when editing topology of objects with multires modifier)
    • Fixed crash of node api when trying to add socket of non-existing type
  • Bug-tracker
    • Fix T35704 Duplication and Simplify > Crash
    • Fix T35683 Addon working fine in console. But crashed when click GUI button.
    • Fix T35678 Duplicating an object with Displace modifier does not increase the reference count of the texture
    • Fix T35661 Maya key config - select operations are skipped by "undo"
    • Fix T35658 OpenEXR (from Maya) - missing passes
    • Fix T35638 Object disappears when rotating after using the simplify brush
    • Fix T35611 'Quick Edit' in Texture mode + RGBA16bit gives bright results
  • Motion Tracking
    • Cleanup of 2D stabilization code to make it more readable
    • Fix crash in movie clip node when ibuf fails to load (regression from a bugfix)
    • Added option to Track Position node to output absolute track position at given frame
    • Worked on an addon which simplifies working with 2D stabilization in compositor (addon)

Fixed: 7, Closed: 1.

Week 94: 23th - 29th September

First week of BF report after GSoC work.

  • General development
    • Add font licenses to installation files (see discussion in ML)
    • Elbeem: Use pragma directive instead of overriding number of omp threads
    • Elbeem: fix memory leak and add guarded allocator directives
    • Some testbuild bizz: finishing own documentation, filling it Fixed Bugs sections, doing builds..
    • Spent quite enough of time T36796 without luck figuring out what's going wrong yet :(
  • Bug-tracker
    • Fix T36824: Shrinkwrap modifier 'Subsurf Levels' doesn't seem to do anything
  • Motion Tracking
    • Fix potential usage of wrong track when setting axis for scene orientation.
    • Worked on a patch for more accurate homography estimation to fix jittering of plane motion.

Fixed: 1, Closed: 4.

Week 95: 30th September - 6th October

  • General development
    • Mainly worked on the stuff for 2.70:
      • Dithering implemented in GLSL shader (codereview)
      • Preview rasterized masks while editing (codereview)
    • Also spent quite some time going over bugtracker, trying to reproduce bugs, replying.
    • Fix crash starting game engine on linux (mesa bug, worked around but took quite some time)
  • Motion Tracking
    • Commited homography estimation patch to trunk with some further optimizations.

Fixed: 0, Closed: 8.

Week 96: 7th - 13th October

  • General development
    • Fixed own regression from a while back which lead to "Copy Previous Settings" not showing on Linux
    • Added utility macros to guarded allocator, so now it's possible to guard C++ objects without having need to modify them
    • Used that macro to make libmv-capi memory guarded
    • Finished and commited derivative map baker
    • Finished and commited RGB curves in GLSL
    • Finished and commited rasterized mask overlay patch.
    • Commited lock-free allocator to trunk.
  • Bug-tracker
    • Fix T36980 Color space issue when displaying pixel color in a render

Fixed: 1, Closed: 1.

Week 97: 14th - 20th October

  • General development
    • Project Pampa request: copy-paste for curve mapping widgets
    • Project Pampa request: FPS in sequencer editor
    • Project Pampa request: show curves for node grups
    • ID blocks can be pasted to text editor now with mouse drag and move
    • Cleaning up DAG-MT branch for merge
  • Unreported fixes
    • Fix duplicated key in ghash assert caused by object orco
    • Fix for wrong active render layer after copying hr scene
    • Fix for wrong implementation of mmap in lock-free allocator
    • Fix compositor rendering scenes multiple times in some cases
  • Bug-tracker
    • Fix T37123 UV editor view does not update view while bake is in progress
    • Fix T37122 Text Editor: New Open-Shortcut different from Text > Open Text Block
    • Fix T37119 Movie Clip Editor: Prefetching doesn't fetch last frame of an image-sequence.
    • Fix T37118 Movie Clip Editor: Prefetch frames doesn't seem to check what "input color space" option is selected.
    • Fix T37117 Movie Clip Editor: Prefetching frames doesn't work if an image-sequence or its directory contains certain characters. Swedish åäö for example.
    • Fix T37106 Hair Length vanishes when Advanced is enabled.
    • Fix T37097 Setting scene frame does not update active camera changes from timeline markers
    • Fix T37091 Reset to default of Sky Texture's Dot freezes it at 0,0,0
    • Fix T37090 Blender crashes on "Make single user" option
    • Fix T37048 Default keybindings: text.find_next in Text (Global), should be in Text Generic
    • Fix T37043 bpy.ops.sequencer.rebuild_proxy() don't release memory
    • Fix T37005 Mask tool + "Area" Brush Mapping + "Anchored" Stroke = crash
  • Motion tracking work
    • Get rid of Allow Fallback option (not needed since new BA code, cleans up interface a bit)
  • Studio Work
    • Just fixing microwaves, lamps, renderfrms, setting servers up, drilling the holes in brackets, chating with Dan by skype distracting you and all of other crazy things.
    • No soldering still tho ;)

Fixed: 12, Closed: 12.

Week 98: 21th - 27th October

  • General development
    • Wasted loads of time at BConf
    • Fixed bug with make real of linked group which have proxies
    • Weighted tracks are wrapped around and commited to svn
    • Worked on phabricator customization for developer. b.o

Fixed: 0, Closed: 2.

Week 99: 27th October - 3d November

  • General development
    • Spent the whole day in DC
    • Spent the whole day moving back home
    • Poject Pampa fix: blender's animplayer didn't take prevew range into account
    • Project Pampa request: FCurves normalized display
    • Various improvements to motion tracking API to make it possible to run automated tests
    • Enabled multires bake to level 0, by the looks of it heuristic used for it works fine, but more feedback needed
    • Make anim system safer for threading, units mapping wouldn't apply scale on actual FCurve now
    • Started working on bezier's handles for masks
    • Continue working on phabricator/git migration
  • Bug-tracker
    • Fix T37252 Mask modifier doesn't copy settings on object copy
    • Fix T37246 Dynamic paint addon.
    • Fix T3722 Multilayer EXR inputs generate pink frame/last displayed frame when using an image sequence offset
    • Fix T37187 ghost/test/multitest fails to build
    • Fix T37152 Knife tool doesn't work properly with Maya preset (Zooming and Panning)

Fixed: 5, Closed: 11.

Week 100: 4th - 10th November

  • General development
    • Most of the time was spent on migration tasks
    • Made buildinfo ready for git repo
    • Made build system ready for bf-translations hosted in git repo (needed to make it so .po translation files are compiled to .mo as a part of blender build)
    • Tweaks to phab, mostly custom bug and patch submission forms
    • Commit access is now synchronized between phabricator and git
  • Bug-tracker
    • Fix T37338 Some operators work in a Linked Scene
    • Fix T37251 Snap not working correctly in metaball edit mode.

Fixed: 2, Closed: 5.

Week 101: 10th - 16th November

  • General development
    • Last week spend on migration, loads of last-minute issues and other things.
    • Re-worked build-info (once we've got final repo it became clear initial idea of it wasn't so much great)
    • Fixes for used for translation (didn't handle contexts properly)
    • Tweaks to phabricator:
      • Disable Lint and Unit tests for patches (we don't use them anyway)
      • Made it possible to sync svn access from phab to svn.b.o (we'll need this to deal with libraries). Get script for this ready, now it's matter of setting cronjob for this.
      • Loads of fixes and tweaks to script which synchronizes git access based on settings in phab.
    • Loads of tweaks on servers themselves to make cronjob work and work properly and so
    • Now we're ready to go back to almost normal development
  • Bug-tracker
    • Fix T37395 Rendering with a movie strip behind a scene shows inconsistent results

Fixed: 1, Closed: N/A.

Week 102: 17th - 24th November

  • General development
    • Fixed for buildinfo of exported source tree
    • Tweaks to 'install' targets to respect git repository layout
    • Fix bug in maya/3dsmax keymaps caused by removed operator
    • Tweaked buildbot config to use git repositories
    • Remove Surface modifier when removing force field from object
    • Tweaks and improvements to fundamental/homography estimation (more accurate, easier to use API)
    • Optimization for render result save (30% time boost when re-exporting movie to PNG sequence i.e.)
    • Spent a day looking into some heisenbugs in DAG-MT branch. Discovered more nasty bugs there, trying to solve them now.
  • Bug-tracker
    • Fix T37486: Displacement bake from multires crashes when preview level is on 0
    • Fix T37428: NurbsPath Mesh Deform "Binding" not available or not functional
    • Fix T37345: Image baking progress bar wrongly appears in node editor
    • Fix part of T37326: IMAGE_OT_invert won't update if buffer is float
    • Fix T37301: Command line render gives seg fault 11 on OS X
    • Fix T37289: ID User decrement error for Shapes on Bones when playing in BGE
    • Fix T37488: Crash with --debug reading userpref.blend
    • Fix T37525: Viewer node causes crash
    • Fix T37172: Plane Tracker Deform - No perspective

Fixed: 9, Closed: not sure, need to update weekly report generator script :)

Week 103: 25th November - 1st December

  • General development
    • Made PNG default settings faster and used more clear tooltip. Was in contact with Jonathan for this
    • Tweaks and fixes for buildbot/buildinfo
    • Updated Carve to latest version (some issues are fixed in the upstream, also made it compilable on FreeBSD system)
    • Also updated Ceres to latest version. It brings up faster camera solve and keyframe selection. Also solves compilation on FreeBSD. Spent some time on this to make all the platforms working -- stupid MSVC-2008 :S
    • Cleanup in versioning code, see codereview for details
    • Plane track image preview in clip editor, see video from Sebastian
    • Spent some time re-configuring svn server in order to make svn access configurable from developer.b.o
    • And last but not least, worked on own DAG branch without visible feedback yet. Need to solve two nasty bugs there..
  • Bug-tracker
    • Fix T37225 UV map for closed curves incorrectly generated
    • Fix T37624 Rename Marker does not update Marker in 3D View until Frame Change
    • Fix T37632 Wrong tooltip for "Motion Blur" on mask node

Fixed: 3, Closed 2

Week 104: 2nd - 8th December

  • General development
    • Was awesome in space. Do you really want to read further?
    • Most of the time tried to get bug tracker into control. We're having like 50 unassigned bugs at this moment. Quite a few of them we can not reproduce, others are interface bugs. Really wouldn't mind the team to not just reply to the issues, but also to assign them.
    • Linux platform maintenance: compiled new OIIO/OSL libs for both linux platforms
    • Worked on patch for more informative system-info path review
    • Worked on patch for GPU-side dither implementation (need for fully GPU color management) patch review. Mainly addressed TODOs marked in initial implementation
    • Worked on patch to switch image datablock cache from image buffer list to smarter moviecache implementation, which supports freeing of unused buffers. Patch is not ready for review yet, but that's only minor things remained (like making sure thread-unsafe calls are done from a lock and so)
    • Tried to concentrate on wrapping up DAG-MT branch. Sadly, not much commitable stuff yet :'( I'll talk to Cambo/Brecht to back me up in the bugtracker and zap all the issues next week
  • Bug-tracker
    • Fix T37656 Huge amount of RAM used during start when rendering large images
    • Fix T37671 Edit Texture Space on Skin Resize crash
    • Fix T37670 Paint mode + procedural map colours error
    • Fix T37663 Black matcap when object located on a curve
    • Fix T37690 UI does not immediatelly reflect new length of effect strip
    • Fix T37680 Texture image scale is not refreshing
    • Fix T37189 Inconsistent icons for Force field
    • Fix T37703 Shadow pass output image is mangled.
    • Fix T37688 User Preferences do not load correctly
    • Fix T37212 Wrong user counter when more than 32K users
  • Motion tracking work
    • Alpha channel of a plane track image works fine in MCE now
    • Worked on support for movie files and image sequence support for plane track warping in MCE. Patch is ready, but it's dangerous for users because of stupid image cacheing

Fixed: 10, Closed 6

Week 105: 9th - 15th December

  • General development
    • Spent half of the week doing uni stuff in Magnitogorsk
    • Committed "Move curve's boundbox and texspace calculation out of modifier stack" patch to master branch. Needs for DAG_MT work.
    • Hopefully solved compilation issues with libav-0.8.9
    • Blender shall be compilable on armel kernel now (request from Debian folks)
    • Finished and committed "Implement GPU-side dither", codereview
    • Finished and committed "Image cache rewrite to using generic movie cache", codereview
    • Wrapped most of DAG_MT branch for inclusion into master branch, currently being reviewed by Brecht, codereview
    • Worked on optimizing partial buffers update during rendering, codereview
  • Bug-tracker
    • Fix T37757 MCE - Mask Pivot Point individual origins doesnt work
    • Fix T37786 Curves: Geometry tab is missing

Fixed: 2, Closed 0

Week 106: 16th - 22th December

  • General development
    • Updated Python libs in release environment (as requested in the ML)
    • Spent some time looking into weirdo behavior of developer.b.o's php which apparently crashes quite a lot, no diagnosis yet
    • Simplified code in color management module
    • Some optimization (mainly memory usage) of color management
    • Fixed some crashes caused by recent changes to image cache
    • Finished and committed changes to partial update during rendering
    • Fix for border select doesn't work with normalization enabled
    • Cleanup of masks module, needed for some further work
    • Reviewed bezier handles for masks patch from Chris, but..
    • ..Ended up writing my own to support more features in more clear way (currently patch is being reviewed)
    • Looked into different methods of calculating feather offset for masks, new code is in the mentioned patch. Some tweaks are still needed but overall love new behavior more
    • Solved TODO in DAG-MT branch about single-threaded scene update when invoked from python script
    • Addressed code review feedback from Campbell about DAG-MT branch.
    • Fix for painted images removing from the memory after recent image cache rewrite
  • Bug-tracker
    • Fix T37826 Opening a new image in the image editor
    • Fix T37718 Texture compression missing
    • Fix T37907 Crash when change screen layout to "Motion Tracking"
    • Fix T37906 Adding force field settings to boids gives hard crash
    • Fix T37898 blenderplayer painfully slow in recent builds

Fixed: 5, Closed 3

Week 107: 23th - 29th December

  • General development
    • Make makesdna capable of detecting 32bit alignment issues on 64bit platform
    • Implement per-frame track reprojection error visualization
    • Corrected some weirdo UI experience glitches in MCE while working on previous patch
    • Use generic task scheduler for threaded image processor (no benefit for users, just code became much more clear now, some further memory optimization is planned)
    • Threaded object update and EvaluationContext is in master branch now!
    • Avoid temporary change of animation data flags for nodes filter (a TODO since Project Pampa)
    • Solved PHP crashes on our developer.b.o server
    • Worked on some more reports/fixes they're currently under review (pretty much creepy ones)
    • Fix movie output when using render border
  • Bug-tracker
    • Fix T37898 blenderplayer painfully slow in recent builds
    • Fix T37709 Memory corruption when freeing custom bone shape objects
    • Fix T37945 Crash after undo
    • Fix T37955 Freestyle render misalignment
    • Fix T36474 Blender 2.68a crashes upon rendering
    • Fix T37980 Multiple font objects sharing an external font gives problems

Fixed: 6, Closed 4