Blender Git Commits

Blender Git "sculpt-dev" branch commits.

Page: 15 / 56

September 14, 2021, 03:14 (GMT)
Sculpt dyntopo: fix nasty node splitting bug
September 14, 2021, 02:24 (GMT)
Sculpt dyntopo:

* Fixed noise on using autosmooth with tools that use original
coorinates. While this was most prominent with DynTopo,
it did happen with other tools.
* The solution is to smooth the original coordinates as well
as the explicit coordinates if the active tool requires
original data.

* I decided to replace the original coordinates system for
PBVH_FACES and PBVH_GRIDS with the same MDynTopoVert structure
DynTopo uses. The alternative would have been extremely messy
code.

* Todo: Rename MDynTopoVert to. . .SculptInfoVert?
* Todo: Cache boundary flag and corner info in MDynTopoVert->flag
for PBVH_FACES/GRIDS similar to PBVH_BMESH.
September 13, 2021, 09:31 (GMT)
Sculpt dyntopo: more collapse fixes

The edge cases just never end.
September 13, 2021, 06:39 (GMT)
Sculpt dyntopo:

* A few more collapse fixes
* Fixed boudary handling in surface_smooth_v_safe
September 11, 2021, 20:38 (GMT)
Dyntopo sculpt: fix bug with boundary flags
September 9, 2021, 18:06 (GMT)
Sculpt dyntopo: Added a 'hard edge mode' option
to forcibly set autosmooth_fset_slide to zero
(i.e. treat face set boundaries as hard edges
and not project them on the surface).
September 9, 2021, 07:21 (GMT)
Add more int casts for linux
September 9, 2021, 07:18 (GMT)
Sculpt dyntopo

* Non-manifold "fins" are now detected and automatically
deleted.
* Fixed compile error on linux.
September 8, 2021, 23:51 (GMT)
Sculpt dyntopo:

* Collapse now uses code from decimate to detect
degenerate cases.
* Remaining, unknown (and rare) degenerate cases
are now detected (via presence of duplicate verts
in faces) and fixed.
* DynTopo fills in undo size properly now,
so undo memory limiting works.
September 8, 2021, 07:49 (GMT)
Sculpt dyntopo:

* BLI_table_gset now internally uses a SmallHash instead of
a GHash. Profiling revealed this to be quite a bit
faster.
* This is something of a stopgap until C++-afication of
pbvh, when we'll have our pick of a bunch of
really nice C++ hashmap libs.
* pbvh_collapse_edge bites the dust; dyntopo now uses
BM_collapse_edge. Of the three topology operations
(subdivide edge, collapse edge, dissolve 3/4 valence
vertex) only dissolve still has a dyntopo-specific
implementation.
* Fixed a bunch of annoying memory corruption bugs.
* Non-manifold triangles are now detected in more
places.

SmallHash changes:

* Enabled removal
* Fixed infinite loop bug caused by
improperly counting free*d* cells
versus free cells.
* Added a BLI_smallhash_ensure_p method
that works just like the GHash version.

Sculpt replay system

* Roughed out a simple system to record and
play back sculpt strokes using a simple
text format.
* This is exclusively for
performance profiling and unit tests.
* For each brush stroke the system saves a copy
of the active StrokeCache and PaintStroke
and parts of Sculpt.

This should make profiling DRAM thrashing a lot
easier.
September 3, 2021, 06:19 (GMT)
commit working code
September 2, 2021, 18:42 (GMT)
Linux's gcc's flags are evil
September 2, 2021, 18:32 (GMT)
Fix warnings
September 2, 2021, 18:26 (GMT)
Fix compile error
September 2, 2021, 18:08 (GMT)
Sculpt dyntopo: increment subversion.
September 2, 2021, 18:02 (GMT)
Sculpt dyntopo: change brush defaults and fix bug

* Changed brush defaults a bit. New defaults
are for organic modeling.
* autosmooth_fset_slide now defaults to 1, so
face set boundaries are smoothed but stick to mesh
surface (if 0 they would function as hard edges).
* Weight by area smooth mode is on by default for all
brushes.
* Cleaned up versioning code and made it
kick in at 3.00:21, with some simple checks to
try and detect existing data from beta testers.

* Also fixed a small crash bug.
September 2, 2021, 07:02 (GMT)
Merge branch 'master' into temp_bmesh_multires
September 2, 2021, 04:32 (GMT)
commit before merge
September 1, 2021, 18:47 (GMT)
Sculpt dyntopo

* Wrote a simple fix for drawing face sets
in inverse (ctrl) mode with face set automasking
on.

* Various fixes related to hard edges and smoothing.

* Started writing some code to defragment bmesh mempools.
Need to figure out how to avoid triggering excessive
PBVH node rebuilds.
August 30, 2021, 22:04 (GMT)
Sculpt dyntopo: Dynamic field-propegated topology rake

I might write a paper on this. Topology rake now locally
updates a vector field, which it uses to smooth the input
and constrain to mesh (including face set) boundaries.
This can make an enormous difference for things like
smoothing.

Note that this is different from the existing 'curvature rake'
mode, which also builds a field and which is fed into the input
of this new one.

The only oddity is that the field is stored in a CD_PROP_COLOR
since we don't have a CD_PROP_FLOAT4, and this shows up in the UI
(not sure if I'm messing up the CD_TEMPORARY flags or if the UI
doesn't check for them).
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021