- User Since
- Nov 8 2011, 7:42 PM (451 w, 3 d)
Sat, Jun 20
Fri, Jun 19
Tue, Jun 16
Wed, Jun 10
May 30 2020
May 15 2020
May 14 2020
May 12 2020
May 2 2020
May 1 2020
Apr 23 2020
Apr 21 2020
Apr 18 2020
Apr 9 2020
Apr 6 2020
Apr 2 2020
hrm, i better should NOT have rebased my arcpatch branch to master before... lol... now there are unrelated changes in here as well (weld modifier stuff, curve stuff etc)
but the wiki docs regarding arcanist and arc diff (aka updating your diff) recommended that.
- attempt to perform all review related changes
Apr 1 2020
Mar 31 2020
@Pablo Dobarro (pablodp606) First, thanks for your help :)
So, but the voxelremesh operator lacks CSG functionality, filters, as well as texture / material transfer, and the preserve Hard edges support. And not yet speaking of the ability to mesh particles. Should this be part of the operator then too ? So both the modifier and the operator can share a common codebase ? Either way, I disagree here that is just a little bit of work. I would estimate it is not rocket science, but not too trivial either.
Means I just need a bigger slot of time in order to do the required changes. Not sure whether other devs could do this faster, because they would need to read their way thru the code on their own or ask me for help in order to accelerate this a bit.
Mar 30 2020
Mar 24 2020
Mar 20 2020
Mar 16 2020
Mar 13 2020
Ok, what about:
Mar 6 2020
some more pre-review cleanup, aka removing unintended changes
Mar 5 2020
dead code cleanup and clang formatting of patch
Mar 4 2020
Update of diff for recent 2.83 master, no functional changes.
@Brecht Van Lommel (brecht) I would like a review for this to be included in 2.83
Feb 29 2020
Feb 27 2020
Feb 25 2020
Feb 4 2020
Jan 22 2020
Jan 15 2020
Jan 3 2020
Jan 2 2020
in order for the ModifierList addon to show the CSG UI elements, i think the highlighted python code (from modifiers drawing code) must be added to the addon too.
Or atleast the operator names should be made known to the addon.
And for the skin modifier as CSG operand, seems to work here. If the original CSG object is set to Textured, it will just hide the remeshed part I think, so it should be hidden in viewport or render.
Theoretically "reproject data" should transfer UVs or materials too, from the skin modifier original object to the remeshed part (tho there are seam issues still)
@paul geraskin (mifth) Hmmm, i am not sure yet how to implement this. Vertexcolors or weights would need to manipulate the filtering in openvdb somehow...
Added custom data reprojection for UVs and materials (for some reason, vertex and edge data doesnt work so well with it, using datatransfer code)
Jan 1 2020
Tried to patch this, but the more I dig into it, the more questions arise, lol...
For example what on earth has "Overrides" to do with copying something on RNA level ? Is that the same as Static / Dynamic Override (which never was finished up to now) or something different with the same name ?
Lol... Anyways, I will share here my partially working patch, but it wont copy the Custom Profile, just re-assign it to the other modifier. Probably this is some corner case with Pointer Properties, which are not meant to be copied but to be assigned somewhere else only. But this doesnt work here. In case one of the other bevel modifier objects is deleted, blender will crash.
Probably, in order to make the CurveProfile more re-usable and copy-able (in one go) , it must become some separate ID which can be linked into the bevel modifier, like a cachefile is linked into the Meshcachesequence modifier or Particle Settings are being linked into a Particle System Modifier.
Dec 31 2019
@Hans Goudey (HooglyBoogly)
Thanks, the custom_profile.update() call seems to work. But the target curve's widget looks often a bit weird afterwards, aka weird triangular artifacts.
Hmm, seems this is no simple oneliner in order to fix this issue.
After some search in the code and some debugging, i found out that here
but->rnapoin.data && but->rnaprop seem not to be set (if you rightclick on the curve in the bevel modifier).
The curve is defined here basically
but there is no uiBut (no button) inside the curve area itself one could bind the context menu entries to. Its just an uiBlock, which works differently.
The rnapoin and rnaprop data is handled by a callback here, RNAUpdateCb.
Bottom line, it seems (for me atleast, who is unfamiliar to that code area) not so super easy to fix this properly.
Maybe one would need to write a custom (mass) copy operator which iterates over the curve points / handles or so. But i dont think those are exposed via python,
so this needs to be done in C.
Dec 30 2019
Dec 13 2019
Dec 2 2019
Nov 26 2019
Nov 24 2019
Nov 7 2019
Nov 4 2019
Nov 3 2019
@Lukas Stockner (lukasstockner97) Hi, feel free to commit the patch :) I am busy with other work and a bit out of the loop atm.
Oct 16 2019
Sep 29 2019
Sep 17 2019
Hmm, didnt actually check the code, but it possibly draws triangles in sculpt mode due to usage of MLoopTris instead of MFace, aka triangle only mesh representation vs tri and quad like before.
( I doubt sculpting supports ngons and polys directly, but i could be wrong here.) Could also be the drawing code does own triangulation there.
Tried the provided blend with 76650402f300 and a master version from september 13th.
Except maybe the extraneous green dot "far away" from the active vertex I also had no flicker or locking.
Windows 10 Pro 64-bit
Intel UHD 620 (laptop) (Lol, a miracle 2.8 seems to run flawlessly with this hardware :) )
Sep 16 2019
Sep 13 2019
improved sharpening mode : usable for csg objects and now threaded with tbb::parallel_for
Sep 12 2019
Sep 11 2019
sharpen features works with accumulate now + a few cleanups
Sep 10 2019
some linux compile fixes
removed some now unnecessary old experimental, active code
Not necessary any more since particle meshing functionality is included as mode toggle inside D4960 (voxel remesher / metaball remesher)
- Improved the gaussian smoothing algorithm and using this instead of openvdbs standard gaussian
- added sharpen edges / corners feature for voxel remesher to try to preserve original features of the mesh
- included particle meshing mode into voxel remesher. It belongs there too, since it shares openvdb and volume csg logic. This would be duplicated otherwise. A new modifier also creates more noise as other modifier devs need to take care of new numbering, modifying a lot of more files etc. It is just more hassle to add a new modifier than to add a new mode to a thematically totally related modifier, aka remeshing. It is also easier for users to remember to look for one modifier and know that the functionality is grouped in there.
Sep 2 2019
Aug 26 2019
Aug 20 2019
Ok, seems the desired effect of variable speed control can be already achieved by animating the override frame and / or the frame offset. Furthermore it would have introduced hassles with the previous frame state being potentially inconsistent. Closing.
- changed the RNA wording
- exposed a readonly timecode to the UI
- attempted to get rid of backward moving of objects when reducing the frame scale interactively or via keyframe, but objects seem to be temporarily stuck, any ideas for this ? Probably not properly solveable... hmm
Aug 11 2019
Now showing both the source and the call locations of the operator for addon python operators and included python operators like uv smart project.
Also added a "Source" button to toggle back to the source if you changed to one of the call locations.
Furthermore now (mostly) pointing to the correct line of the call in the according draw function.
added context.area.tag_redraw() after executing the operator. This correctly now draws the populated box layout without need to hover over it.
Jul 26 2019
Maybe just as another idea: what about volume-based boolean operations with OpenVDB ? But... the remesher can so far only make "soft" edges / beveled edges… it is (imho) very hard to nearly impossible to get sharp edges.
But you get different advantages like not needing to worry about self-intersections for example (although a volume of a flat object still is an issue, obviously).
Jul 25 2019
Jun 17 2019
May 31 2019
since @Brecht Van Lommel (brecht) and me discussed the revival of the particlemesher in blender.chat, setting him as reviewer here.
Solved the particle issue by treating the particlemesher modifier like the dynamic paint and smoke modifiers regarding particle system copy and deletion.
Fixed some crash bugs regarding loading and saving as well as copying objects with this modifier too.
Need to deal properly with Ngons still for the mask object, like using looptris or something like that.
But i think a first pass of general review may already happen.
May 30 2019
add an inline comment marking the area of the problem
Setting on "Planned Changes" since the particle issue is to be solved yet.