User:Sergey/Foundation/2021

Weekly Reports for year 2021

Week 471: 4th - 10th January

  • General development
    • Catching up with mails accumulated during the time off
    • Updates on the patches for motion tracking
    • Some time spent on documentation

Week 472: 11th - 17th January

  • General development
    • Finished catching up with mail
    • Some extra time spent on documentation
    • Helped with 2.92 branching and buildbot changes
  • Bug tracker
    • Fix T84397 Creating and removing many objects very quickly causes a crash
    • Fix T83411 Crash when using a workspace/layout data path in a driver
    • Fix T84167 Saving half-float EXR might result in NaN pixels
  • Next week
    • Wrap up track average feature and commit it
    • Wrap up documentation project been working on

Week 473: 18th - 24th January

  • Bug tracker
    • Cycles: Fix missing OpenCL extensions in System Info in certain cases
    • Cycles: Fix usage of double floating precision in CNanoVDB
    • Tracking: Implement tracks average operator
    • Fix "Lock to Selection"" does not work in mask mode
  • Bug tracker
    • Fix T76936 Mesh shape amended upon undoing in sculpt mode
  • Next week
    • Wrap up proportional editing for tracks
    • Wrap up documentation project been working on

Week 474: 25th - 31st January

  • General development
    • Subdiv: Expose all UV interpolation options
    • Subdiv: Use better default UV interpolation
    • Fix unused result from mmap() call
    • Fix panning with Lock-to-Selection and no selection in Clip Editor
    • Some non-code related tasks
  • Bug tracker
    • Fix T84990 Proportional Editing falloff drawing for masks in MCE is broken
    • Fix T84850 "Lock to Selection" causes unwanted jumps
    • Fix T84717 Missing viewport update after shading changes
    • Fix T85142 BMW scene quits Blender
  • Next week
    • Will be more non-code related tasks
    • Wrap up proportional editing for tracks
    • Wrap up documentation project been working on
    • Design reviews

Week 475: 1st - 6th February

  • General development
    • Usual design and patch reviews
    • Quality Friday
    • Design discussions here at the studio
  • Next week
    • Topics from the previous week's planning :(

Week 476: 7th - 14th February

  • General development
    • Usual design and patch reviews
  • Next week
    • More usual design and code reviews

Week 477: 15th - 21st February

  • General development
    • Usual design and patch reviews
  • Next week
    • More usual design and code reviews

Week 478: 22nd - 28th February

  • General development
    • Usual design and patch reviews
  • Next week
    • More usual design and code reviews

Week 479: 1st - 7th March

  • General development
    • Usual design and patch reviews
  • Next week
    • More usual design and code reviews

Week 480: 8th - 14th March

  • General development
    • Usual design and patch reviews
  • Next week
    • More usual design and code reviews

Week 481: 15th - 21st March

  • General development
    • Usual design and patch reviews
  • Next week
    • More usual design and code reviews

Week 482: 22nd - 28th March

  • General development
    • Usual design and patch reviews
  • Next week
    • More usual design and code reviews

Week 483: 29th March - 4th April

  • General development
    • Usual design and patch reviews
  • Next week
    • More usual design and code reviews

Week 484: 5th - 11th April

  • General development
    • Usual design and patch reviews
  • Next week
    • More usual design and code reviews

Week 485: 12th - 18th April

  • General development
    • Usual design and patch reviews
  • Next week
    • More usual design and code reviews

Week 486: 19th - 25th April

  • General development
    • Usual design and patch reviews
    • Cycles-X development
    • Preparation for the Friday event
  • Next week
    • More usual design and code reviews

Week 487: 26th April - 2nd May

  • General development
    • Usual design and patch reviews
    • Cycles-X development
  • Next week
    • More usual design and code reviews
    • More Cycles-X development

Week 488: 3rd - 9th May

  • General development
    • Usual design and patch reviews
    • Cycles-X development
  • Next week
    • More usual design and code reviews
    • More Cycles-X development

Week 489: 3rd - 9th May

  • General development
    • Usual design and patch reviews
    • More Cycles-X development
  • Next week
    • More usual design and code reviews
    • More Cycles-X development

Week 490: 10th - 16th May

  • General development
    • Usual design and patch reviews
  • Cycles-X development
    • Approximate mode for shadow catcher
    • Better adaptive sampling strategy for viewport
    • Fixes for OptiX denoiser
    • Various numerical stability fixes
    • Fix for displacement/bump map
    • Performance investigation
    • Shadow catcher denoising investigation
  • Next week
    • More usual design and code reviews
    • More Cycles-X development

Week 491: 17th - 23rd May

  • General development
    • Usual design and patch reviews
  • Cycles-X development
    • Optimization of init_from_camera kernel, making it usable for any GPU backend as well
    • Remove use of megakernel, as well as bringing some speedup
    • Better strategy for greedy tile scheduling, which preserves coherency better, and brings speedup
    • Experimented with re-scheduling threshold heuristic. It is in the cycles-x branch, but it night need a revisit after some further development.
  • Next week
    • More usual design and code reviews
    • More Cycles-X development

Week 492: 24th - 30th May

  • General development
    • Night-shift fixing hardware problems at the studio
    • Very short week because of that and because of the national day off on Monday
    • Usual design and patch reviews
  • Cycles-X development
    • Refactor of code to support denoising of passes which needs math to calculate final pixel (shadow catcher, shadow catcher matte, light passes).
    • Some of the work is good and in the branch. Some other work had to git reset --hard due to wrong approach taken (didn't notice this early one due to mistake in benchmark).
    • Cleanup of Cycles debug flags, make the currently usable one runtime (no re-compile needed to use them).
  • Bug tracker
    • Fix T88552 Cycles changing Render Passes in viewport does not work
  • Next week
    • More usual design and code reviews
    • More Cycles-X development

Week 493: 31st May - 6th June

  • General development
    • Usual design and patch reviews
  • Cycles-X development
    • Refactored viewport update, de-duplicated code, made shadow catcher passes available in viewport.
    • Viewport update on GPU is about 10-15% faster (only update, excluding the path tracing time)
  • Next week
    • More usual design and code reviews
    • More Cycles-X development

Week 494: 7th - 13th June

  • General development
    • Usual design and patch reviews
  • Cycles-X development
    • Some minor fixes for denoiser
    • Kept working on reducing boiler plate code for pass accessor, made it usable by denoisers.
    • Got shadow catcher passes denoising work for OIDN (approved patch, need to push it still)
  • Next week
    • More usual design and code reviews
    • More Cycles-X development

Week 495: 14th - 20th June

  • General development
    • Usual design and patch reviews
  • Cycles-X development
    • Various fixes for things which accidentally got broken by recent development
    • Implement shadow catcher denoiser on OptiX
    • Fixes for shadow catcher artefacts
    • Constant time rendering feature is in
  • Next week
    • More usual design and code reviews
    • More Cycles-X development

Week 496: 21st June - 28th

  • General development
    • Usual design and patch reviews
  • Cycles-X development
    • Worked on multi-device rendering support
  • Next week
    • More usual design and code reviews
    • More Cycles-X development

Week 497: 29th June - 4th July

  • General development
    • Usual design and patch reviews
  • Cycles-X development
    • Worked on multi-device balancing
    • Small fixes in the denoiser
  • Next week
    • More usual design and code reviews
    • More Cycles-X development

Week 498: 29th 5th - 11th July

  • General development
    • Usual design and patch reviews
  • Cycles-X development
    • Fixes in denoiser and adaptive sampling
    • Memory optimization for denoiser (especially for multi-device rendering)
  • Next week
    • More usual design and code reviews
    • More Cycles-X development

Week 499: 12th - 18th July

  • General development
    • Usual design and patch reviews
  • Cycles-X development
    • Reduce memory usage of OptiX denoiser and CPU render
    • Tweaks to the multi-device balancing
    • Fix adaptive sampling convergence check on GPU
    • Implement path compaction for shadow catcher
    • Bring back cryptomatte post-processing
    • Ignore shadow catcher from holdout collection
    • Fix fully transparent shadow catcher pass without catchers
    • Support shadow catcher behind transparent object
  • Next week
    • More usual design and code reviews
    • More Cycles-X development

Week 500: 18th - 25th July

  • General development
    • Usual design and patch reviews
  • Cycles-X development
    • Fix background "leaking" into combined
    • Support approximate shadow catcher with background
    • Fix missing Noisy Shadow Catcher pass
    • Corrected OpenGL context usage
    • Started working on hi-res image rendering. Got initial version of render update without copying render result to Blender
  • Next week
    • More usual design and code reviews
    • More Cycles-X development

Week 501: 26th July - 1st August

  • General development
    • Usual design and patch reviews
    • Fix missing passes update on Use Denoising change
    • Fix Cycles crash with fluid object motion blur disabled
  • Cycles-X development
    • Fix missing denoise at the end of constant time render
    • Fix synchronization time included into constant time render
    • Fix missing render passes with constant time rendering
    • Support OIDN with guiding pass prefiltering
    • Various fixes to pass handling (fixing buffer overruns, caused by some of previous refactor)
    • Continued with GPU Display used for non-viewport render
  • Next week
    • More usual design and code reviews
    • More Cycles-X development

Week 502: 2nd - 8th August

  • General development
    • Usual design and patch reviews
    • Implemented per-object AO distance for fast GI approximation for the studio production
  • Cycles-X development
    • Fix crash in true displacement for meshes without faces
    • Fix denoising of shadow catcher pass in Cycles X (a regression since cleanAux implementaiton)
    • More flexible OIDN prefiltering settings
    • Fix dead-lock (caused by race condition) when quitting Blender with viewport render going
    • Internal support of tiled rendering (path tracer and scheduler API)
    • Few iterations over the GPUDisplay for offline render and lazily allocated render passes. Took a bit of time to get into the related areas. Will do best possible thing without going into refactors of the draw manager, and let it toi be picked by the viewport team :)
  • Next week
    • More usual design and code reviews
    • More Cycles-X development

Week 503: 9th - 15th August

  • General development
    • Usual design and patch reviews
  • Bug tracker
    • Fix T90511 Cycles preview does not update once preview is done
  • Cycles-X development
    • Worked on tiled rendering. Goes slower that anticipated, but seems that all struggles are resolved now.
  • Next week
    • More usual design and code reviews
    • More Cycles-X development

Week 504: 16th - 22nd August

  • General development
    • Usual design and patch reviews
  • Cycles-X development
    • Fixes and stabilization of features which got unintendently broken (issues with CUDA rendering, crashes with certain volume rendering)
    • Moving forward with feature parity (render passes when cancelling render, ...)
    • GPUDisplay for the render result is under review
    • Moved forward with tiled rendering (is almost ready for review)
  • Next week
    • More usual design and code reviews
    • More Cycles-X development

Week 505: 23rd - 29th August

  • General development
    • Usual design and patch reviews
    • Made our atomic library to work on any Unix platform
    • Reworked implementation of tiles highlight (need move away from RenderPart for Cycles X work)
  • Cycles-X development
    • Remove Save Buffers, as it will be replaced with new tiles implementation
    • Remove FSAA, is not used anyrwhere
    • Submitted tile path for review. Some bugs got found and fixed. Scaling of half-finished tiles is to be redone.
  • Next week
    • More usual design and code reviews
    • More Cycles-X development

Week 506: 30th August - 5th September

  • General development
    • Usual design and patch reviews
  • Cycles-X development
    • Mainly getting all tile-rendering patches ready and reviewed
  • Next week
    • More usual design and code reviews
    • More Cycles-X development

Week 507: 6th - 12th September

  • General development
    • Usual design and patch reviews
    • Picking up devops tasks
  • Cycles-X development
    • Fix for crash and missing in-progress render result (Windows-specific OpenGL context creation)
    • Store metadata of render buffers in EXR files
    • Some on-going development of proper Save Buffers replacement, which isn't yet ready for review
  • Next week
    • More usual design and code reviews
    • More Cycles-X development

Week 508: 13th - 19th September

  • General development
    • Usual design and patch reviews
  • Cycles-X development
    • Bugfixes and small improvements
    • High-res image rendering is done and committed!
  • Next week
    • More usual design and code reviews
    • More Cycles-X development

Week 509: 20th - 26th September

  • General development
    • Took a shorter week
    • Usual design and patch reviews
  • Cycles-X development
    • Merge to master branch!
    • Aftermath of the merge :)
  • Next week
    • More usual design and code reviews
    • More Cycles-X development, but now in the master branch!