User:LukasTonne/WeeklyReports/2023

2023

Calendar Week 10

Mar 6 - Mar 12

Development

Planning

Next Week

Calendar Week 11

Mar 13 - Mar 19

Development

Code Review

Design

Next Week

Calendar Week 12

Mar 20 - Mar 26

Development

Calendar Week 13

Mar 27 - Apr 2

Planning

Development

Animated cartoon loco with particle sim running on the realtime clock

Calendar Week 14

Apr 3 - Apr 9

Calendar Week 15

Apr 10 - Apr 16

Development

  • Copy support for simulation zone nodes #106812
  • Added task to unify copy operators #106852

Code Review

  • Node add searches missing context-based poll #106829
  • Initialize socket value by declaration callback if value is data block #106816

Calendar Week 16

Apr 17 - Apr 23

  • Postponed copy operator unification. Should be supported by python tests and is more work than can be justified atm #106852
  • Finished attribute field type propagation in simulation zones #107133
  • Finished UI for simulation zone items in the node editor #106919
  • Started work on attribute propagation support in simulation zones #107219

Calendar Week 17

Apr 24 - Apr 30

  • Working on baking operators and general cache info panel for simulation nodes #107290
  • Vacation Apr 27 - May 2

Calendar Week 18

May 1 - May 7

  • Moved weekly notes into a yearly subfolder LukasTonne/WeeklyReports/2023
  • Calculate-to-frame operator for setting simulation nodes up to the current frame without baking #107627
  • Fix for crashes due to unsafe simulation node cache access by editors #107621
  • Fix for crash when connecting viewer in a pinned node tree without object context #107737
  • Documenting LOD system in geometry nodes (WIP, further work needed to solve normal continuity)
    LOD frustum.jpg
    LODgeonodes.jpg

Calendar Week 19

May 8 - May 14

  • Added support for simulation zones in node group operators (make group, ungroup, insert, separate) #107807
  • Removed versioning code for older geonodes simulation zones #107781
  • Wrote proposal for adding "function socket" as a concept: Node graphs get wrapped as closures, can be passed around node trees, and evaluated at a later stage. This will allow much greater customization of node assets without user having to tweak complex node trees. #107842

Calendar Week 20

May 15 - May 21

  • Mo-We: Workshop for node-based tools and brushes design with Dalai, Jacques, Andy, Simon
  • Working on a prototype for a fracturing system in geometry nodes
    Screenshot 20230522 122826.png

Calendar Week 21

May 22 - May 28

  • Fix to prevent creation of unnecessary cache folders (simulation zone exists but is not in use) #108278
  • Add user warning to detect when caches might overwrite existing data on disk #108288
  • Updated Embree test branch and started discussion about benefits and potential issues of replacing Blender's BVH implementation #108148

Calendar Week 22

May 29 - Jun 4

  • Fix for socket shape when copying between different node tree types #108412
  • Sub-panel support for node group socket categories:
 - Add categories to node tree interfaces for organizing large numbers of inputs
 - Support instancing of child panels (remove hidden assumption that child panels are always type-based)
 #108565

Calendar Week 23

Jun 5 - Jun 11

  • Splitting PR for socket sub-panels into manageable pieces:
 - Category declaration in node trees and sockets #108649
 - Return bit arrays as persistent expand flags for panels [8https://projects.blender.org/blender/blender/pulls/108648 #108648]
   _Dropped after changes were postponed until callbacks could support BitVector (c++)_
 - Use instanced child panels to display node socket categories #108565
   _(depends on and includes both PRs above)_
  • Fix for socket display shapes #108412
  • Bug report: assert failure when working within large asset libraries #108703

Calendar Week 24

Jun 12 - Jun 18

  • Panel declaration experimental feature #108649
  • Committed C++ RNA for object, curves, nodes rna-cpp branch

Calendar Week 25

Jun 19 - Jun 25

  • Published preliminary API design for new group interface data structure
  • Discussion on containers, socket/panel ordering, backward compatibility
 #109158
  • Implementing tree view for the new data structure
  • PR for cleaning up color access API of node sockets
 #109288
  • Finished warnings for bake operator when writing to the same directory
 #108263


Calendar Week 26

Jun 26 - 2 Jul

  • After discussion with Brecht, Jacques, and Hans decided to change DNA design of the node group interfaces to a hierarchical structure. Takes a bit longer than anticipated ...
 #109158
  • Review: Serial loop PR by Jacques
 #109164


Calendar Week 27

Jun 3 - 9 Jul

  • Vacation 5-9
  • Working on node socket panels

Calendar Week 28

Jul 10 - 16 Jul

  • Vacation 10-12
  • Working on node socket panels

Calendar Week 29

Jul 17 - Jul 23

  • Still working on node socket panels
 Discussed how forward compatibility can be implemented, settled on doing write-time versioning in 4.0 so older versions have data to read.
 Decided with Brecht to discard the old RNA API to make things easier.
 Todo list: #110272

Calendar Week 30

Jul 24 - Jul 30

Node panels:

  • Implemented backward + forward compatibility for node group interfaces.
  • Deprecated old bNodeTree sockets DNA, RNA
  • Replaced uses of old node group interface.
  • Added custom socket type support for new node group interface items.
  • Discovered that the interface_init_socket API method is no longer used, this may have been an unintended breaking change introduced by node declarations. -> Discussion

Calendar Week 31

Jul 31 - Aug 6

  • Finished most remaining work on socket panels #110272
  • Added python tests for the new node group interfaces
  • Started splitting into parts for easier review, part 1: #110272

Calendar Week 32

Aug 7 - Aug 13

  • Finished and committed part 1/3 of the node socket panels patch #110885
  • Vacation from Aug 10

Calendar Week 33

Aug 14 - Aug 20

  • Vacation until Aug 16
  • Finished and committed part 2/3 of the node socket panels patch #110952

Calendar Week 34

Aug 21 - Aug 27

  • Final part 3/3 of the node socket panels patch in review #111348
 Fixed tests, UI drawing, and other issues found during code review.

Calendar Week 35

Aug 28 - Sep 3

Bug fixes for node panels

Also fixed related issues in Node Wrangler addon caused by breaking API changes

Calendar Week 36

Sep 4 - Sep 10

More bug fixes for node panels

Added a new test to finally have some checks on complicated node versioning.


Calendar Week 37

Sep 11 - Sep 17

More bug fixes for node panels

Support for panels in built-in nodes

Calendar Week 38

Sep 18 - Sep 24

Reverted the "inline sockets" feature after it was decided that this feature would break Blender UI conventions

And some final fixes for node panels

Calendar Week 39

Sep 25 - Oct 1