Blender Git Commits

Blender Git "master" branch commits.

Page: 2364 / 5574

May 10, 2016, 16:47 (GMT)
CMake: optional date/time overrides for reproducible builds
May 10, 2016, 16:47 (GMT)
Fix T48387: Mirror weights keeps groups assigned

Swapping the weights kept zero weight verts assigned.
May 10, 2016, 16:47 (GMT)
BMesh: only remove loose geometry when joining faces

Joining faces could remove faces that happened to share an edge that would normally be removed.
May 10, 2016, 15:57 (GMT)
BLI_task: nano-optimizations to BLI_task_parallel_range feature.

This commit makes use of new taskpool feature (instead of allocating own tasks),
and removes the spinlock used to generate chunks (using atomic ops instead).

In best cases (dynamic scheduled loop with light processing func callback), we
get a few percents of speedup, in most cases there is no sensible enhancement.
May 10, 2016, 15:30 (GMT)
Depsgraph: A bit of experiment with skipping where_is_bone if channels is taged as done

This is what old dependency graph was doing and apparently this avoids some updates,
however it's not really clear why those nodes are considering done. Maybe just because
of the way how relations are working. But needs a closer investigation.
May 10, 2016, 15:15 (GMT)
Avoid per-constraint-target call of strlen

It's enough to do one single comparison to see if the string is empty or not.
May 10, 2016, 14:45 (GMT)
Optimize action constraint by avoid memory allocation
May 10, 2016, 14:14 (GMT)
Attempt to fix blenplayer after recent changes
May 10, 2016, 13:43 (GMT)
Revert "Task scheduler: Avoid mutex lock in number manipulation functions"

Appears mutex was guarateeing number of tasks is not modified at moments
when it's not expected. Removing those mutexes resulted in some hard-to-catch
locks where worker thread were waiting for work by all the tasks were already
done.

This reverts commit a1d8fe052ccd8945f14be5a50bd5af581b89c643.
May 10, 2016, 13:42 (GMT)
Depsgraph: Use some more threading when tagging and finalizing evaluation

Also don't reset values there which were re-set on the next evaluation anyway.
May 10, 2016, 12:59 (GMT)
Task scheduler: Avoid mutex lock in number manipulation functions

It seems using atomic operations here we can avoid having mute without
breaking anything.

Thanks Bastien for double-checking the changes!
May 10, 2016, 12:31 (GMT)
Fix T48393: Blender player doesn't start on files saved with with cyrillic letters in path
May 10, 2016, 11:10 (GMT)
Fix own mistake in rBd617de965ea20e5d5 from late December 2015.

Brain melt here, intention was to reduce number of tasks in case we have not much chunks of data to loop over,
not to increase it!

Note that this only affected dynamic scheduling.
May 10, 2016, 11:02 (GMT)
Depsgraph: For big graphs update pending parents in threads

Gives additional speedup from ~88 to ~91 fps with a test rig.
May 10, 2016, 10:05 (GMT)
Depsgraph: Comment evaluation priority out for now

It uses some additional compute power and the evaluation priority is
not even used.

This brings fps 88.2 with blenrig_for_debugging.blend on this desktop.
May 10, 2016, 09:25 (GMT)
Depsgraph: Avoid multipel editors update per same ID

Simple thing, and apparently fps goes up to 80 with the demo file from jpbouza.

Not sure why at this point fps is so much higher than the old dependency graph
here now. And it's definitely something what others should verify as well.
May 10, 2016, 08:39 (GMT)
Depsgraph: Don't leave active thread if there's only one children node

This reduces stress on the task scheduler and avoids some unwanted overhead
caused by all the threading business in the cases when there's only one
children node. We try to immediately switch to it's evaluation now, keeping
active thread up and running.

This bumps FPS from 58 to 64 on the blenrig test file from jpbouza.
May 10, 2016, 08:01 (GMT)
Task scheduler: Add thread-aware task push routines

This commit implements new function BLI_task_pool_push_from_thread()
who's main goal is to have less parasitic load on the CPU bu avoiding
memory allocations as much as possible, making taks pushing cheaper.

This function expects thread ID, which must be 0 for the thread from
which pool is created from (and from which wait_work() is called) and
for other threads it mush be the ID which was sent to the thread working
function.

This reduces allocations quite a bit in the new dependency graph,
hopefully gaining some visible speedup on a fewzillion core machines
(on my own machine can only see benefit in profiler, which shows
significant reduce of time wasted in the memory allocation).
May 10, 2016, 06:47 (GMT)
Correct armature-sketch snap context use

Use scene snap mode.
Also allow passing NULL ray-depth which falls back to BVH_RAYCAST_DIST_MAX.
May 10, 2016, 06:29 (GMT)
Fix T48369: Missing suport for main '+' key.

Many keyboard layouts (italian, spanish, german...) have direct access to '+' key on main
keyboard area (not the numpad one), ans x11 has own define for this key, so use it instead
of generating an unkown key event.

Note that we most likely have much more missing 'specific' keycodes for non-US keyboard layout,
but think since we already had a 'minus' keyevent, supporting 'plus' one is totally consistent.
And we had a spare space in our defined values just for it even!

This keyevent is only supported/generated by x11 and cocoa Ghost backends for now,
neither SDL nor win32 seem to have matching key events...
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021