User:JacquesLucke/Reports/2022
< User:JacquesLucke | Reports
Week 166: January 03 - 07
- Fix T94545: Support realizing instanced collections (d960c78693368b).
- Fix T94707: Inverted output of separate geometry node incorrect (6c906b7c219f3f).
- Fix T94534: Dangling pointer in internal link after removing socket (d5e73fa13dd275).
- Fix T94659: Crash when deleting instances (3e92b4ed2408ea).
- Assets: Disable automatic preview generation for node groups (b63f375775b429).
- D13739: UI: Show recently selected items at the top of searches.
- D13747: Assets: Add operator to create preview from active object.
- D13748: Assets: Enable node group assets.
- D13752: Add script to check namespace names for unity builds.
- D13757: Geometry Nodes: Experimental Scale Elements node (WIP).
- Code Review.
Next Week
General geometry nodes work.
Week 167: January 10 - 14
- Fix T94766: Texture coordinates from other object do not refresh (8dd163160e411c).
- Fix T94111: Nurb normal calculation does not work (39ba82f25d1532).
- Fix T94812: Render layer sockets are missing after file load (145f1d1e0a59c1).
- Fix T94797: Crash when playing animation in eevee rendered view (1e61b759c7adc1).
- Fix T94867: Viewport render not updating when editing color ramp (c9a8975de5555c).
- Cleanup: Add utility macro to simplify using std::enable_if (bd8fa07a3df6d5).
- Cleanup: Move attribute operators to c++ (0a3de0305c35f3).
- D13757: Geometry Nodes: New Scale Elements node.
- D13825: Geometry Nodes: New Field at Index node.
- D13828: Geometry Nodes: Improve domain interpolations.
- D13819: Geometry Nodes: Add intermediate field node type. (WIP)
- D13827: Geometry Nodes: Experimental new Face Vertex/Edge node. (WIP)
- D13838: Attributes: Add operator to convert attributes to legacy attributes. (WIP)
Next Week
General geometry nodes work.
Week 168: January 16 - 20
- Fix T95006: Missing modifier update after frame change (9f8ae130af40825).
- Fix T94977: Muted link is not ignored in eevee (2486346f6f0418d).
- Geometry Nodes: Improve domain interpolation code (796e9d442cf8f96).
- Geometry Nodes: New Field at Index node (b88a37a490fa9e3).
- Geometry Nodes: New Scale Elements node (d034b85f3325379)
- Attributes: Add operator to convert generic attributes to other types (f6888b530ac81ab).
- D13827: Geometry Nodes: New Face Vertex/Edge node.
- D13739: UI: Show recently selected items at the top of searches.
- Code Review.
Next Week
Workshop in Amsterdam.
Week 169: January 24 - 28
This week I was in Amsterdam to discuss various topics surrounding a new hair system. More details will be published later.
- Assets: Allow creating preview image by rendering active object (12b26d21b00135).
- Assets: Enable node group assets (37848d1c8edf18).
Next Week
Geometry nodes and hair project.
Week 170: January 31 - 04
- Fix T95205: Remove attribute only once (525725753981a7).
- Fix T95314: Constant values not shown in spreadsheet (84dab8b5973c84).
- Fix T95262: Instances ignored in Frame Selected operator (217e0a2ce61592).
- Fix T95395: Dangling parent pointer when creating node group (2bd71b49e79325).
- Fix T95084: Evaluate all output attributes before changing geometry (a985f558a6eb16).
- Fix T94435: Remove anonymous attributes when applying modifier (4be87e97f48533).
- Fix T95489: Support writing to vertex groups with geometry nodes again (b8a634cb1dff73).
- BLI: Fix memory leak in VectorSet (bf8597febe2020).
- Cleanup: Avoid generating some functions in all translation units (b4563ab2dfe1e5).
- D14006: BLI: New C++ BitVector data structure (WIP).
- T95472: Prototype for Node Layers / Modifier Tree.
- Code Review.
- Experimented with a new nodes evaluator.
Next Week
Geometry nodes and hair project.
Week 171: February 07 - 11
- Fix T95578: Missing update when linking selected nodes (2f868e56470094).
- Fix T95543: Incorrect handling of implicit field inputs in ui (65d287a14a4081).
- Fix T95570: Missing task isolation when computing normals (de718605558f31).
- Fix T91840: Do not create invalid links when inserting a node (06ac5992618a75).
- Fix T95612: Only overwrite existing attributes with matching domain and type (7313a84c5acb40).
- Fix T95664: Missing update after changing active output node (87d2de88fdeec7).
- Fix T95624: Video texture not refreshing when changing offset in node (720d653b418bb5).
- Fix T95613: Remove anonymous attributes when converting object (25c40007968339).
- Fix: Missing null check (eb071e3d3cae00).
- BLI: Wrap parallel_invoke from tbb (7c10e364b2358f).
- Geometry Nodes: Show indicator when realize instances node is in legacy mode (b38f40e90475f3).
- D14006: BLI: New C++ BitVector data structure.
- Continued experimenting with a new geometry nodes evaluator.
- Code Review.
Next Week
Geometry nodes and hair project.
Week 172: February 14 - 18
- Fix T95749: Missing update when normal node changes (33dde170cecf04).
- Fix T95815: Missing null check when computing dupli dimensions (0622d2ec611dbd).
- Fix: Removing anonymous attributes before adding mesh to bmain (257ba175fa7e32).
- Curves: Add initial sculpt mode (07032dd218922d).
- Curves: Initial brush system integration for curves sculpt mode (61aaeb3745ad72).
- T95845: Use Copy on Write in more places.
- T95842: Prepare custom data API for attribute sharing.
- T95776: How to attach hair to a surface.
Next Week
Geometry nodes and hair project.
Week 173: February 21 - 25
- Fix T93784: Text and curve objects have no motion blur (4e78a7360e451b).
- Fix T95985: Crash when assigning a name for an output attribute (17e0634902b7fc).
- Curves: Initial brush implementations for curves sculpt mode (226f0c4fef7e77).
- Curves: Add surface object pointer (6e11cfc56af4e1).
- Paint: Decouple op->customdata from PaintStroke (141d5851d7d240).
- Paint: Pass operator to stroke update function (ed9f7630342f4d).
- BLI: Support accessing nth last element in Array/Span/Vector (9be720d85efb30).
- D14185: Nodes: Improve inserting nodes on existing links. (WIP)
- Code Review.
Next Week
Geometry nodes and hair project.
Week 174: February 28 - 04
- rB37d2c774c124: Fix T96073: Don't remove links when inserting reroute nodes.
- rB4a95c3466faf: Fix T96085: Repeated evaluation of geometry nodes when nothing changed.
- rB7935d3668a93: Fix T95479: Geometry nodes crash with cage display.
- rB2fb31f34af84: Fix T95692: Incorrect interpolated children particle hair.
- rB45079b169dc5: Fix T96160: Freezing when using multiple Handle Type Selection nodes.
- rB9216cf9cb589: Fix: Dangling internal links after removing sockets.
- rBc23ec04b4e30: BLI: Add scoped-defer utility to add RAII-like behavior to C types.
- rBac45540a348e: Curves: Add brush to add curves on surface.
- rB9789a6c6d968: Search: Take word order into account in string search.
- D14241: Curves: Initial comb/shrink/grow brushes.
- Code Review.
Next Week
Geometry nodes and hair project.
Week 175: March 07 - 11
- rB00f6e4c99051: Fix T96180: Driver in node tree not updating in real time.
- rB801d7b4921dc: Fix T95738: Wrong "Bottom" selection for cone without base.
- rB22a341d9d8d3: Fix T96292: Unable to set active material output using Python.
- rBAc34f0b90d49: Node Wrangler: Fix node outline position with ui scaling.
- rB579183567806: Geometry Nodes: Fix spline length node after recent refactor.
- rB4b598739c5c1: Curves: Disable stroke spacing for curve sculpt brushes.
- rB94d2470c416f: Curves: Increase default viewport resolution for curves object.
- rB10c11bb89736: Curves: Add initial comb, grow and shrink brush.
- rB3f91e7d7792e: Curves: Actually delete curves with Delete brush.
- D14277: Curves: Initial geometry nodes support for curves object (WIP).
- D14299: Fix T96278: Missing update after alpha socket connection.
- T96259: Curves Sculpt Brushes.
- Code Review.
Next Week
Geometry nodes and hair project.
Week 176: March 14 - 18
- rB82e7956f12aa: Fix T96396: Cannot set active node group output with Python.
- rBbf5e9ef2df3e: Fix T96402: Fix case when material output is contained in node group.
- rB79ae5f50149a: Fix T96386: Crash when changing shader to node group in properties.
- rB7509a741166c: Fix T96278: Missing update after alpha socket connection.
- rBd0968a9c5201: BLI: Add probabilistic rounding utility.
- rB3e16f3b3ef4b: BLI: Move generic data structures to blenlib.
- rB871148363282: BLI: Generalize converting CPPType to static type.
- rB2252bc6a5527: BLI: Move CPPType to blenlib.
- rBb6702aa604f2: Curves: Separate sculpt brushes into separate files.
- rB46b35c683688: Cleanup: Remove accidental shallow mesh copy.
- D14340: Curves: New Add brush.
- D14376: Curves: Improve Comb brush. (WIP)
- Code Review.
Next Week
Geometry nodes and hair project.
Week 177: March 21 - 25
- rBceaa787e425a: Fix T96420: Set ID node not working for instances.
- rBe0ce1c45f840: Fix T96577: Setting curve handles not working correctly with multiple curves.
- rB87a0770bb969: Fix T96361: Missing update when changing texture mapping properties.
- rBa58be397e2bf: Curves: New Add brush.
- rBd67f9820b8f8: Curves: Improve Comb brush.
- D14408: Curves: Improve Snake Hook brush.
- D14441: Curves: Support converting curves to legacy hair system.
- Code Review.
Next Week
Geometry nodes and hair project.
Week 178: March 28 - 01
- rB1cdf8b19e588: Fix T96957: creating paint curve crashes
- rB2202259e9c1f: Fix T96909: crash when assigning new node group to group node
- rBfced604acfc9: Curves: improve Snake Hook brush
- rB3656e66ac24d: Curves: support converting curves to legacy hair system
- rBd7c644211898: BLI: support value initialization in CPPType
- rBc55afdf30b33: BLI: add utility to convert IndexMask to best mask type
- rBa264dff4fa7d: BLI: optimize Map/Set/VectorSet.clear methods
- rB3c6c15d67655: Functions: move loops into function builders
- D14474: Curves: New Grow/Shrink brush.
- D14515: Curves: Operator to snap curves to surface. (WIP)
- T96442: User manual entries for the first batch of curve sculpt brushes
- Code Review.
Next Week
Geometry nodes and hair project.
Week 179: April 04 - 08
- rB9743f7658207: Fix: accidentally swapped value with itself
- rBe40b0d52cfcc: Preferences: enable Duplicate Data for curves and point cloud objects
- rBfd5e5dac8946: Geometry Nodes: avoid data copy in store named attribute node
- rB50869b408b20: Curves: operator to snap curves to surface
- rB434521a9e2cc: Curves: improve Add menu for new curves object
- rB30f9ebb64441: Curves: expose convert to particle system operator in sculpt mode
- rB190334b47df4: Curves: new Grow/Shrink brush
- rBee3f71d747e3: Functions: allow for better compiler optimization
- rB120a17a45a6d: BLI: add CPPType utility to copy elements to a shorter array
- rBa5beca7ba0da: BLI: inline fast path of IndexRange::as_span
- rB384a02a214ca: BLI: add missing materialize methods for virtual arrays
- rB2aff04917f9e: Functions: parallelize materializing arrays after field evaluation
- rB67c42e7f034a: Functions: optimize simple generated multi-functions
- Started generalizing devirtualization for better performance and reduced code duplication.
- Code Review.
Next Week
Geometry nodes and hair project.
Week 180: April 11 - 15
- rBc71013082d09: Geometry Nodes: show used named attributes in nodes
- rB2839fe9a4d30: Curves: initial geometry nodes support for curves objects
- rBc9574412c7e3: Curves: fix some issues with operator to convert to particle system
- rBe0c8d0913b96: Curves: remove Test1 brush
- D14647: Auto-save improvements. (WIP)
- D14628: Geometry Nodes: Refactor array devirtualization. (WIP)
- Worked on a design for attribute name semantics.
- Code Review.
Next Week
Geometry nodes and hair project.
Week 181: April 18 - 22
- rBdc7f88fd152f: BLI: prioritize detecting single values higher than detecting spans
- rBa2d32960b4de: BLI: optimize constructing new virtual array
- rBed971a19fad4: Curves: show sculpt tool settings in panels
- rB0178e694b72d: Geometry Nodes: show used named attributes in modifier
- rBc196ca37407d: Functions: fix procedure executor not writing output in correct buffer
- rBaca083fbf382: Nodes: raise exception when creating node group input/output fails
- rBb9799dfb8a78: Geometry Nodes: better support for byte color attributes
- D14628: Geometry Nodes: Refactor array devirtualization.
- T97443: Fix curves sculpt brush names ending with .001
- T97452: Attribute identification and semantics
- Code Review.
Next Week
Geometry nodes and hair project.
Week 182: April 25 - 29
- rB26afa23b3b81: Fix: use natural string sorting for attribute names
- rB654bc35bc805: Geometry Nodes: improve ui when trying to remove built-in attributes
- rB09710d5f2ae5: Geometry Nodes: show timing overlay above attributes overlay
- rB2b3f7c64819e: Geometry Nodes: improve attribute dependency overlay
- rB9a5359918004: Geometry Nodes: rename used attributes panel
- rBae94e36cfb2f: Geometry Nodes: refactor array devirtualization
- rB696370380145: Nodes: show overlays in node editor even when nodes are collapsed
- rBb7458f909cc2: Curves: add "Curves" to brush names
- rBf0f44fd92f16: Curves: support spherical delete brush
- rB7b16ddeb5a02: BLI: small optimization to retrieving CPPType from static type
- D14764: BLI: Improve parameter devirtualization (WIP).
- D14795: Curves: Support symmetry in curves sculpting brushes.
- Code Review.
Next Week
Workshop in Amsterdam.
Week 183: May 02 - 05
- rBbff9bf728e16: Fix T97774: don't crash when no brush is selected
- rB54b293237ea9: Fix T97375: changing node tree from Python is very slow
- rB2ba081f59bc6: Curves: disable Empty Hair operator when there is no active mesh
- rBedc92f779ec1: Curves: support converting legacy curves to new curves object
- rBb1517e26e288: Curves: use old Add > Curve menu for new curves object
- rB5b24291be1e0: Curves: move curve sculpt settings out of advanced panel
- rBad119d327e5b: Curves: change default name of curves object to Curves
- rB18bcd8321a68: Curves: show warning when using Add brush without surface
- rBdbba5c4df973: Curves: control number of control points in new curves
- rB09f769bde580: Curves: show Front Faces Only option in tools panel
- rB8d78c3152ef7: Curves: unify "Front Faces Only" name with mesh sculpt mode
- rB8bd0ed6bd2f3: Curves: show direction in panel for Grow / Shrink brush settings
- rB5162135e1470: Curves: add second experimental option for new curves tools
- rB7dc94155f620: Curves: support symmetry in curves sculpting brushes
- rBb54c6a20aaf5: Curves: fix brush position is not under mouse cursor
- D14864: Curves: Deform curves based on surface node. (WIP)
- D14877: Curves: Interpolate number of control points for new curves from neighboring curves. (WIP)
- D14875: Spreadsheet: Support showing enum value strings instead of integers.
- Code Review.
Next Week
Workshop in Amsterdam.
Week 184: May 09 - 13
- rB9913196470e6: Geometry Nodes: use .a_ prefix for anonymous attribute names
- rB2e8089b6bf50: Workaround for msvc compiler bug
- rB94a54ab5549b: Curves: add operator to convert hair particle system to new curves
- T95776: How to attach hair to a surface
- D14925: Attributes: Initial support for quaternion attributes.
- D14942: Curves: Draw legacy hair particle system as curves object. (WIP)
Next Week
Hair project and geometry nodes.
Week 185: May 16 - 20
- rBf517b3a29568: Fix T98157: improve animation fps with better check in depsgraph
- rB2e70af5cd527: Fix T97761: incorrect mixing of integers
- D14942: Curves: Draw legacy hair particle system as curves object. (WIP)
- D14972: Curves: New Pinch brush (WIP).
- D14993: BLI: Use no_unique_address attribute.
- T95776: How to attach hair to a surface
- Code Review.
- Worked more on design and implementation of a new more versatile evaluator for geometry nodes.
Next Week
Hair project and geometry nodes.
Week 186: May 23 - 27
- rBa5409d2b5941: Fix T98316: geometry nodes stop updating after duplication
- rB2f2d13b8c664: Fix T97237: dragging custom node group asset adds broken node
- rBe07b1b831639: Fix T98317: equal vs not-equal modes in compare node are not exact opposites
- rB2ea6a0dd4d8e: Fix T98328: missing depsgraph update after adding node group
- rB174c3ffb4adf: Fix T98268: replace string node des not handle empty strings correctly
- rBf29ff7fb7e19: Fix T98152: Named Attribute node changes data type for non-existant attributes
- rBa337e7738fbf: BLI: use no_unique_address attribute
- D15016: Curves: Make tangent computation more robust against duplicate points.
- D14934: Curves: Add float selection in sculpt mode
- D14972: Curves: New Pinch brush (WIP).
- D15033: Nodes: Add separately allocated run-time data for bNodeTree.
- T98366: Active Attributes
- T95776: How to attach hair to a surface
Next Week
Hair project and geometry nodes, and will be in Amsterdam half the week.
Week 187: May 30 - 03
- rBdc389a61529d: Fix T98454: subdivision doesn't propagate int attributes
- rB0f47506cde50: Fix T98501: setting node socket default value is very slow
- rB899ec8b6b803: Curves: use uv coordinates to attach curves to mesh
- rB2f77b2daaccf: Nodes: call init function for new node trees in ntreeAddTree
- rBbb0fc675822f: Nodes: add separately allocated run-time data for bNodeTree
- rB6a59cf053091: Nodes: add separately allocated runtime data for nodes and sockets
- rB5c80bcf8c2fb: Functions: speedup preparing multi-function parameters
- rB9e43a57d22df: Cycles: fix missing attribute update
- rBa094cdacf89a: BLI: fix memory error when moving VArray_Span
- D15082: Allocator: Improve allocator usage in C++ containers. (WIP)
- D15101: Attributes: Store default uv map as string on Mesh. (WIP)
- D15134: Curves: Prototypes for various features surrounding the new curves object.
- T98492: Geometry Nodes Evaluator 3.0
Next Week
More hair and geometry nodes discussions.
Week 188: June 06 - 10
Was in Amsterdam still.
- rBf49efed9533b: Curves: fix transforms in Add brush
- rBb69aad60bda2: Curves: use root/tip radius of the first curve in the viewport
- rB1a71f9d2b817: Curves: use radius of middle point to determine curve shape
- rBcc1cc46099d7: Fix: incorrect curve parameter for catmull rom curves
- D15134: Curves: Prototypes for various features surrounding the new curves object.
Next Week
Hair project and geometry nodes.
Week 189: June 13 - 17
- rB49b068bc639c: Fix T98847: missing null check in versioning code
- rBdc11e1164a07: Fix T98796: avoid unnecessary mesh copy
- rB30f244d96f16: Fix: curves have incorrect resolution attribute after realizing instances
- rB75489b5887cd: Geometry Nodes: tweak Volume to Mesh threshold declaration
- rBb8bd304bd453: Geometry Nodes: speedup Separate XYZ node
- rBe903403b4129: Curves: support adding keymap items for operators
- rB133095fff434: Curves: refactor Add brush
- rBd48735cca2c6: Functions: speedup multi-function procedure executor
- rBb7e193cdada3: BLI: avoid unnecessary allocation when converting virtual array
- T98845: Access original data from a geometry object
- D15134: Curves: Prototypes for various features surrounding the new curves object.
- T98940: Texture nodes CPU evaluation design
- Helped with D15198: Geometry Nodes: Volume Cube node
Next Week
Hair project and geometry nodes.
Week 190: June 20 - 24
- rB06b212c44603: Fix: assert when deleting all curves
- rB3237c6dbe877: Fix: crash when converting zero legacy curves
- rBd2e4bd79950f: Curves: extract surface brush sampling into separate function
- rBb513c89e8450: Functions: avoid using Map for small values
- rBef8bb8c0d524: Functions: improve span buffer reuse in procedure execution
- rB22fc0cbd6966: BLI: improve support for trivial virtual arrays
- rBaf983a3eef49: BLI: add min_inplace and max_inplace functions
- rB2a8afc142f72: BLI: improve check for common virtual array implementations
- D15134: Curves: Prototypes for various features surrounding the new curves object.
- D14864: Curves: Deform curves based on surface node. (WIP)
- D15280: BKE: New attribute API (WIP).
Next Week
Hair project and geometry nodes.
Week 191: June 27 - 01
- rBc96f2778f050: Fix: sampling points on mesh surface generates too many points
- rB416aef4e13cc: Curves: New tools for curves sculpt mode.
- rBeff62ea8abac: Geometry Nodes: remove warning in Points node
- rBdfea5e24ad43: BLI: add kdtree range search method that accepts c++ lambda
- rBc51b8ec86364: BLI: add Vector.append_and_get_index with rvalue parameter
- rB5d9ade27de54: BLI: improve span access to virtual arrays
- rBab444a80a280: BLI: refactor length parameterization
- D14864: Curves: Deform curves based on surface node. (WIP)
- D15280: BKE: New attribute API (WIP).
- Looked into gdb pretty printing.
Next Week
Hair project and geometry nodes.
Week 192: July 04 - 08
- rB05b38ecc7835: Curves: support deforming curves on surface
- rBc46d4d9fad5e: Curves: move curves surface transforms to blenkernel
- rBb876ce2a4a46: Geometry Nodes: new geometry attribute API
- rBb98d116257ae: BLI: use a slightly less trivial reverse uv sampler
- rB8f0907b79701: BLI: add float3x3 * float3 operator overload
- rB6636edbb0094: BLI: improve reverse uv sample in edge cases
- rBba62e20af67e: BLI: make some spans default constructible
- D15378: Functions: More clearly separate fields from multi-functions.
- D15401: Cleanup: Remove unused get_cage_mesh parameter.
- D15407: Curves: Sculpt on deformed curves (WIP).
- Committed node wrangler patches.
Next Week
Hair project and geometry nodes.
Week 193: July 11 - 15
- rB3935bf255e33: Fix T99677: crash when convex hull node is used on empty mesh
- rB6e6da22eb0f4: Fix: crash when iterating over all attributes
- rBd58072caf4ab: Fix: missing geometry copy before modifying it
- rB02aefa765963: Fix: wrong node name in menu
- rBd0a552b5c602: Fix: set dangling pointer to null
- rB1c382a4940c6: Curves: improve error checking in deform curves on surface node
- rB44e530e1b107: Geometry Nodes: fix face corner to edge attribute interpolation
- rB96cc6030375b: Geometry Nodes: update curve type counts after realizing instances
- rBc8a07ef66311: BLI: fix finding indices from virtual array
- D15440: Geometry Nodes: New uv map based attribute transfer mode.
- D15407: Curves: Sculpt on deformed curves (WIP).
- D15460: Textures: Example for using field evaluator for texture nodes (WIP).
Next Week
Hair project and geometry nodes.
Week 194: July 18 - 22
- rBbeb746135dbe: Fix T99830: missing update after reordering node group sockets
- rBd53ea1d0af58: Fix T99905: wrong toposort when the node tree is cyclic
- rB5da807e00fb7: Fix: Store Named Attribute node not working when attribute did not exist
- rB2232855b50e9: Curves: align surface and curves object in Empty Hair operator
- rBecf4f4a71f1f: Curves: fix uninitialized curve type when adding new curves
- rB538da79c6d17: Curves: fix applying materials when applying modifier
- rB1f94b56d7744: Curves: support sculpting on deformed curves
- rB2034e8c42dd9: Geometry Nodes: add debug check for whether AttributeWriter.finish is called
- rB3ea91cecc939: Cleanup: remove unused get_cage_mesh parameter
- D15491: Nodes: Move NodeTreeRef functionality into node runtime data. (WIP)
- D15493: Curves: Prototype for node group operators.
- T99907: Support user defined crazy space for curves.
- T99908: Crazy-space support for meshes in geometry nodes
Next Week
Hair project and geometry nodes.
Week 195: July 15 - 29
- rB72fb92ded8e8: Fix T99961: crash when spreadsheet shows volume grids
- rB6f1cdcba8528: Fix T99929: lattice modifier looks up vertex group index in wrong place
- rB5feb3541f459: Fix T99889: Fillet Curve node uses wrong radius
- rB2c81b4d4cf75: Fix T99880: no node timing for frames in node groups
- rBb9e66af686f5: Fix T99851: Subdivide Curve node does not initialize attributes of end point
- rB332d547ab7bc: Fix T99850: incorrect tangents on evaluated bezier curves
- rBd56778565834: Fix T99816: renaming attribute works incorrectly
- rBc5712c6795e7: Fix T99373: add some padding in spreadsheet vector columns
- rBcaf907626d2c: Fix T99271: modifier errors are not cleared
- rBac1554bcf63e: Fix T98982: cannot change default value of some node group input types
- rB72f77598a245: Fix T98798: tag collection geometry when changing instance offset
- rB5945a90df99b: Fix T98788: bad first curve tangent when first points have same position
- rB6e5eb46d7339: Fix T100026: crash with zero-sized attributes
- rB84272ce19a57: Fix: add missing return
- rB84a3ff63d013: Fix: missing evaluated offsets in Resample Curve node
- rB0dcfd93c6eeb: Fix: curves edit hints not propagated in Join Geometry node
- rBcacdea7f4a5b: Fix: crash when accessing attributes from multiple threads
- rB1c05f30e4dcb: Curves: add warning when invalid uv map is used when adding curves
- rBaa7d13034701: Curves: improve handling of empty surface meshes
- rBccb9d5d30763: Curves: enable density brush when first entering curves sculpt mode
- rB53113a2e5719: Geometry: detect when the sample uv is in multiple triangles
- rBL62979: Geometry Nodes: update curve tangent test
- D15536: Curves: Add CurvesGeometry.radii()
- D15545: Fix T99624:
is_animatable
of id properties is false - T100020: Curve and Mesh Topology Inputs
Next Week
Vacation.
Week 196: August 08 - 12
Attended Siggraph in Vancouver.
Week 197: August 15 - 19
Was sick this week.
- rB16084066009e: Fix: nurbs basis cache not computed before it is used
- D15491: Nodes: Move NodeTreeRef functionality into node runtime data.
Week 198: August 22 - 26
Still recovering from last week.
- rB4fecf652e24e: Fix T100568: triangulate node resets vertices to rest position
- rB56205e9f31d5: Fix T100579: internal links are drawn when sockets are hidden
- rB5d67b524412d: Fix T100562: Realize Instances node crashes when there is an attribute name…
- rB95464a842cc1: Fix T99932: video in node group does not play
- rB1663530408fd: Fix T100318: handle custom nodes in field inferencing more gracefully
- D15491: Nodes: Move NodeTreeRef functionality into node runtime data.
- D15775: Nodes: Add persistent identifier to nodes (WIP).
Week 199: August 29 - 02
- rBe3a6a2f41284: Fix T99004: scaling volume down results in crash
- rB34e30baedf7e: Fix T100673: crash when using slide brush without attachment info
- rB6177d9f0c898: Fix: reverse uv lookup fails due to floating point accuracy issues
- rB25e307d725d0: Nodes: move NodeTreeRef functionality into node runtime data
- Described a possible undo improvement in T98574.
- Worked on the geometry nodes evaluation refactor.
- Started working on an attribute overlay.
- Fixed some issues after the NodeTreeRef refactor.
- Spent a fair amount of time doing code review (e.g. D15488, D15617)
Week 200: September 05 - 09
- rB8000d5268423: Fix T100796: wrong tangents on bezier splines with duplicate points and handles
- rB1339fec22a1a: Nodes: fix memory leak
- rBd481fb10efb9: Nodes: fix handling cyclic node trees
- rB17d8028181e2: Nodes: add owner_tree method to nodes
- rB46642507ae65: Geometry Nodes: improve printing geometry set for debugging
- rB967664d1ee2f: BLI: new C++ BitVector data structure
- rBfa0f18b37d11: Cleanup: readfile: use correct type
- D15914: Geometry Nodes: New evaluation system.
- D15896: Attribute Overlay (WIP).
- Started getting used to the Vulkan API.
- Experimented with a new ChunkList data structure.
Week 201: September 12 - 16
- rB4d67a995d91f: Fix: crash when evaluating geometry nodes after deleting an unlinked node
- rBcf56b8be37c0: Fix T101166: crash when creating group input socket
- rB62cee2400348: Fix: crash when changing to viewer context in spreadsheet
- rB4130f1e674f8: Geometry Nodes: new evaluation system
- rB7549e0c5ae36: Geometry Nodes: use stringref instead of string in logger
- rB8b26349d5777: BLO: move blenloader to C++
- rB5c4295ee6f92: Workaround for msvc compiler bug
- D15896: Attribute Overlay (WIP).
- D15976: Geometry Nodes: Lazy threading.
- Learned more about the GPU and Draw API in Blender.
- Code Review.
Week 202: September 19 - 23
- rBe746999aa937: Fix T101309: crash when executing geometry nodes without logger
- rB2b4cb893e7eb: Fix T101214: hidden link can cause cycle in node tree
- rBc8ee70c96200: Geometry Nodes: decentralize implicit input definitions
- rB5c81d3bd4691: Geometry Nodes: improve evaluator with lazy threading
- rBe5d4afd5bac7: Depsgraph: generalize passing parameters to depsgraph object iterator
- rBe345686cb7f4: View3d: move space_view3d.c to c++
- rB2fd63efd0ea8: BLI: simplify removing elements from containers with predicate
- rBbc88f2006d81: Cleanup: remove vector adaptor data structure
- rBc6e70e7bacf8: Cleanup: follow C++ type cast style guide in some files
- rB2fffd7d7a85d: Move overlay engine to C++
- rB939643741767: Move workspace.c to C++
- D15954: Geometry Nodes: Viewport preview (WIP).
- Code Review.
- Experimented with an attribute api that could potentially replace CustomData (Github).
Week 203: September 26 - 30
- rBdb0ef8b00d3c: Fix T101410: ignore dangling reroute inputs
- rB2fc136427d55: Fix T101451: curve attribute overlay disappears when origin is out of view
- rBb21154078365: Fix: bump subversion to avoid corrupted files
- rBb70b02ee429d: Fix: Spline Parameter node produces NaN when curve is a single point
- rBc55d38f00b8c: Geometry Nodes: viewport preview
- rB5ffbabb24c8c: Nodes: fix missing updates with muted nodes and reroutes
- rB697e86a76199: View3D: move view3d_draw.c to c++
- D16069: Always show warning when opening files saved in a new version (Proposal).
- D16070: Potential Fix T101378: Missing update with complex node update functions.
- D15440: Geometry Nodes: New uv map based attribute transfer mode.
Week 204: October 03 - 07
Two weeks of vacation started on Tuesday.
- rB72ceb7dec136: Fix: crash when linked geometry node group is missing
- rBe65598b4fa20: Geometry Nodes: new Sample UV Surface node
- rB31ae3a501284: Geometry Nodes: set viewer overlay opacity default to 1
- D16137: Geometry Nodes: Separate Instances from InstancesComponent.
Week 205: October 17 - 21
- rB7abd79398d71: Fix T101642: crash when deleting group output inside node group
- rB91e85230f9c1: Fix T101660: crash when trying to propagate string attributes in some nodes
- rB9d710374bda4: Fix T101645: division by zero in fillet node
- rB8415bc9c80aa: Fix T101554: disable viewer node when corresponding modifier is disabled
- rB4b30ee773ce7: Fix T101316: workbench texture mode not working with geometry nodes
- rB5e0e5b134103: Fix T101215: Distribute Points in Volume node does not refresh on frame change
- rBe5425b566d0f: Geometry Nodes: separate Instances from InstancesComponent
- rB619ce8392b21: Depsgraph: wrong copy-on-write update after depsgraph rebuild
- rBa2fcfcabd742: Cleanup: add missing CPPType for MStringProperty
- D16283: Avoid pipeline stalls with lazy-evaluated caches (experiment).
- D16289: Fix T101536: Missing node tree updates after remapping id.
- D16304: Nodes: Restrict Python API on built-in nodes.
- D16305: Fix T100988: Flickering when using sculpt brush in drag dot mode.
Week 206: October 24 - 28
- rB53795877727d: Fix T101210: invalid internal node links lead to crash
- Various meetings and was at the Blender Conference
Week 207: October 31 - 04
- rBc29c61f840aa: Fix T102292: deadlock in geometry nodes evaluation with task isolation
- rB0697631929d9: Fix T102144: missing validation of spline resolution
- rB25c6444bad25: Fix T102153: crash when muting node group with active viewer
- rBf4e97bd67d97: Geometry Nodes: fix missing curve cache
- Participated in geometry nodes workshop in Amsterdam. More notes will be available soon.
Week 208: November 07 - 11
- rB79d8610d0406: Fix T102311: crash when opening node add menu with assets
- rB8ff71acd8410: Fix T102324: reverse curve node breaks crazy space editing
- rB52bd198153ed: Fix T100872: restrict Python API on built-in nodes
- rBc842a5a18716: Fix T101526: assert due to wrong node tree owner id
- rB1140e001a07b: Fix T102329: assert when cutting node tree link
- rBdc609d9f1f6e: Fix T100988: flickering when using sculpt brush in drag dot mode
- rB6295bdfd38d3: Fix T102340: crash when adding image file in node group
- rB84c66fe9db93: Fix T102406: OSL script node no longer updates its in and outputs
- rB57dd1b7799e7: Fix T102386: crash when trying to link sockets from different node trees
- rBc73ae711bf40: BLI: new basic CacheMutex
- rBa6c822733ac7: BLI: improve CPPType system
- rB024bec85f6ae: Depsgraph: simplify scheduling in depsgraph evaluator
- D16464: Fix T101979: Edge Angle node returns wrong sign (alternative)
- Worked on propagating information backwards during geometry nodes evaluation.
- Worked on refactoring field evaluation.
Week 209: November 14 - 18
- rB5c42e54f6ed7: Fix T101536: missing node tree updates after remapping id
- rB7b82d8f029cd: Nodes: move most runtime data out of bNode
- rB0ebb7ab41f85: Geometry Nodes: disable unreachable nodes in evaluator
- rBb4c3ea264439: Cleanup: move internal links of nodes to runtime data
- D16546: BLO: Use blender::Map in OldNewMap.
- D16547: DNA: Support versioning between inline buffers and pointers. (WIP)
- Moved a bunch of files to C++ to help with refactors.
- Worked more in new field evaluation and value request backward propagation.
Week 210: November 21 - 25
- rBa87d78860b3c: Fix T102693: adding shader node group to geometry nodes crashes
- rBb43bdd8ba28c: Fix T102751: missing tree update with muted nodes
- rB848dff1e4c69: Fix: assert when converting between types in geometry nodes
- rB3648fd9917db: Fix: node frame boundaries incorrect when opening files
- rB826535979a8b: Nodes: add non-const utility to find socket by identifier
- rB86ade3df5602: Nodes: move node registration to nodes module
- rB4f02817367d4: Nodes: remove bNodeTree->interface_type
- rB9f83ef2149e0: BLI: make different pointer types compatible in hash tables
- rB01e479b79041: Cleanup: simplify removing asset code
- rB356373ff7af9: Cleanup: move some data from bNodeSocket to run-time data
- rB5f626ac331ef: Cleanup: use more concise function names in function nodes
- D16596: Nodes: Refactor how socket positions are determined. (WIP)
- D16580: Cleanup: Remove ui linker hack.
- Moved some files from C to C++.
Week 211: November 28 - 02
- rB99c5146e9a7a: Fix T101433: crash when deleting hierarchy referenced by Collection Info node
- rBeae2917fde93: Fix: crash in node poll function due to missing null check
- rB57613630c7fa: BLO: use blender::Map in OldNewMap
- rB7b0829892794: BLI: use no_unique_address in BitVector
- rB85d9f1233931: BLI: increase default inline buffer capacity in BitVector
- rB39615cd3b779: BLI: add atomic disjoint set data structure
- rB88c6d824e78e: Nodes: ensure that node identifiers are larger than zero
- D16668: Fix T102882: Crash when there are link cycles and a viewer in a node group.
- D16647: BLI: Experiment with specializing hash tables for special key types. (WIP)
- D16666: Allocator: Try using OS to determine (peak) memory usage.
- D16667: Example for impact of atomics in allocator.
- D16637: Geometry Nodes: Output uv map from primitive nodes as anonymous attributes.
- D16642: Geometry Nodes: New Interpolate Curves nodes (WIP).
- Updated my Gcov Viewer extension for vscode to give better insights into the coverage data.
- Moved some files to C++.
Week 212: December 05 - 09
- rB83077d36834a: Fix: wrong pivot point output in String to Curves node
- rBccae00c9e239: Fix: memory leak in curve circle primitive node
- rB122d6d67e6a0: Fix: Points to Volume node crashes with too small radius
- rBa55c356a1c16: BLO: shrink old-new-map when it is cleared
- rBbf1791ba92d2: BLI: add clear-and-shrink method to more data structures
- rBa45284b855d4: BLI: remove deduplicated memory utility functions
- rB05bf5c4e0ea8: Nodes: simplify handling of function nodes in declaration
- rBc2ca30ea2419: Cleanup: avoid calling generic node update functions from versioning code
- D16711: BLI: Add TinyMutex class (WIP).
- Added many new regression tests for various nodes that had low test coverage before.
- Finished up Blur Attribute node from community contribution.
- Started working on anonymous attribute lifetime analysis.
Week 213: December 12 - 16
- rB5ffcd8779eb2: Fix: socket tooltip not showing when there was no type conversion
- rB28511ac6cf83: Fix T103294: bring back modifyMesh function for geometry nodes modifier
- rBf0dc4d67e56d: Geometry Nodes: support storing 2d vector attributes
- rBf879c20f72d9: Geometry Nodes: output uv map from primitive nodes as anonymous attributes
- rBc37e07bc01a4: Geometry Nodes: improve dot graph export of lazy function graph
- rB3aca0bc66a47: Geometry Nodes: simplify handling of invalid group interface sockets
- rBea7570989d2a: Cleanup: add utility method to get group input nodes
- rB719513dd9fe4: Tests: make mesh comparisons more strict
- rBL63139: Geometry Nodes: update tests with uv maps
- Continued working on anonymous attribute lifetime analysis.
- Code Review.
Week 214: December 19 - 23
- rB288d4c95459b: Fix: asset handle in context is always none
- rBb024577452f5: Fix: dangling attribute name pointer
- rB844b6e39826f: Nodes: use CacheMutex to protect topology cache
- rBddd24186d9e9: Geometry Nodes: avoid some overhead during field inferencing
- rB8fab53c023ef: BLI: add last time to scoped averaged time
- D16858: Geometry Nodes: Deterministic anonymous attribute lifetimes (WIP).
- D16862: Allocator: Improve multi-threaded allocation performance.
Week 215: December 26 - 30
- rB72b4f9191462: Fix T103526: crash when subsurface connects to Shader to RGB
- rBcc48610d2c55: BLI: improve support for using vectors as hash table keys
- rB7e4f9880722a: BLI: improve node graph export in dot format
- rBb6ca942e4773: Functions: support cycles in lazy-function graph
- rB4d39b6b3f491: Geometry Nodes: skip logging socket values for invisible trees
- rBa09accb496d3: Geometry Nodes: speedup compute context hash generation
- rBdba2d828462a: Geometry Nodes: avoid using enumerable thread specific on single thread
- D16858: Geometry Nodes: Deterministic anonymous attribute lifetimes (WIP).