User:Pablodp606/Reports/2020

June 29 - July 3

This week I continued working on sculpt vertex colors features and polishing. I also refactored the paint cursor drawing as part of the cleanup day.

Next Week

  • Continue working on sculpt vertex colors
  • Design and code the integration between sculpt and paint brushes

Patches

  • D8210 Fix Mesh filter and transform tool performance after a full mesh update
  • D8209 Sculpt/Paint: Add Paint Studio Light preset
  • D8208 Fix Sculpt Vertex Colors sample color changing brush alpha
  • D8207 Fix crash when using Mask by Color in Multires
  • D8206 Cleanup: Paint Cursor Refactor
  • D8196 [WIP] Enable persistent base for the Pose Brush fake neighbors
  • D8194 Sculpt: Multires switch sculpt level operator
  • D8191 Multires: Add function to check the vertex count of a mesh at a level
  • D8190 Sculpt: Change Multires relative subdivision levels set keymap
  • D8189 Fix subdivision_set operator not adding new subdivisions
  • D8185 Fix T78369: Sculpt Vertex Colors not rendering in EEVEE
  • D8175 Sculpt/Paint: Use different properties for alpha and sculpt strength
  • D8163 Sculpt: Improve fake neighbors searching

Commits

  • Fix Pose Brush crashing after disabling connected only in FK mode 17ba566018.
  • Sculpt: Mask By Color c5ec8d91bd.
  • Fix T78525: Status bar not reset after Edit Voxel Size 95f3397a68.
  • Cleanup: Add functions to check the first brush step and symmetry passes 6358c7754c.
  • Sculpt: Refactor persistent base to make it usable from other tools a3e6b7c2ce.
  • Fix T78201: Paint color not matching the UI and color picker db7d370657.
  • Sculpt: Color filter fill mode 21c2a64e79.
  • Sculpt: Pose Brush option to affect loose parts 438bd82371.
  • Remove Threaded Sculpt option 5d31ef0820.
  • Fix T78323: Enable Unified and Secondary colors for Scultp Vertex Colors bf87df3485.
  • Fix Smear Tool too weak on high poly meshes 3118636f81.

June 22 - June 26

This week I committed the sculpt vertex colors, so I spent most of the time fixing bugs and implementing the remaining tasks for 2.90 (multires support for sculpt vertex colors)

Next Week

  • Continue working on sculpt vertex colors
  • Start designing and coding the remaining tools for sculpt vertex colors

Patches

  • D8136 Fix T78323: Enable Unified and Secondary colors for Scultp Vertex Colors
  • D8135 Fix T78242: Crash when using a Sculpt color tools that needs connectivity for the first time
  • D8134 Fix Smear Tool too weak on high poly meshes
  • D8133 Fix Paint Brush adding a step step in the first iteration when symmetry enabled
  • D8111 Fix T78201: Paint color not matching the UI and color picker
  • D8104 [WIP] Sculpt Vertex Colors: Multires support

Commits

  • Fix sample color operator not updating the color in the UI 06e24f6c91.
  • Fix Color Filter not updating during modal operator 4817426b3e.
  • Fix Edit Voxel Size label rotation and scale in rotated objects 0c98bb75cb.
  • Fix artifact in Clay Strips when producing large deformations 560a73610b.
  • Fix Surface Smooth not taking the sculpt mask into account 255638d223.
  • Fix T78188: Sculpt mask glitching after using sculpt vertex colors 2b522e3345.
  • Fix T78192: Draw Face Sets tool not updating the viewport color 0f7851ee79.
  • Cleanup: Replace GSet with Edgeset in Cloth Brush 5c8e349c28.
  • Sculpt Vertex Colors: Initial implementation f7bbc7cdbb.

June 15 - June 19

This week I updated and finished the major features for 2.90 (I will start committing them next week). I also made the cloth brush work with angular constraints to control the size of the folds, but it still does not work with multires so I'm not sure if it is going to be ready for 2.90.

Next Week

  • Commit the patches for the new features (Vertex colors, Pose Brush for multiple meshes, cloth collisions) and fix all bugs that may appear.

Patches

  • D8071 Fix Surface Smooth not taking the sculpt mask into account
  • D8069 Edit Voxel Size: Move the label to the center of region when not visible
  • D8068 Fix Edit Voxel Size label rotation and scale in rotated objects
  • D8062 [WIP] Sculpt: Cloth tension, shearing and bending properties
  • D8038 Voxel Remesh: Recalculate normals only on new faces
  • D8036 Cleanup: Replace GSet with Edgeset in Cloth Brush
  • D8029 Sculpt: Option to not modify hidden Face Sets in Face Sets Edit

Commits

  • Fix T77328: Crash on undo Draw Face Sets stroke with dyntopo active 2d9ab46e0b.

June 8 - June 12

This week I finished the pose brush for multiple meshes and I did improvements in the cloth brush that end up being major features instead of focusing on attribute painting (waiting for the meeting on Monday).

Next Week

  • Try to finish some improvements left in the cloth brush (angular constraints are still not working)
  • This week I also investigated the performance of the voxel remesher. Updating the normals often takes 60% of the time, so this should be possible to improve.

Patches

  • D8019 Sculpt: Cloth Brush/Filter Collisions
  • D8004 Fix artifact in Clay Strips when producing large deformations
  • D8003 Sculpt: Refactor persistent base to make it usable from other tools
  • D7984 Fix Pose Brush FK mode detecting wrong rotation origin
  • D7960 Remove Threaded Sculpt option

Commits

  • Sculpt: Fix creation of repeated constraints in the Cloth Brush 23d0361b30.
  • Sculpt: Face Set Edit Operator cb9de95d61.
  • Sculpt: Pose Squash and Stretch deform mode 77789a1904.
  • Voxel Size Edit: Fix text not readable when zooming in the viewport 075156de9f.

June 1 - June 5

This week I made some improvements for the current tools and I spent some time with the UI and RNA code for attributes, but I'm still not sure how to do it

Next Week

  • Finish the Pose Brush for multiple meshes
  • Do some small tweaks to make the cloth filter more usable
  • Try to start implementing the attribute UI

Patches

  • D7942 Fix Edit Voxel Size label in preview
  • D7941 Voxel Size Edit: Calcualte the preview text size in screen space
  • D7934 Sculpt: Pose Squash and Stretch deform mode
  • D7924 Fix T77328: Crash on undo Draw Face Sets stroke with dyntopo active
  • D7921 Fix strength of Face Sets Draw tool
  • D7911 Sculpt: Avoid reading and writing coordinates at the same time in smooth

Commits

  • Object: Switch Object operator 79cdc87432.
  • Disable gravity in Draw Face Sets brush f2a0532111.
  • Fix Sharpen mesh filter in Multires 15ed2f841c.
  • Fix T76776: Implement vertex_visibility_get for PBVH_GRIDS 85098bdb89.
  • Cleanup: Always use pbvh in PBVH BKE files 572c472754.
  • Sculpt: Improve twist axis in Pose FK mode b08caeb92b.
  • Cleanup: Remove unused grab delta in Pose Brush ca09625dcc.

May 25 - May 29

This week I implement some new sculpt tools and I started looking into splitting the vertex paint patch to follow the attribute design task

Next Week

  • Continue with vertex/attribute paint

Patches

  • D7889 Cleanup: Always use pbvh in PBVH BKE files
  • D7845 Sculpt: Cloth Brush Soft Body strength property

Commits

  • Sculpt: Cloth Filter 1d4bae8566.
  • Sculpt: Pose Brush Face Sets FK mode 3778f168f6.
  • Fix mesh filter using the wrong face set as active 91fb07f361.
  • CD_PROP_COL datalayer d7282537f0.
  • Cleanup: Use bitmaps insteand of bool and char arrays 0b793514fa.
  • Update the default Face Set when creating Face Sets from visible 7e80aa7ca6.
  • Fix Cloth Brush grab deformation mode 18f33f293b.
  • Fix Pose Brush origin position with large brush size 9aea7dc7c6.
  • Fix naming in the PBVH neighbor iterator macro 9b0f65c4a6.
  • Fix PBVH API returning wrong normal when using shape keys and modifiers 5f63344e84.
  • Sculpt: Pose Brush Scale/Transform deform mode 6d4dc22e17.

May 18 - May 22

Another bug fixing week.


Next Week

  • Implement some new features for the cloth brush and pose brush
  • Start splitting the vertex paint patch for review

Patches

  • D7810 Fix T76862: Modify grids and base mesh directly when using mask flood fill
  • D7809 Fix T76776: Implement vertex_visibility_get for PBVH_GRIDS
  • D7808 Cleanup: Use sculpt API in smooth PBVH_FACES implementation
  • D7805 Fix PBVH API returning wrong normal when using shape keys and modifiers
  • D7774 Fix naming in the PBVH neighbor iterator macro
  • D7773 Fix Pose Brush origin position with large brush size

Commits

  • Fix T75977: Lower the merge limit in the bisect/mirror operation in symmetrize aa02a05bc7.
  • Fix sculpt mask interpolation in subdivisions ff7a30d928.
  • Fix T76397: Missing value property on Clear Mask pie menu 7c9c8cee7b.

May 11 - May 15

This week I only did bug fixing.

Next Week

  • More bug fixing

Patches

  • D7756 Fix Cloth Brush grab deformation mode
  • D7726 Fix T76655: Change Edit Voxel Size shortcut to R
  • D7699 Fix T76397: Missing value property on Clear Mask pie menu

Commits

  • Sculpt: Render Face Sets always as flat shading 78e3b7c28d.
  • Fix T76654: Wrong text in Face Set boundary automasking brush property 5445353095.
  • Fix T76488: fix mask extract poll function 9253386dcb.
  • Fix T75347: Update cloth brushes in versioning with a valid mass value 05dd9ca06c.
  • Fix T76306: Disable use creases when there is displacement data ce35cfd208.
  • Fix T75968: PBVH raycast returns wrong active vertex bf0a554114.
  • Fix T75743: Implement restore for brushes that modify their own data e6fab27d6a.

May 4 - May 8

This week I did some work on the brush management UI, continued improving the vertex color patch and did some experiments on how to integrate automasking with future features.

Next Week

  • Continue improving the vertex color patch. After testing the most noticeable issue is the lack of preview in the viewport with constructive modifiers enabled.
  • Prepare some videos and demos for the release page and release notes of 2.83

Patches

  • D7646 Sculpt: Add pinch radial and perpendicular modes to Draw Sharp
  • D7645 Fix T76488: fix mask extract poll function
  • D7644 Multires: Option to not refit the base mesh when using Apply Base
  • D7640 Fix sculpt mask interpolation in subdivisions
  • D7621 [WIP] WM: Brush Palette operator
  • D7616 Sculpt: Global Brush Palette

April 27 - May 1

This week I finished some remaining Multires tasks and updated the vertex colors patch with multiple fixes while trying to make it closer to the discussed design.

Next Week

  • Continue testing and fixing the vertex colors patch
  • Make a minimum version of the Vertex Info Management which at least fixes the automasking performance and bugs.

Patches

  • D7606 [WIP] Sculpt: Convert to Multires
  • D7582 Multires: Delete Lower
  • D7561 Overlays: Add Multires Levels info to Stats
  • D7560 Object: Switch Subdivision Level operator

Commits

  • Fix crash when switching subdivision level in Multires d44f323df5.
  • Multires: Subdivide Simple and Subdivide Linear 134619fabb.
  • Multires: Unsubdivide and Rebuild Subdivisions f28875a998.
  • Multires: Enable sculpting in all subdivision levels d4c547b7bd.

April 20 - April 24

This week I updated some patches, fixed some bugs and made patches for the Sculpt Mode with multiple objects project for 2.90. I also started experimenting with geodesic distances, as it is needed to make some of the new tools work properly. I'm still not sure how to make this work with Multires. I also rebased the lanpr branch on top or 2.90, but it is still crashing.

Next Week

  • Check the status of the vertex colors patch
  • Continue with UI/UX projects related to Multires

Patches

  • D7530 Update the default Face Set when creating Face Sets from visible
  • D7524 Tweak the pressure/size dynamic range of Clay Strips
  • D7522 Add Multires experimental features
  • D7516 Workbench: Darken inactive objects
  • D7510 Object: Switch Object operator
  • D7508 Fix Sharpen mesh filter in Multires
  • D7495 Fix T75977: Lower the merge limit in the bisect/mirror operation in symmetrize
  • D7485 Fix T75968: PBVH raycast returns wrong active vertex
  • D7480 Cleanup: Use bitmaps insteand of bool and char arrays

April 13 - April 17

This week I updated the unsubdivide patch and I made the initial patch for subdivide simple. I also started coding the vertex info management and designing some new tools for 2.90. I also fixes some bugs in 2.83 and in the Sculpt Vertex Colors patch.

Next Week

  • Continue updating the multires patches
  • Finish the vertex info management and try to do some prototypes for new tools

Patches

  • D7471 Sculpt: Vertex Info management
  • D7442 Fix T75743: Implement restore for brushes that modify their own data
  • D7415 Sculpt: Multires Subdivide Simple

Commits

  • Fix T75778: Missing ME_VERT_PBVH_UPDATE in Surface Smooth 28f667c7c4.
  • Fix T75766: Smooth mask using mesh vert indices direclty 7e72b74713.
  • Fix T75329: Missing show_face_sets checks for Multires 44a386b88c.
  • Fix T75662: Surface Smooth filter not checking face sets 65aaa13a00.
  • Fix crash on Multires Face Set visibility sync 35cbf3b5dc.
  • Sculpt: New Layer Brush 47f46637be.
  • Sculpt: Sharpen Mesh Filter 7dd8c889f1.
  • Fix Shift-Smooth mode using wrong parameters f881ff129f.
  • Fix automasking using the wrong active face set f12589d335.
  • Fix Randomize Face Sets Colors not working in Multires bb9a282c7e.
  • Fix T75104: Update Face Sets visibility when entering Sculpt Mode bf49bb354f.

April 6 - April 10

This week I worked most of the time in unsubdivide and rebuild subdivisions, as it should be available as soon as possible to let people properly test multires for 2.83. I also did some other minor patches and fixed depth detection and orthographic views in the trimming tool.

Next Week

  • Finish Unsubdivide/Rebuild subdivisions

Patches

  • D7403 Sculpt: Improve Multires Fast Navigate rendering
  • D7374 Sculpt: Pose Brush Scale/Transform deform mode
  • D7372 Sculpt: Multires Unsubdivide
  • D7367 Sculpt: Face Set Edit Operator
  • D7362 Fix automasking using the wrong active face set
  • D7354 Fix Shift-Smooth mode using wrong parameters
  • D7353 Sculpt: Render flat shading as triangles

March 30 - April 3

This week I finished the pose brush for multiple meshes, the voxel mode for the remesh modifier and the sharpen mesh filter. I fixed some bugs and precision issues in the face sets tools. I also wrote the first version of the trimming tool.

Next Week

  • Finish the trimming tool
  • Fix the bug in shift-smooth with different stroke types

Patches

  • D7335 Sculpt: Sharpen Mesh Filter
  • D7312 Fix Randomize Face Sets Colors not working in Multires
  • D7306 Sculpt: Trimming tool
  • D7282 Sculpt: Pose Brush Affect Loose Parts property

Commits

  • Cleanup: Move Detail Operators and Dyntopo to their own files 7c0e285948.
  • Cleanup: Move Mask Filter and Mask Expand to their own files 17931f3b51.
  • Cleanup: Move Mesh Filter, Smooth and Automasking to their own files f2f30db98d.
  • Cleanup: Move all sculpt transform functionality to its own file 82774a9d24.
  • Cleanup: Missing clang format in previous commit 200cc531bd.
  • Cleanup: Move all Face Set functionality to its own file cfc8d73546.
  • Sculpt: Delay Viewport Updates b8d9b5e331.
  • Sculpt: Add global automasking options for all brushes 1f745e2c72.
  • Scultp: Face Set boundary automasking 7c88968c89.
  • Fix Face Sets painting and selection precision 009dde69cd.
  • Fix T75121: Memory leak in Surface Smooth 6cc4c68dad.
  • Fix mesh boundary automask curve falloff 43f748a32f.
  • Multires: Initial Face Sets support da3cb514e5.
  • Add Voxel Mode to the Remesh modifier 6c036a65c9.
  • Voxel Remesh: Edit Voxel Size operator 1c1a14dcdf.

March 23 - March 27

This week I updated and committed most of the patches planned for 2.83 and started working on 2.90 projects like the new grab brushes and the pose brush with support for multiple meshes. I also implemented the face sets support in the pose brush.

Next Week

  • Finish the grab brush and the pose brush
  • Do some minor tweaks to the brushes

Patches

  • D7262 Fix mesh boundary automask curve falloff
  • D7259 Fix Face Sets init breaking the sculpt symmetry
  • D7254 Fix T75121: Memory leak in Surface Smooth
  • D7249 Fix T75104: Update Face Sets visibility when entering Sculpt Mode

Commits

  • Sculpt: Pose Brush Face Sets origin mode 9120191fe2.
  • Rename Edge Automasking to Mesh Boundary Automasking 4c0cca78eb.
  • Sculpt: Weight normal and area sampling towards the brush center 015c084bda.
  • Fix T74637: Reset face set data when disabling dyntopo 7eacda5a2b.
  • Sculpt: Create Face Set by Edit Mode Selection 48ea173a7d.
  • Sculpt: Face Sets Init operator 99530ef4ed.
  • Sculpt: Surface Smooth Brush and Mesh Filter a218be3080.
  • Sculpt: Use uchar to store the sculpt mask in the GPU f5ac118fb3.
  • Fix T74780: Face sets operators not aware of SCULPT_FACE_SET_NONE 458f50ba73.
  • Fix T74761: Reimplement vertex to face sets visibility sync 83947ea253.
  • Fix T74899: Add Draw Face Sets brush to versioning defaults c286fa309e.
  • Fix T74692: Do not draw nodes with the default face set 32bb848838.
  • Fix T74808: Division by 0 in Cloth brush solver with overlapping vertices c32cf06e42.
  • Fix T75089: Missing pmap when using Face Sets in the mesh filter 4ff3d5aded.

March 16 - March 20

This week I finalized the implementation of the two most important multires pending projects (automasking and face sets). I also implemented a few operators that were left in the Face Sets design task for 2.83. I also started to design the algorithms for new brushes that work on negative space (for 2.90)

Next Week

  • Update and commit all pending patches
  • Continue designing the negative space brushes

Patches

  • D7211 Sculpt: Create Face Set by Edit Mode Selection
  • D7209 Sculpt: Face Sets Init operator
  • D7207 Fix T74692: Do not draw nodes with the default face set
  • D7199 Fix T74899: Add Draw Face Sets brush to versioning defaults
  • D7188 Fix T74780: Face sets operators not aware of SCULPT_FACE_SET_NONE
  • D7187 Fix T74761: Reimplement vertex to face sets visibility sync
  • D7185 Rename Edge Automasking to Boundary Automasking
  • D7184 Fix T74808: Division by 0 in Cloth brush solver with overlapping vertices
  • D7174 Fix paint cursor lagging behind the OS cursor
  • D7168 Multires: Initial Face Sets support
  • D7165 Multires: Implement edge boundary automasking

Commits

  • Fix incorrect Face Sets when using mask extract e42f61dda8.
  • Fix visual artifacts with partially hidden meshes and mask extract bab0fd1308.
  • Fix T74626: Wrong Face Sets overlay rendering in smooth shading e4077ea69d.
  • Update viewport rotation origin when changing Face Set visibility 7941ea02f8.

March 9 - March 13

I rebased the vertex color patch and did a lot of fixes to the face sets and the sculpting system in general. I also did a new layer brush that should fix all the artifacts of the previous one.

Next week

  • Start planning the new Multires features and UI
  • Continue fixing Face Sets bugs
  • More patches with to improve brushes

Patches

  • D7148 Sculpt: Use uchar to store the sculpt mask in the GPU
  • D7147 Sculpt: New Layer Brush
  • D7137 Update viewport rotation origin when changing Face Set visibility
  • D7130 Fix visual artifacts with partially hidden meshes and mask extract
  • D7129 Fix incorrect Face Sets when using mask extract
  • D7105 Sculpt: Render Face Sets always as flat shading
  • D7099 Fix T74637: Reset face set data when disabling dyntopo
  • D7096 Fix T74626: Wrong Face Sets overlay rendering in smooth shading
  • D7080 Sculpt: Split plane offset into base and offset

Commits

  • Fix boundary edges detection ignoring Face Set visibility fa823f0af8.
  • Fix flood fill operation not taking into account hidden vertices 69eaa19340.
  • Use golden ratio conjugate for Face Sets hue generation b0271c6e40.
  • Fix Face Set operators not modifying sigle poly Face Sets 53c03d4679.
  • Fix T74646: Pick a random face set to be rendered white when randomizing the colors 9dcd6ba3eb.
  • Fix T74648: Do not relax with 0 neighbors or no vertex normal 88fd2b1dd5.
  • Fix mesh shrinking when using the relax mesh filter. 088b92b92c.
  • Fix rendering artifacts when changing Face Sets visibility 1619a5d8e9.
  • Fix T74613: Assign the default face set color in the versioning code b37482bc3d.
  • Fix T74354: Avoid division by 0 when calculating hardness 4652f23fa3.
  • Sculpt: Edge Automasking 84b94f9e7b.
  • Face Sets: Use white color for a default Face Set to enable the overlay 18e3615a68.
  • Face Sets: Add relax support to Mesh Filter and Draw Face Sets 0dfb4ac1ff.
  • Fix Cloth Brush not working with automasking e702c9a700.
  • Fix T74500: Rebuild the Face Sets datalayer after slicing the geometry 0030e6a2fc.
  • Fix T74499: Add visibility checks to Face Sets creation operations 503d5c0c65.
  • Sculpt: Remove hardcoded hardness from Clay brush c65b9fb825.
  • Fix T74492: Reset Face Set data when cancelling the expand operator 6eb76f6430.
  • Cleanup: Move Face Sets random color generation to its own function a540d16ee8.

March 2 - March 6

I finished and committed the Face Sets patch, and also created a lot of patches for Face Sets fixes and bugs that were already there, but really hard to notices without Face Sets. I also implemented Surfae Smooth and an initial version of topology falloff.

Next week

  • Rebase the vertex color patch
  • Continue fixing Face Sets bugs
  • More patches with small tweaks to improve brushes

Patches

  • D7059 Sculpt: Initial Topology Distances and Falloff support
  • D7057 Sculpt: Surface Smooth Brush
  • D7049 Fix T74500: Rebuild the Face Sets datalayer after slicing the geometry
  • D7048 Fix T74499: Add visibility checks to Face Sets creation operations
  • D7043 Fix T74492: Reset Face Set data when cancelling the expand operator
  • D7042 Cleanup: Move Face Sets random color generation to its own function
  • D7036 Sculpt: Add face iterators to the PBVH
  • D7035 Face Sets: Use white color for a default Face Set to enable the overlay
  • D7034 Face Sets: Add relax support to Mesh Filter and Draw Face Sets

Commits

  • Fix T74513: Wrong naming in some Face Set comments and operators 6b49a9db52.
  • Fix T74501: Wrong initial iteration when using mask expand db1d711458.
  • Fix T74498: Do not iterate over hidden vertices when using the transform tool 7760cec5dc.
  • Cleanup: Move Multiplane Scrape brush to its own file f2f8c5b2bd.
  • Cleanup: Use the SCULPT_ prefix in all sculpt_intern functions 69d4aec55f.
  • Fix using wrong property name for preserve face sets when remeshing 8bb0ac27dc.
  • Sculpt Face Sets 38d6533f21.
  • Fix T74426: Crash in the IK Pose Brush preview with null preview chain d83c0969f6.
  • Fix Snake Hook rake on rotated objects daca00f187.
  • Fix hardness not resetting when using reset brush b39273c071.


February 24 - February 28

I updated and rebased the Face Sets and Vertex Colors patch. I coded some new features for Face Sets and improved some regular brushes.

Next week

  • Try to fix the vertex paint brush bugs
  • Continue improving the brushes for the LTS release

Patches

  • D6992 Fix hardness not resetting when using reset brush
  • D6989 Sculpt: Weight normal and area sampling towards the brush center
  • D6987 Fix T74354: Avoid division by 0 when calculating hardness

Commits

  • Clay Thumb: Remove hardcoded hardness value c930cd7450.
  • Sculpt: Hardness brush property ff0124418f.
  • Cleanup: Move pose brush to its own file fc7fdc5c4e.
  • Fix T74307: Add missing brushes to versioning_defaults 233158b555.
  • Fix T73707: Missing mesh normals update on sculpt undo 3c9956a3ac.
  • Fix T74074: Strokes with timer events don't get pressure values a489d77c5b.
  • Fix T73947: Support radial symmetry in Multiplane Scrape c04c5ac4f6.
  • Sculpt: Cloth brush 4a373afa5f.
  • Fix wrong coordinates being read when using the sculpt API 793135e190.
  • Fix T72721: Add visibility flags updates to the PBVH f4411b58ad.

February 17 - February 21

This week I updated and rebased most of the old patches. I was sick 2-3 days during the weekend, so not the most productive week.

Next week

  • Rebase and update the Face Groups patch. Rename everything to face masks.

Patches

  • D6902 Sculpt: Hardness brush property
  • D6901 Fix T73947: Support radial symmetry in Multiplane Scrape

Commits

  • Theme: Radial gradient background and enum for gradient type 05fd2acf89.
  • Fix T54270: Reset last_hit and last_location when reading the file 2df040ed58.
  • Sculpt: Pinch only in the direction perpendicular to the stroke ee5c13c45c.
  • Sculpt: Update red cursor color 43c497051a.
  • Sculpt: Fix slide relax cursor color 8673d2e92a.
  • Fix T73105: Use Magnify instead of Pinch in the brush context menu f996aeaf76.

Other projects

February 10 - February 14

This week I implemented some new features (radial background), fixed some bugs and refactored the brush presets. I also wrote some design tasks for future projects.

Next week

  • Rebase and update a lot of old patches
  • Start creating patches for splitting sculpt mode into multiple files

Patches

  • D6830 Sculpt: Default brush presets and reset all operator
  • D6828 Sculpt: Update red cursor color
  • D6827 Sculpt: Fix slide relax cursor color
  • D6825 Theme: Radial gradient background and enum for gradient type
  • D6805 Fix T73105: Use Magnify instead of Pinch in the brush context menu
  • D6804 Fix T73656: Use BKE_brush_alpha_get in texture paint
  • D6801 Fix T73706: Crash after disabling dyntopo with multires modifier

Commits

  • Sculpt: Split normal radius and area radius df45257ec5.
  • Sculpt: Clay Strips Tip Roundness property 6ee6a42d10.
  • Pose Brush: Option to disable the IK anchor point 0ab7e32158.
  • Sculpt: Clay Thumb Brush 015d5eda88.
  • Fix T73656: Use BKE_brush_alpha_get in texture paint 35490c3ead.
  • Cleanup: Sculpt/Paint, use correct types and iterator variable declaration 64e65442a1.
  • Cleanup: Sculpt, Comment formatting 395e91b87c.

February 3 - February 7

This week I focused on bug fixes and code cleanup.

Next week

  • More bug fixing
  • Implement some new features
  • Write some design task

Patches

  • D6792 Cleanup: Sculpt, Comment formatting
  • D6788 Cleanup: Sculpt/Paint, use correct types and iterator variable declaration
  • D6771 Fix T70020: Force using the internal sculpt pivot when transforming
  • D6767 Fix T72721: Add visibility flags updates to the PBVH
  • D6754 Fix T54270: Ensure that the vector read from ups->last_location is valid
  • D6753 Fix T73226: Add defaults and versioning for uv_relax_method

Commits

  • Fix T73706: Crash after disabling dyntopo with multires modifier af6ba4dce5.
  • Revert "Sculpt: Remove partial viewport updates from sculpt stroke code" 51b67218ae.
  • Fix T72690: Do not draw points behind the viewport camera in the paint cursor 78cf61cc62.
  • Fix T66349: Add missing update for face orientation overlay 08d1df4729.
  • Merge branch 'blender-v2.82-release' 6b9062508a.
  • Fix warning when initializing the IK chain in the Pose Brush db4bb49aae.


January 27 - January 31

This week I wrote a blog post about the new sculpt mode features (still not published), I implemented edge automasking and I made the initial patch for the Cloth Brush.

Next week

  • Update the blog post about the Sculpt Mode Features with the cloth brush
  • Continue polishing the cloth brush UX

Patches

  • D6715 Sculpt: Cloth brush
  • D6705 Sculpt: Edge Automasking
  • D6688 Revert "Sculpt: Remove partial viewport updates from sculpt stroke code"

Commits

  • Fix T73054: Add DNA defaults for pose_ik_segments e7c90438e0.

January 20 - January 24

This week I rebased the Vertex Colors patch and I updated and fixed the Clay Thumb Brush (it is now ready to be committed). I also continued experimenting with snapshots and the sculpt/pressure patch for grab brushes.

Next week

  • Write a new blog post about the Sculpt Mode features
  • Implement automasking for edge preservation

Patches

  • D6665 Fix T70173: Ensure CD_MDISP when sculpting in Multires
  • D6663 Fix T73054: Add DNA defaults for pose_ik_segments

Commits

  • Sculpt: Rename Topology Brush to Slide Relax Brush 300f937aec.
  • Fix T71373: Sculpt Mask not extracting correctly on scaled objects 5186bb56b5.
  • Fix T73080: Remove support for scene radius in Weight/Vertex paint be691105c2.

January 13 - January 17

I made some improvements and new features on top of the current brushes and I coded the first prototype for sculpt snapshots.

Next week

  • Rebase the Vertex Color patch and add all missing features following the project document

Patches

  • D6623 Sculpt: Limit viewport redraws to 30fps
  • D6603 Sculpt: Enable size/pressure in Grab Brush
  • D6594 Sculpt Snapshots
  • D6591 Sculpt: Crease brush: Pinch perpendicular and new defaults
  • D6590 Sculpt: Rename Topology Brush to Slide Relax Brush
  • D6587 Sculpt: Pinch only in the direction perpendicular to the stroke
  • D6586 Fix T73080: Remove support for scene radius in Weight/Vertex paint
  • D6584 Pose Brush: Option to disable the IK anchor point

Commits

  • Fix T73070: Disable falloff_shape in the Pose Brush f4beab7192.
  • Fix T73094: Check all vertices when recalculating the mask flags 22a317347f.

January 6 - January 10

This week I made the design tasks for the vertex colors/attribute paint, Multires and sculpt mode performance projects projects

Next week

  • Work on some improvements to the 2.82 sculpt tools

Patches

  • T73047 Sculpt Mode Multires Design
  • T72943 PBVH task scheduler performance issues
  • T71947 Vertex Color/Attribute Edit Design

Commits

  • Fix T71712: Free the dynamic mesh preview when rebuilding the PBVH 22f5edcf45.
  • Fix T72251: Add rotate brush as constrained by radius for automasking 55daa0d444.
  • Fix T72647: Check if the PBVH type makes sense for the sampling mode 4f70af34e0.
  • Fix T72830: Check if the mesh has mask data before extractig or slicing bc9c8c35e1.
  • Sculpt: Pose Brush with Inverse Kinematics fdf89acc86.


December 30 - January 5

I designed, code and test the main painting brush in sculpt vertex colors. All previous issues are fixed, but it will still require some tweaking to consider it final.

Next week

  • Continue working in the sculpt vertex colors patch

Patches

  • D6513 Fix T72830: Check if the mesh has mask data before extracting or slicing

Commits

  • Fix T72700: Missing flush vert visibility on sculpt undo 04ddd6f717.
  • Sculpt: Add color alpha controls to the brush cursor 0314561684.
  • Sculpt: Remove partial viewport updates from sculpt stroke code 394b48029c.
  • Fix T72747: Increase minimum voxel size in the voxel remesher 6a54969cf1.
  • Sculpt: Use more saturated colors in the cursor e998cb2c2e.