This fixes the issue of long spikes on sharp corners by rounding them,
guaranteeing that the bleed will never exceed the bleed distance
set by the user in any part of the mesh.
See: D4437
Two aspects are addressed:
- Correct computation of dilation distance,
so that dilated boundaries remain parallel to the original boundaries
(and with the actual distance specified as bleed distance).
- Dilate with regard to adjacent seams
instead of adjacent triangle edges, for a more correct result.
This is especially important in the case of concave shapes,
where spikes could overlap with actual geometry.
See: D4436
Some old AMD drivers crash when a vbo with stride 1 is used a few times.
I have not found a real solution to this problem. So the solution was to use a vbo with stride 4 (which in theory is less efficient and takes up more memory space).
- paintcurves were hitting an assert in outliner_add_element()
- missing outliner update when adding a paintcurve
- paintcurves were not showing an icon [they dont have a dedicated icon,
took the one used elsewhere]
Reviewers: brecht
Differential Revision: https://developer.blender.org/D4445
Added all 'Extended Cyrillic' chars I found in DejaVuSans (unfortunately
that one does not have the complete set).
Note: At some point we might want to switch to some more modern solution
than our Frankenstein font (thinking about noto one)...
Previously metadata was only shown for images which are saved
to disk.
This change makes it so that it's possible to see metadata right
after pressing F12.
This is fundamentally different from Shrink/Fatten for meshes, because the control points are not moved, only the radius.
Issue raised by Ronan Ducluzeau, name suggested by Campbell Barton
Not sure where that piece of code originates from, but trying to remap
usages of deleted scene to newly active scene in *whole* bmain is
really, really not the thing to do! Just use generic ID deletion code
here, no reason it could not handle the task properly. ;)
Looks like something forgotten at some point, define in callback flags
was there, just not used at all.
Added most obvious cases now (we are probably still missing some), and
proper handling for it in remapping code (when we hit such case, we
'convert' new_id to NULL and go on with it).
Related (as in, exposed by) T62076, but not the actual cause of that bug.
When move the mouse/pen very fast, the events were not enough to create smooth strokes.
I have used a simplified version of the same logic used with grease pencil objects to smooth annotations.
Cache the result of DNA_elem_array_size which was being called
for each element when reconstructing each struct.
Also skip padding members during reconstruction.
Gives ~18% overall speedup loading 10_010_A.anim.blend (r3154)
from the spring project.
- Avoid using white with low alpha to make grey.
Note that this is the second time we've run into this problem: T59626.
- Use a light backdrop when the icons are dark
so they're visible over a black background.
* Fix incorrect handling of children collections being linked more than
once in the hierarchy (previous code would make a new copy for each
link, instead of just re-linking the first copy for each extra link).
* Simplify some aspects of it (we do not need a GHash for new objects,
we can use ID->newid pointer instead, and some iterations can be done
directly on existing linked lists of old collection, instead of making
temp local copies of them).
* Move all copy logic into a single private recursive function (it was a
bit odd/disturbing to see calling function being indirectly called again
by the recursive helper one - not wrong, but that kind of code path can
quickly become problematic in recursive patterns).
* Added some comments about expected behavior of
`BKE_collection_duplicate()` depending on its booleans options.
Use 'size' instead of 'len' to represent the size of data in bytes,
'len' is used for the result of 'strlen' or the length of an array
in some parts of 'makesdna.c' & 'dna_genfile.c'.
Also clarify comments and some variable names, no functional changes.
As the 2D viewport color is white, if the object default color is white, when wireframe is enabled the object is invisible.
Now, the grease pencil object default viewport color is black.