July 30, 2019, 12:36 (GMT) |
BLI_task: tweak default chunk size for `BLI_task_parallel_range()`. Previously we were setting it to 1 (aka no 'chunking'), to follow previous behavior. However, this is far from optimal, especially with CPUs that can have tens of threads nowadays. Now taking an heuristic approach (inspired from the one already existing for `BLI_task_parallel_listbase()`, which tries to guesstimate best chunk sizes based on several factors (amount of threads/parallel tasks, total number of items, ...). Think this is a reasonable base ground, more optimization here would of course be possible. Note that code that was already explicitely settings some value here won't be affected at all by that change. |
July 30, 2019, 12:25 (GMT) |
Fix T66629: Library override - fails when armature and mesh are in separate collections. Some ugly very low-level collection code was using the generic LIB_TAG_DOIT tag... should never happen, that one is for rather high-level code to use, core process shall use own tags. |
July 30, 2019, 12:25 (GMT) |
Fix T67067: Wrong rotation input values when using shortcuts on keyboard like rx720. This allows to type in numinput 720 and indeed get a rotation of 720�, not 0�... This patch basically applies 'big rotations' in steps < 180�, such that compatible rotation works as expected. This implies resetting current rotation to initial one first, otherwise we'd end up applying much more turns than expected when that code is called more than once. It also makes things somewhat slower for big rotations (millions of degrees), Hence we clamp to 1000 turns max. And since that's a case that cannot happen with regular tool/widget-driven rotation, it's only enabled when numinput is used for now. Review task: https://developer.blender.org/D5289 |
July 30, 2019, 12:06 (GMT) |
Cloth: optimize obstacle metric by returning if planes is empty |
Revision 773b6bb by Jacques Lucke (builtin-simulation-nodes, functions, functions-experimental-refactor, particle-solver-dev, simulation-tree) July 30, 2019, 11:58 (GMT) |
rename modifier to effector in some places That was missing in a previous commit. |
Revision c2e63d6 by Jacques Lucke (builtin-simulation-nodes, functions, functions-experimental-refactor, particle-solver-dev, simulation-tree) July 30, 2019, 11:44 (GMT) |
add color attribute type |
July 30, 2019, 11:43 (GMT) |
Fix crash clicking in the 3D view on startup Setting the 3D view cursor on startup could crash because the viewport hasn't been assigned to the region. |
July 30, 2019, 11:28 (GMT) |
Initial, mostly broken VR viewport drawing on own thread Spawns a separate thread to do any VR session drawing on. There are four reasons for this: * VR session doesn't need the usual main loop procedure for drawing. With the drawing on a separate thread, the session doesn't have the overhead of the other parts of the main loop. * OpenXR performs thread blocking operations to synchronize rendering with the device refresh rate. This would conflict with the rest of Blender, causing lags on event handling, drawing, etc. * With an own thread, we can keep a single OpenGL context alive, avoiding expensive context switches. This should improve performance significantly. * With a bit more work, viewports can draw entirely in parallel (at least the CPU side of it), pushing performance even further. Drawing the viewport on a separate thread shouldn't be much of an issue. The draw-manager is already thread safe (mutex guarded). Not much seems needed to get it entirely concurrent, allowing viewport drawing from separate threads without any synchronization (i.e. only one at a time). I had to create an own depsgraph for the VR draw thread so the viewport gets its own buffers for its own OpenGL context. Right now this is utterly broken, but at least an empty viewport is drawn for the VR session in a separate thread. Issues are: * VR viewport doesn't draw any objects, just background + overlays (apparently the VR session depsgraph isn't built correctly). * OpenGL context of the main thread seems messed up when drawing the VR view. Result is drawing glitches and eventually Blender crashes. * Exiting the VR session causes failed assertions and memory leaks. |
Revision 33c29f3 by Jacques Lucke (builtin-simulation-nodes, functions, functions-experimental-refactor, particle-solver-dev, simulation-tree) July 30, 2019, 11:27 (GMT) |
simplify the way attribute information is stored |
July 30, 2019, 11:14 (GMT) |
Cloth: fix issue in compute_face_sizing, epsilon for invert_m2, face_sizing debug statements Problem was that the det(facedm) was 0.0f or at least close to 0.0f which means inverse would lead to division by 0.0f error which resulted in -nan. |
July 30, 2019, 11:00 (GMT) |
Tracking: Fix wrong usage of draw buffers Curve drawing was attempting to draw reprojection error curve when it was not visible. Worst thing is that the imm was not informed about vertices, so the code was causing an assert in debug mode. Probably, it is also what have caused random crashes after recent changes. |
July 30, 2019, 10:35 (GMT) |
Merge remote-tracking branch 'origin/master' into sybren-usd |
July 30, 2019, 10:25 (GMT) |
Fix T67274: Graph Editor Normalization broken by Keyframe that uses Easing or Dynamic interpolation We didn't include and of the newer interpolation types in the normalization function. Besides taking into account these newer types, we now also only evaluate the curves when needed. If the values between the control points won't exceed the control point values, we only use the start/end values for our normalization Reviewed By: Brecht Differential Revision: https://developer.blender.org/D5365 |
Revision 4bbee4a by Jacques Lucke (builtin-simulation-nodes, functions, functions-experimental-refactor, particle-solver-dev, simulation-tree) July 30, 2019, 10:14 (GMT) |
new Change Particle Color node |
Revision 99e5f16 by Jacques Lucke (builtin-simulation-nodes, functions, functions-experimental-refactor, particle-solver-dev, simulation-tree) July 30, 2019, 10:01 (GMT) |
new Separate Color node |
Revision 0935836 by Jacques Lucke (builtin-simulation-nodes, functions, functions-experimental-refactor, particle-solver-dev, simulation-tree) July 30, 2019, 10:01 (GMT) |
new color socket type |
July 30, 2019, 09:57 (GMT) |
Particle: Fix incorrect access to evaluated mesh Mesh can not be requested from original object, and it can not be copied into evaluated modifier because there is no such a thing yet. It can not be done this way now, because getting evaluated object will force it to re-calculate, which kind of defeats idea of this code to preserve un-baked particles. |
July 30, 2019, 09:46 (GMT) |
3D View: Move selection API to a Selection engine. This commit moves the API of selecting faces, vertices and edges to a DRW manager engine. Reviewers: campbellbarton, fclem Subscribers: jbakker, brecht Differential Revision: https://developer.blender.org/D5090 |
July 30, 2019, 09:30 (GMT) |
Fix T67906: empty menus for hooks if non-hook modifiers are present |
July 30, 2019, 09:24 (GMT) |
Py node shader wrapper: Add clamping to official min/max values. Taking values from relevant node definition C file... Related to T67889. |
|
|
|


Master Commits
MiikaHweb | 2003-2021