Note: This is an archived version of the Blender Developer Wiki (archived 2024). The current developer documentation is available on developer.blender.org/docs.
User:JoeEagar/Reports/2022
January 3 to January 9
D12587 (temp-sculpt-colors)
- Polished D1258 to get ready for master:
- Fixed bugs
- Added back color picker panel
- Fixed icons
- Updated patch for latest master (including new GPU subsurf);
- Vertex color node now shows all color layers in its quick search list.
sculpt-dev
- New automasking modes:
- Mask by view normal, works similarly to front face only but with a falloff.
- Mask by brush normal, compares normals with initial brush normal at start of stroke, see video.
January 10 to January 14
- Cleaned up sculpt temp attribute api. 5e27ed5f0e
- Fixed various bugs and crashes in sculpt-dev:
- Merged master into sculpt-dev and temp-sculpt-colors.
- Further cleaned up temp-sculpt-colors (D12587).
- Fixed bug with sculpt undo system losing track of the active color attribute.
- Made various requested changes.
January 15 to January 21
- Cleaned up doc comments for sculpt_intern.h.
- Merged master -> sculpt-dev
- Fixed a few bugs in sculpt-dev
- Worked on blog post
January 23 to January 28
- Worked on sculpt colors patch.
- Refined draft of blog post.
- Roughed out C++ backend for new brush engine system as a proof of concept.
- Spent an inordinate amount of time merging branches.
- Attempted to debug Wintab. I ended up having to upgrade my drivers;
I think the stock OEM ones got broken by the upgrade to Windows 11.
February 1 to February 5
- Made DynTopo in sculpt-dev use a new, unified edge heap (a min-max heap). a393db3c23
- Worked on sculpt colors patch.
February 7 to February 11
- Cleaned up some code in sculpt-dev.
- Worked on sculpt colors patch
== February 14 to February 18
- Worked on sculpt colors patch
- Did research for texture paint project.
February 21 to February 25
- Worked on sculpt colors patch
- Started work on texture paint prototype.
- Got seams to work in JS prototype.
- Ported vertex paint to C++
- Supports vertex and corner (float/byte) color layers.
- Added corner colors support to sculpt undo
February 28 to March 4
- Continued work on texture paint prototype.
March 7 to March 11
- Got texture paint to work on a proof of concept level.
- Figured out how to build neighbor lists for texels across triangle seams. JS prototype
- Worked on PBVH EEVEE patch D13897
March 14 to March 18
- Submitted patch to add triangle iterators to PBVH (in texture paint branch). D14339.
- Fix minor sculpt-dev bugs:
- Dyntopo fixes in sculpt-dev:
- Roughed out PBVH caching (plan is to implement and test in sculpt-dev before making a patch against either master, the texture paint branch or both). 307f13aee5
March 21 to March 25
- Fixed various issues in sculpt vertex colors patch:
- Data transfer modifier f42d3caecd
- Reverse/rotate face colors in editmode 09eb086779
- Changed various UI strings from "vertex colors" to "color attributes." 09eb086779
- Mask by color 09eb086779
- Alpha getting mangled for byte colors 51c3ce1353
- Layer auto creation 19ea75f8cf
- Undo crash 4c7ea01cbd
- Improved smear brush in sculpt vertex colors patch 9e3e80780c
- Fixed various bugs in pbvh caching:
- Fix pbvh cache crashes in sculpt-vev:
March 28th to April 1
- Sculpt vertex colors patch
- Merge master into sculpt-dev 8a58f1f3bb
April 4 to April 8
- Land color attributes patch in master eae36be372
- Merge master into sculpt-dev.
- Worked on D13897, PBVH draw patch.
April 11 to April 15
- Fix color attribute bugs:
- Fix cloth crash in sculpt-dev 185ca2912f
- Merge master into sculpt-dev ecbf681e31
April 18 to April 22
- Ported old vertex paint mode to C++ 575ade22d4
- Fix dyntopo crash with color attributes: 6f190f7f43
- Fix data transfer modifier bug b0c428c063
- Code cleanup 14f2d37ad1
- Fix draw crash 01333cb47f
- Fix crash in sculpt-dev d2dee8f482
- Fix remesh crash in sculpt-dev afc86042b7
- Fix mask slice in sculpt-dev 55740b7bee
== April 25 to April 29
- Make sculpt mask filter operator show redo panel 185d9627b3
- Change how defaults for mask filter are set so redo panel remembers more of them 296d734344
- Fix crash 38eed4ada3
- Fix crash 42878ffc26
- Fix trim lasso radius bug 2bc0e8d304
- Cleanup a8331d8c9d
- Fix color space error in vertex paint c20b99b70c
- Fix PBVH draw cache invalidation crash bfb4dcaa1a
May 2 to May 6
- Implement PBVH texture node splitting:
- Initial implementation d2fa1daea6
- Debug visualization 1c77f259fd
- Fix merge bugs in sculpt-dev 67fdff9d69
May 9 to May 13
- PBVH texture node splitting:
- Fix bug in pixel row splitting 27fd506501
- Multithreading 6e4daa7d3c5f2a77f1c23f5a6333e24118a6519c 6e4daa7d3c
- Fix broken vertex color node 0eb2244f0a
- Sculpt-dev:
- Merge master into sculpt-dev cd316eb6c6
- Fix merge errors 7677b2428a
- Fix large file sizes caused by brush settings system cfc46e43b2 e5a111c637
May 16 to May 20
- Sculpt-dev:
- Fix brush stroke bug 4b41114f67 3210924485
- Cleanup brush strength api so all sculpt brushes support square shapes 7217d1f355
- Dyntopo not initializing face set values correctly b54abd7ede
- Unprojected radius mode messes up sculpt texture radius f9751889df
- Merge master into temp-pbvh-eevee 2e61e8c901
May 23 to May 27
- temp-pbvh-eevee: Fix active uv layer having wrong alias f9fb9a20b941f2ebcb8cbaa78bcb5cb4932c1cfb commit f9f
- Merge master into sculpt-def 4c3d11c233
May 30 to June 3
- Shading artifacts on paint/mask anchored sculpt brushes f1c29b9bd3
- Remove improper OPTYPE_UNDO flags 511a08585d
- Temporary fix for attribute convert undo 75162ab8c2
- GPU subdiv: Fix edit mode vertex color not being uploaded properly 6cee404914
- Sculpt-dev:
- Fix tip_roundness versioning bug d7d6ad76d7
- Pmap bugs: c12e3ff183 [1]
- Merge master into sculpt-dev d54416506a
- Fix zeroing of last position on stroke start 8e02b53ae7
- temp-pbvh-split: Use task api correctly. 6851971501
- temp-sculpt-cavity-mask: Add caching 371708737a
June 6 to June 10
- Move sculpt_automasking.c to c++ ca29376e00
- Land pbvh EEVEE patch 285a68b7bb
- Fix image editor cursor disappearing 371fc68678
- Merge branch master into temp-pbvh-eevee 59cdc4e7f6
- temp-sculpt-cavity-mask: Add custom curve support 527ad665af
- Cleanup: Move sculpt_automasking.c to c++ [2]
- temp-sculpt-cavity-mask: Move cavity mask settings into toolsettings d7ea1cca4e f5203933f7
- Anchored mode not working for sculpt smear brush c55dac9904
- Sculpt-dev: fix bmesh python bug 1cd88104f0
June 13 to June 17
- sculpt-dev:
- Fix draw cache bug 47a14ef4ad
- Merge master into sculpt-dev e108318af8
- Fix undo bug c73fc97d45
- PBVH active attrs only optimization is buggy 7a24fe372c
June 20 to June 24
- Fix crash when adding color attributes in editmode. 30273b86c7
- Fix sculpt undo ignoring gravity with paint tools. 4c3b984b3d
- Add second blur mode to cavity mask patch. 56e2f93a3c
- Merge master into temp-pbvh-split.
- Looked at UV seam patch.
- Submitted normal automasking patch (https://developer.blender.org/D15297).
- Submitted automasking support for image paint patch (https://developer.blender.org/D15298).
June 27 to July 1st
- Cavity mask patch: Add automask baking tool 1e259426c6
- Fix T98886: PBVH_GRIDS ignores face smooth flag on first gpu build 3cefa13770
- Cleanup: Renamed SCULPT_TOOL_NEEDS_COLOR to SCULPT_tool_is_paint f7c6d3705d 2185943235
- Fix T99196: sculpt_update_object calls paint updates for nonpaint tools c39e932631
- Fix backwards normals in PBVH_GRIDS raycasting eaec01cad5
- Fix T99231: Wrong anchored mode test for smear brush 2d0877ed7e
July 4 to July 8
- Fix T98884: Fix edge case crashes in gpu subdiv cache code 3f5073a8e2
- Cleanup: use local variable in smear code instead of ss->cache->bstrength 7be07a9d6e
- Fix T98698: Division by zero in smear code when strength is zero a720a4aabb
- Fix T94633: Sculpt mode missing check for hidden active object cb39058f2f
- Submitted vertex color limit removal patch D15368
July 11 to July 15
- Fix T99383: Wrong origdata type in color filter 7357176b57
- Cavity mask patch: Remove original blur mode. d1104544b4
- Sculpt: Fix scene spacing mode (phase 1) 9a14887905
- Fix T99644: Anchored brush mode fails for negative brushes cd1e4ae448
- Normal automasking patch:
- Support normals automasking for sculpt filters a472ced73b
- Give automasking access to original normals 10e9098637
- SculptVertRef patch: Cleanup API fbe2dcd2b8
- Submitted PBVH draw patch: D15428
- Sculpt-dev: Cleanup sculpt temp attribute API before splitting into patch ed8ffec61f
July 18 to July 22
- Fix T99687: Cloth filter crash 9f68369247
- SculptVertRef patch: Make requested changes 2e028d6d2d b3d7112d32
- Submitted sculpt attribute API patch: D15496
- Updated Expose Face Sets In Python API patch: D15025
July 25 to July 29
- Sculpt: Fix T99779, pbvh gets wrong active vertex for multires 462f99bf38
- Normal automasking patch:
- Implement new masking modes for factor cache 7731690dba
- Add occlusion mode d779802563
- Commit PBVHVertRef patch d7cfb6ac71
- Sculpt: fix name collision in DynTopo temp attributes 27a16abe81
- Normal automasking patch:
- Make occlusion suboption of view normal 6bfbdc4bff
- Implement new masking modes for factor cache 7731690dba
- Add occlusion mode d779802563
August 1 to August 5
- Wrote prototype of new pbvh draw system.
- Sculpt: Fix T99294: Voxel Remesher text is resized based on object scale b65ab29310
- Sculpt: fix broken triangle/vertex count for DynTopo e6b1e97dd7
- Rebase sculpt attribute patch with master.
- Cavity mask patch update (c692b93fcf):
- Merge master.
- Invert curve behavior in invert mode
- Invert and normal cavity mask are now seperate modes and mutually exclusive.
- Automask bake operator now has option to use scene defaults.
- The automask boolean properties are now defined in a EnumPropertyItem list to avoid three sets of duplicate code.
- Added a "Mask from cavity" menu operator.
- Wrote rough code for experimental version of sculpt-dev's brush property refactor based on RNA. ecf5f2b118
August 8th to August 12
- Brush Properties refactor
- Register sculpt brush op so it clears last operator panel 11bdc321a2
- Update cavity mask patch
- 4624153af9
- Use automask curve for use_automask_settings be26a3402c
- Code cleanups 07530726fd
- Cleanup UI 4b2c92f8e0
- Cleanup bake cavity mask panel UI inside the properties editor 0caf6c598c
August 15th to August 19th
- Brush Properties refactor
- Sculpt attribute patch:
- Fix anchored brush performance regression 2d19038c6c
- Improve PBVH debug draw 7f3eb055dd
- Write documentation in sculpt_undo.c c5feb4e6fe
- Fix sculpt undo bug related to undo push name errors 3f9299e45d
- Blank redo panel for stroke operator 6b49b54bb1
- Created redo panel bugfix patch D15697.
- temp-pbvh-vbos: Add support for solid-shaded multires 461c1deb63
August 22th to August 26th
- Sick this week.
August 29th to September 2nd
- Core: Remove color attribute limit from CustomData API a6ba8e5f38
- Fix T100479: Memory corruption in sculpt_boundary_edit_data_init d7b33cd8c8
- Cleanup: fix warnings from vcol limit commit cdc0be48c9
- temp-pbvh-vbo: merge master f987d9b758
September 5th to September 9th
- Sick this week.
September 12th to September 16th
- Worked on sculpt attribute patch [3]
- Fix T100941: Draw cache invalidation loop 100fe61f7c
- Fix T100608: SCULPT_UNDO_FACE_SETS broken for redo 2c1650ae8f
- Fix T101008: Missing CD_MDISPS layer: 3d3c34f345
- Finish initial implementation of PBVH draw cleanup patch: 6482e092d0 b2bdbeced6 88e6cb1ec0 07e8bc3063 1acc730ba1 97d3a57edf 97d3a57edf
- Landed sculpt attribute patch.
- Merge master into sculpt-dev 84342ed7b2
September 19th to September 23rd
- Sculpt: Fix bug with allocating duplicate attribute layers 2ff5d42cd3
- Cavity mask patch: b11f312629 Fix T101430: Dyntopo undo crash6dded6229db62c43cdb7e28f01cd 200e3c8d55 c5ab67e814 f5acd46761 432fa09d6f b11f312629 b11f312629
- Sculpt: Fix T100479: Boundary expand crash 32b766223a1b2a562e657a729e7d9f2926d42417
- Sculpt: fix memory corruption in new attribute api c2a21dfb77
- Normals automasking patch: Use a stroke id attribute for occlusion 3f80385118
- Merge master into sculpt-dev.
September 26th to September 30th
- Fix T101467: Improper vertex count in pbvh draw 206dead860
- Fix sculpt face set undo creating duplicate face set layers 81f15a51aa
- Fix crash in relax face sets brush 991a35b844
- Fix T101430: Dyntopo undo crash 6b9f45c1d1
- Upload to gpu white for color attributes in multires in sculpt 5b0485fd77
- Fix T101503: Memory corruption in multires faceset drawing 1eba76d8ed
- Fix T101430: Curve shown improperly in mask from cavity redo 4cbafba04b
- Fix stroke-only attributes not being freed at stroke end 688c4f7e51
- Fix T101465, crash in cloth filter with new automasking modes b063cfa9cf
- Fix T101464: Crash in mask from cavity 6a9b45995d
- Fix T101463: Don't initialize automask to zero in factor mode if topology or boundary modes are inactive f998fa2732
- Reset automask cache on non-color non-mask undo steps 1494a22a90
- Fix draw face sets not updating on first stroke 6d3da28676
- Fix missing nullptr check in pbvh draw 039429faeb
- Commit normals automasking patch bbc69563d0
- Commit cavity mask patch: 0156a677c7
- Commit pbvh draw rewrite patch: 65900d88a8
- Merge master into sculpt-dev: 9ae40de20b 9c619fd381
- temp-sculpt-cavity-mask: Make requested patch changes 2c1bc8e451
October 3rd to October 7th
- Bugfixes for sculpt-dev: a5f53346a6 6c2d0354e7 c3c67cf0c2 5e2b234855 42948e2389 059fb4098f e5fcaa293a
- Merge master into sculpt-dev 2aa347b64e
- Sculpt: Fix crash in dyntopo draw 38af785dba
- Viewport: Enable draw_debug.cc code when WITH_DRAW_DEBUG is on af288a09a5
- Sculpt: Raise pbvh->leaf_limit to 400 for dyntopo 53d937a170
- Sculpt: Fix T101502: GPU tris miscounted for dyntopo dfa0eb298e
- Sculpt: Fix bug in sculpt attribute api f58b524669
- Sculpt: Fix crash in face set init 9d40b1cc3e
- Sculpt: Fix crash in dyntopo draw 38af785dba
- Sculpt: Visibility bugfixes 22c3db72ca
- Sculpt: implement Reveal All for PBVH_BMESH 2cf21604c9
- Sculpt: Fix T101430: Blank stroke undo steps corrupt dyntopo ed7f5713f8
- Sculpt: Add debug code to print sculpt undo stack. 416d1d0393
October 10th to October 14th
- temp-pbvh-split: Fix various crashes and memory corruption 78b008d20d
- Sculpt: Fix face set relax being too strong b7ea79fde7
- Sculpt: Fix draw artifacts when drawing multires mask c207571d44
- Sculpt: Ensure faces are uniquely assigned to PBVHNodes 010c10febe
- Sculpt: do not validate PBVH draw data in mesh_batch_cache_valid bc06fcca47
- Sculpt: fix crash when instancing sculpt objects 7a005e089d
- Sculpt: Fix mask from cavity not redrawing viewport with modifiers 48fd4a01ef
- Sculpt: Fix T101595: sculpt_attribute_update_refs called in wrong place 7119582b66
- Sculpt: Fix T101718: Automasking crash with new texture paint 188786f0b0
- Sculpt: Clean up Dyntopo's original triangle api 7f133b7a38
- Sculpt: Fix T101674: Passing null to GPU_batch_elembuf_set dc1418e5d9
- Sculpt: T101699: Face set change visibility crashes on no face sets da25006bc4
- Sculpt: Fix T101729: Automasking crash in elastic deform brush 473df37134
- Merge master into sculpt-dev. 92bc610c36
- Fix various sculpt-dev merge bugs 87863770bb 57d5fc7352 7f133b7a38 dc1418e5d9 [4]
- Created PBVH face iterator patch.
October 17th to October 21st
- Sculpt: Fix T101864: Mask initialization not updating multires data 25e84334f7
- sculpt-dev: Fix stroke id error in smooth code 5b8b99cf8a
- sculpt-dev: Roll mapping fixes 46839d1f43
- sculpt-dev: Implement arc-length derivatives for BLI_arc_spline.hh 9b7561f16a
- sculpt-dev: More roll mapping fixes 82a3696234
- sculpt-dev: Write arc-length (evenly spaced) spline lib 8786b5c0c0
October 24th to October 28th
- Attended Blender conference.
- Sculpt: fix T102067: Set material properly in new pbvh draw bc7de854c9
October 31st to November 4th
- Fix T102253: Missing call to SCULPT_automasking_node_update db3bf36770
- Texture roll mapping patch 9980fd0b8e D16414
November 7th to November 11th
- Update face iterator patch 848ca9db46 afc13a273e f96961a76b.
- Sculpt: Fix T102209: Multiresolution levels greater than 6 crashes b2000412f2
- Sculpt: Change symmetrize merge threshold and expose in workspace panel 969aa7bbfc
- Sculpt: Fix T102379: Crash in dyntopo 2688d7200a
- temp-pbvh-face-iterators: Move initialization of static memory abefe06309
- Merge master into temp-pbvh-face-iterators 0d66d22c03
- Merge master into temp-sculpt-brush-channel e59ebfef3c583985553e78492cf8cd07bbe7648e commit e59
November 14th to November 18th
- Sculpt: Fix T102349: improperly aliased enum 03b7982301
- Land sculpt face iterator API patch 6b3cee2538
- Sculpt: Fix T102567 (again) 5097105b3c
- Sculpt: fix T102584 567ae90374
- Sculpt: Fix mask from cavity settings issues 2d251478bb
- temp-sculpt-roll-mapping: Implement symmetry/tile/radial modes 733a764b07
- temp-sculpt-roll-mapping: New strategy for spline tex mapping 33a1472d4e
- temp-sculpt-roll-mapping: mirror symmetry fixes 9a8c4aefb3
- temp-sculpt-roll-mapping: Fix stroke points projection outside of the meshaf4048f2b8
- Merge master into sculpt-dev 11643ab8f7
November 21st to November 25th
- Sculpt: fix T102436: missing null pointer check in automasking code 959f3cd645
- Land D16224 Standardize face set undo steps, optimize memory usage df788ecfd9
f5e99abb60 af8a449ca5
- Sculpt: Fix box face sets not working for multires acf8f6220d
- Sculpt: Fix broken multires hidden undo a2a72d89b1
November 28th to December 2nd
- Merge master into sculpt-dev e53a8f9c51
- Sculpt: Fix broken pivots when entering paint modes 65393add52
- Sculpt: Fix T102824: broken face primitive partitioning in pbvh nodes 4aac5b92c1
- Sculpt: fix crash when no brush 918282d391
- Sculpt: Fix T102337: Null pointer error circle (tube) brush test code 0ed4865fd0
- Sculpt: fix T102348: Don't fold area normal automasking into cache 0ad8f3ff58
- Sculpt: fix T102664: Broken multires solid shading 1fc5dc3bf3
December 5th to December 9th
- Worked on cleaning up sculpt-dev's DynTopo in preparation of porting to master. bb764e418a
- Fix T102336: dynamic topology crash 31ccf79011
- Sculpt: Fix crash when sculpting after disabling dyntopo 8e46ef2fa5
December 12th to December 16th
- Updated stroke texture mapping patch.
- Fix T103261: Undo after mask extract doesn't restore active object 8666791b2e
- Cleanup: make paint_init_pivot an api method. 17e266cd55
- Fix T103198: Missing bounds check for material_index attr in texpaint 0beb358a69
- Fix more attribute bugs when switching PBVH modes 939b63bcd6
- Fix T102991: Multires fast navigate not implemented 6f9cfb037a
- Fix crash in dyntopo 0a5e8a6342
- Fix crash with unsupported attr types in pbvh draw 246df68095
- Worked on dyntopo a bit.
December 16th to December 20th
- Sculpt: Fix T103341: Move sculpt overlay flags to View3DOverlay.flag f803a0a95b
- Sculpt: Fix T103261: Undo after mask extract doesn't restore active object 8666791b2e
- Cleanup: make paint_init_pivot an api method. 17e266cd55
- Fix T103198: Missing bounds check for material_index attr in texpaint 0beb358a69
December 23rd to December 27th
- Sculpt: fix bugs in inverted expand mode a9cb66b856
- Sculpt: fix T103156: Scale square brush uvs by sqrt2. 204de8c6db
- temp-sculpt-roll-mapping: Visualization improvements a238533550
- Merge branch 'master' into temp-pbvh-split 98bdd08507