User:OmarSquircleArt/WeeklyReports/2023

Week 1

March 7 to March 13.

  • Bicubic interpolation support for Realtime Compositor. cbf569523c.
  • Allow access to multiple EXR passes and layers in Realtime Compositor by fixing missing GPU texture updates. PR #105547.
  • Refactor GPU texture samplers. Allow per-axis image repetition in Realtime Compositor. PR #105642.

Week 2

March 21 to March 27.

  • Fix: Realtime compositor outputs wrong EXR passes. 04d128f545.
  • Continued working on refactoring GPU texture samplers. PR #105642.
  • Implement Fog Glow Glare node. PR #106042.
  • Implement Anti-Aliasing node. 2f4a7d67b7.
  • Fix: Glare has an offset on low quality settings. c42370d577.
  • Use luminance coefficients in SMAA. 3d06905ac4.
  • Spent some time debugging dynamic linking issues when using RenderDoc to debug Blender. Found the root cause and looking into either fixing it or documenting the workaround somewhere.

Week 3

April 4 to April 10.

  • GPU: Refactor texture samplers. ff3b2226fb.
  • Realtime Compositor: Implement Z Combine node. b939b60c3f.
  • Realtime Compositor: Implement Displace node. 625ba3cb5d.
  • Realtime Compositor: Implement Fog Glow Glare node. cc5128f6ca.
  • Realtime Compositor: Implement ID Mask node. PR #106593.
  • Realtime Compositor: Implement Map UV node. PR #106765.

Week 4

April 18 to April 24.

Shorter week because of two days of a national holiday.

  • Fix #106751: No implicit conversion for group inputs. c10e8e4166.
  • Realtime Compositor: Implement ID Mask node. 3d6117994c.
  • Investigate adjustments with identity settings in the Hue Correction node. #106965.
  • Realtime Compositor: Implement Texture node. PR #107291.

Week 5

April 24 to May 1.

  • Realtime Compositor: Implement Denoise node. PR #107375.
  • Realtime Compositor: Implement Stabilize 2D node. PR #107401.
  • Realtime Compositor: Implement Texture node. 151a53110c.
  • Realtime Compositor: Implement Corner Pin node. fa2dbceadd.
  • Realtime Compositor: Implement Mask node. 3f6912ece2.
  • Realtime Compositor: Split cache into containers. 1c3d67d4cc.
  • Realtime Compositor: Optimize image textures. a32dbb892f.
  • Realtime Compositor: Prioritize Viewer output node. 5fa8f7746c.
  • Fix #106965: HSV/HSL conversion differ from CPU compositor. 59b6e8900f.
  • Realtime Compositor: Add missing domain priority for mask nodes. b68b3e7b8f.

Week 6

May 9 to May 15.

  • Realtime Compositor: Implement Convert Color Space node. d91f0bf8d2.
  • Realtime Compositor: Implement Plane Track Deform node. 6698e8f4a0.
  • Fix #107583: HSV node differ from CPU compositor. f9b5b0efd2.
  • Realtime Compositor: Implement Denoise node. e8c660b855.
  • Realtime Compositor: Implement Stabilize 2D node. 88d03d15c1.

Week 7

May 23 to May 29.

  • Realtime Compositor: Implement Movie Distortion node. PR #108230.
  • Realtime Compositor: Implement Keying node. PR #108393.
  • Reviewed: Add Fractal Voronoi Noise V.2. PR #106827.
  • Investigate and try to make sense of the Sun Beams node.

Week 8

June 6 to June 12.

  • Realtime Compositor: Implement Movie Distortion node. f06929766b.
  • Realtime Compositor: Implement Sun Beams node. 9ddc8504fa.
  • Realtime Compositor: Support Viewer nodes. 5400fe941e.
  • Nodes: Add bNodeInstanceKey to DerivedNodeTree. PR #108900.
  • Realtime Compositor: Add support for node previews. PR #108904.
  • Reviewed a number of pull requests related to compositing.

Week 9

June 20 to June 26.

Had to take one day off this week.

  • Nodes: Add bNodeInstanceKey to DerivedNodeTree. 740baefb16.
  • Realtime Compositor: Add support for node previews. b450101000.
  • Fix: Sun Beams shader does not work on Metal. 75b519eb89.
  • Fix: Wrong reference count for shader operation. d6cd3db13b.
  • Realtime Compositor: Add node previews for shader operations. 753747e859.
  • Nodes: Compute logically linked sockets to outputs. c6e5be9a36.
  • Realtime Compositor: Implement Keying node. c9e6399fe1.
  • Realtime Compositor: Implement Classic Kuwahara. PR #109292.
  • Worked on support for Summed Area Tables for the compositor.
  • Reviewed a number of pull requests related to compositing and shading.

Week 10

July 4 to July 10.

Most of the week was spent on prerequisites to the Classic Kuwahara node PR #109292, including:

  • A Summed Area Table implementation algorithm.
  • Full float extension to compositor results.
  • A library for evaluating the computed SAT.

Week 11

July 18 to July 24.

  • Fix #109676: GPU compositor crashes on muting output nodes. 5be226699f.
  • Fix #109869: Switch View node crashes on editing. 4c72dc98c2.
  • Realtime Compositor: Implement Classic Kuwahara. 940558f9ac.
  • Fix #109868: Keying node differ between GPU and CPU. bdb042c243.
  • Fix #110281: Keying node despill is wrong on GPU. 6400190836.
  • Compositor: Use average color variance in Kuwahara node. a939f46350.
  • Researched and worked on an optimized version of Anisotropic Kuwahara node for the Realtime Compositor.

Week 12

August 1 to August 7.

  • Realtime Compositor: Implement Anisotropic Kuwahara. PR #110786.

Week 13

August 14 to August 21.

  • BLI: Add 2D transformation matrix decomposition. 85a3f61150.
  • Realtime Compositor: Support realization of transformations. 726ba534fc.
  • BLI: Add square function. 110cb5d0d5.
  • Realtime Compositor: Implement Anisotropic Kuwahara. 9ef2310e5f.
  • Realtime Compositor: Realize rotation for filter nodes. PR #111213.
  • Realtime Compositor: Realize rotation and scale for filter nodes. PR #111216.
  • Fix: Bokeh Blur not affected by transforms. #102252.
  • Patch review and research on Gabor noise.
  • Research parallel algorithms necessary for Inpaint and Double Edge Mask nodes. 1+JFA and PBA+ algorithms.

Week 14

August 29 to September 4.

  • Implement 1+JFA algorithm. PR #111792.
  • Realtime Compositor: Implement Inpaint node. PR #111792.
  • Realtime Compositor: Implement Double Edge Mask node. (Not submitted yet.)
  • Code review.

Week 15

September 11 to September 15.

  • Realtime Compositor: Immediately realize transformations. PR #112332.
  • Realtime Compositor: Allow more result types. PR #112414.
  • Compositor: Use RBF Interpolation in Keying Screen node. PR #112480.
  • Realtime Compositor: Implement Inpaint node. PR #111792.
  • Realtime Compositor: Implement Double Edge Mask node. PR #112223.