Age | Commit message (Collapse) | Author |
|
also avoid allocs per node in pbvh_bmesh_node_limit_ensure()
|
|
|
|
Perhaps we'd better move this include to BLI_utildefines as we made with
with other includes needed for BLI_abort?
|
|
immediately freed after)
|
|
- was ordering vertex args unnecessarily.
- was adding the same edges multiple times into the edgehash.
|
|
which orders on assignment.
|
|
|
|
reserve argument.
|
|
ghash since r57657)
having 2 free buckets for each entry is faster but uses more memory.
use the original size, best case 3 entries per bucket.
|
|
here is not efficient for such cases, a ray depth can give up to 2^depth rays due
to the ray splitting in two at each depth. A proper solution requires a better
algorithm, for now I've ensured that you can at least cancel such renders. The
overhead from the extra test_break is negligible.
|
|
|
|
- any error in cloth_build_springs wasn't freeing the edge-hash.
- was checking BLI_edgehash_haskey on matching vertices.
- was looping over setting NULL for all elements of a calloc'd array.
|
|
pass in the argument to reserve the size.
|
|
also reserve the total number of edges in the hash when its created.
|
|
|
|
the hash as an arg (avoids resizing in simple cases when the hash is created and filled immediately).
|
|
* fix old bug: wrong layout that could happen when switching between thumbnail view and list view. This caused the layout to be recalculated sometimes and the items being moved. Reason was that the layout was wrongly initialized without the scroll bars, so calculated wrongly.
|
|
dirty (could cause errors later).
|
|
A variable keeping a bounding box was referenced after it was flagged as empty.
|
|
|
|
|
|
curvemapping_initialize
|
|
Actually, happened in any view2D... Just added a call to WM_event_add_mousemove() in view_pan_apply, so that overed/active button is refreshed in this case.
|
|
|
|
|
|
internal.
Object.imat isn't always the inverse of Object.obmat, needs to be set before usage
as mentioned in DNA_object_types.h.
Thanks to Miika for tracking down the cause of this bug.
|
|
Use scene's GPencil when active object is deselected. Else it can be tricky and not user-friendly to access to the scene's GPencil once some objects have GPencil data (you have to select/active a non-gpencil object, or switch to a layout without active object...).
|
|
values...
|
|
In previous optimization in outliner I assumed that order in treehash was not important.
But testing outliner in datablocks mode revealed a problem: when user expands multiple recursive levels and then closes any element, it always closed the top level of recursion.
Now it should work fine with recursive trees.
Now treehash contains groups of elements indexed by (id,nr,type). Adding an element with the same (id,nr,type) results in appending it to existing group. No duplicates are possible in treehash.
This commit should also make lookups a little bit faster, because searching in small arrays by "used" is faster than searching in hashtable with duplicates by "id,nr,type,used".
|
|
* isfinite is not defined, in Blender code we use 'finite' instead
|
|
inconditionnaly aligned when the parent was. E.g.in
col = layout.column(True)
row = col.row(False)
Items in row would be 'aligned' in the same group as those in col. Now to get this happening, you have to set row as aligned as well.
Please note that fixes for py UI scripts will follow in another commit.
Also fixed labels of RNA pointers searchboxes, which were missing the colon!
|
|
by sjoerd_de_vries
|
|
|
|
Code could enter in an infinite loop when curve value was an odd multiple of PI (i.e. 180°)...
Current code was also factorized and got rid of fabs calls! ;)
|
|
also correct python mathutils api, was missing vector checks.
|
|
|
|
to the mirror-plane would not be welded.
|
|
also remove redundant normal copy.
only triangulate the mesh if its needed when enabling dyntopo.
|
|
cuts the mesh in half based on the cursor location and the viewport,
optionally supports filling the cut area (with uvs. vcols, etc),
and removing geometry on either side of the cut.
|
|
edges face is removed (happens in rare cases).
|
|
|
|
geometry could read freed memory when vertices were removed.
|
|
scanfill isn't so simple because of errors if one edge can't merge.
|
|
attempt to remove vertices twice.
|
|
|
|
|
|
- Solved issue with changing marker's frame number
for tracks which doesn't belong to camera object.
- Support find_frame, insert_frame and delete_frame
functions for plane markers.
|
|
Issue was caused by precision loss in alpha under code.
Now it might be slower a bit, but it's as precise as it
could be. At least i hope so :)
|
|
- snap axis-aligned verts to the center.
- expose the threshold for detecting if a vertex is on the axis.
|
|
|