User:Brecht/Reports/2020

February 10 - 14

  • New volume object:
    • Support arbitray number of grids for Eevee shaders
    • Add wireframe display using OpenVDB tree nodes
    • Smoke: put density/color in separate textures
    • Better integration into workbench drawing
    • Show data type in grids list
    • API functions to modify grids in the modifiers stack
    • Various bugfixes
  • Cleanup:
    • Work around clang-format differences between versions
    • Refactor GPU material attribute and texture requests
    • Split off code from gpu_codegen.c into smaller files
    • Don't perform some GPU shader codegen operations twice
    • Fix macOS build warnings about Boost symbol visibility
  • macOS libraries upgrade for OSL / LLVM / Freetype / Embree
  • General code review (about 30 patches)
  • Bug triaging
  • Bugfixes:
    • Fix T68243: Python sqlite module not working on macOS
    • Fix potential crash with Eevee render of missing image textures
    • Fix Eevee shader node error when using both RGB and vector curve nodes
    • Fix crash in some Eevee shader node setups after vector math node changes
    • Fix T67924: transform right/up arrow keys not working on macOS

Next Week

More patch review, and work on completing new volume object rendering and viewport drawing.

February 3 - 7

  • New volume object:
    • Support for frame sequences
    • Browse VDB files from add menu, auto detect sequences, drag & drop
    • Add global volume grid cache (for sharing grids between datablocks)
    • Use principled volume by default in volume object materials
    • Debug logging for grid file load/unload
  • Cleanup
    • Refactor default materials and shader nodes
    • Add type inheritance for Cycles nodes
    • Export particle hair as a separate Cycles object
    • Split Cycles export into smaller files
    • Remove unnecessary operations in Cycles curves export
    • Split Cycles Hair and Mesh classes, with Geometry base class
    • Simplify Cycles primitive attribute map storage
  • Design discussions and planning for particle nodes
  • General code review
  • Bugfixes
    • Fix T73364: crash calling particle_sytem.co_hair() on disabled particles

Next Week

Review Cycles patches for 2.83. Attempt to complete new volume object rendering and viewport drawing.

January 27 - 31

  • New volume object:
    • Initial Cycles, Eevee and viewport rendering
    • Work on completing API and on-demand loading
  • New hair and pointcloud object: initial viewport rendering
  • General code review (about 30 patches)
  • Bugfixes
    • Fix T72143: editing image frame start/offset does not update in Eevee
    • Fix tests failing on AMD Ryzen, due TBB initialization order issue
    • Fix T73409: error deleting preset saved on different drive than Blender install
    • Fix issues in Cycles standalone, particularly related to render display

Next Week

Design discussions and planning for particle node and new object type projects. Continue on volume object, likely volume sequence support and tightening up the depsgraph related code. Review Cycles patches for 2.83.

January 20 - 24

  • New hair, pointcloud and volume object types: initial data structures
  • Tablet events: refactor code to fix various bugs and simplify it
  • Review LANPR design with Sebastian
  • Review undo optimization patch
  • Fix various build and link issues after VFX platform upgrade
  • General triaging and code review

Next Week

Rendering support for new volume object. Catch up with patch review.

January 15 - 17

  • Library upgrades to match VFX reference platform 2020
  • Planning with Dalai for 2020 development projects
  • Create 2.82 workboard, find and tag showstopper tasks
  • Linux: update release notes for appdata
  • Bugfixes:
    • Fix Cycles not correctly using Background.shader if specified
    • Fix T71830: invalid Linux appdata syntax
    • Fix T73129: sculpt mode slow on mesh with fake user
    • Fix T71952, T70125: Blender Linux crash on startup with some tablets
    • Fix T68000: load previous settings error if config folder already exists