November 20, 2021, 21:31 (GMT) |
Merge branch 'master' into temp-ui-cpp |
November 20, 2021, 20:59 (GMT) |
Remove designated initializer |
Revision fbc9ff9 by Alexander Gavrilov November 20, 2021, 19:25 (GMT) |
Depsgraph: connect up drivers on various physics properties. It seems drivers for physics properties weren't being linked to evaluation nodes. This connects settings used by modifiers to Geometry; particle settings and rigid body data to Transform which seems to contain rigid body evaluation; and force fields to object Transform, since fields can exist on empties. Differential Revision: https://developer.blender.org/D10088 |
Revision fe436b8 by Alexander Gavrilov November 20, 2021, 19:25 (GMT) |
Constraints: refactor the D7437 patch adding Custom Space for constraints. As mentioned in the comments to that patch, I had an idea for a different way to do some technical aspects, but it was too complicated to force changes in the original patch. Thus I submit this follow up patch. First, instead of modifying all the get_constraint_targets and flush_constraint_targets callbacks, introduce wrapper functions for accessing constraint targets, convert all code to use them, and handle the new reference there uniformly for all constraints. This incidentally revealed a place in the Collada exporter that didn't clean up after retrieving the targets. Also, tag the special target with a flag so other code can handle it appropriately where necessary. This for instance allows dependency graph to know that the Use B-Bone Shape option doesn't affect this specific target. Finally, rename and simplify the function for initializing the custom space, and make sure it is called everywhere necessary. Differential Revision: https://developer.blender.org/D9732 |
Revision e52dec7 by Alexander Gavrilov November 20, 2021, 19:25 (GMT) |
Armature: apply Y scale to B-Bone segments. This fixes a strange behavior where the segments were not actually scaled in the Y direction to match their actual length, thus producing gaps or overlap depending on the shape of the curve. For transformation the change should be very small if enough segments are used, but this will affect the results of the Copy Transforms and Armature constraints, so a backwards compatibility option is provided. Newly created bones default to the new behavior. |
Revision 44aee3d by Alexander Gavrilov November 20, 2021, 19:25 (GMT) |
Temporary Hack: provide B-Bone scale versioning for files with old patch. Run the versioning code for the conversion of bbone scale to an xyz vector if it has fields that correspond to the old version of the patch before that change requiring versioning. The actual Y (length) scale value from the old patch isn't versioned and will be lost, requiring manual fixing. |
Revision ed340b1 by Alexander Gavrilov November 20, 2021, 19:25 (GMT) |
Bone Overlay: support bone wireframe opacity settings. When weight painting the bone overlay is extremely intrusive, effectively requiring either extensive use of hiding individual bones, or disabling the whole bone overlay between selections. This addresses the issue by adding two bone opacity sliders that are used for the 'wireframe' armature drawing mode. One directly controls the uniform opacity as the straightforward option. The other one allows fade based on the depth from the camera, using exponential decay with the slider specifying the 'half-life' depth. This is intended as a way to automatically hide bones in distant parts of the mesh while focused on a specific part. Differential Revision: https://developer.blender.org/D11804 |
Revision d126984 by Alexander Gavrilov November 20, 2021, 19:25 (GMT) |
Force Fields: implement new true power and custom falloff options. The 'power' falloff option in Blender force fields does not actually generate a true power falloff function, as pointed out in D2389. However, that patch adds a special 'gravity' falloff option to Force fields, without addressing the shortcoming in the common options. The reason for not using the true curve in the options, as far as one can tell, is that the power curve goes up to infinity as the distance is reduced to 0, while the falloff options are designed so that the maximum value of the curve is 1. However, in reality forces with a power falloff don't actually go to infinity, because real objects have a nonzero size, and the force reaches its maximum at the surface of the object. This can be used to integrate an option to use a true power falloff with the design of falloff settings, if it requires a nonzero 'minimum' distance to be set, and uses a curve that reaches 1 at that distance. Since this is adding a new feature to the minimum distance value, it is also a good opportunity to add a feature to the maximum distance. Specifically, the new options can be used to apply arbitrary brush-style falloff curves between min and max, including a fully custom curve option. When used together with power falloff, the two curves are multiplied together. While the true power option allows creating more physically correct forces, the custom curves aid artistic effects. Differential Revision: https://developer.blender.org/D8075 |
Revision d78efe0 by Alexander Gavrilov November 20, 2021, 19:24 (GMT) |
Animation: support filtering for curves that have cycle issues. It is possible to have curves with cyclic extrapolation that have a mismatch in their end keyframes, causing a jump. Also, since the looping behavior is defined per curve rather than at action level, it is possible for curve loop periods to get out of sync with each other. This commit adds an option to compare curves against the manual frame range specified in the action, and treat any mismatches as errors for the purpose of F-Curve filtering. When enabled, the check verifies that end values of cyclic curves match, curves within a cyclic action have valid cyclic extrapolation, and the action period evenly divides by the curve period (since a curve looping at e.g. half of the action period length still repeats in sync with the action). Ref: https://developer.blender.org/D11803 |
November 20, 2021, 17:31 (GMT) |
Merge branch 'master' into temp-vert-normals-cleanup |
November 20, 2021, 17:13 (GMT) |
Fix merge error |
November 20, 2021, 17:02 (GMT) |
Merge branch 'master' into temp-geometry-nodes-timings |
November 20, 2021, 16:52 (GMT) |
Sculpt-dev: undo debug disabling of threads for color filter. |
November 20, 2021, 16:51 (GMT) |
Fix T92090: Eevee crash with Intel HD 4000 and macOS 10.15.7 A recent security update to macOS 10.15.7 causes crashes when using Eevee and various other 3D viewport features. It appears that glGenerateMipmap is broken, causing a crash whenever its commands are flushed/submitted to the GPU. Ideally this would be fixed in a driver update, however it's unlikely this will happen. Earlier macOS versions have been receiving security updates for 2 years, and that window has just passed for 10.15. Further, computers with these GPUs can't upgrade to a newer macOS version. As a workaround, disable mipmaps on these GPUs, by setting the mipmap max level to 0 and not calling glGenerateMipmaps. Effects like depth of field also use mipmaps, but fill in the mip levels by other means. In those cases we keep the mipmap level. Differential Revision: https://developer.blender.org/D13295 |
November 20, 2021, 16:49 (GMT) |
Sculpt-dev: add random_[hue/sat/value] color filter options from sculpt-mode-features * Follows comment in mesh filter's randomize and uses BLI_hash_int_3d. * Added a seed parameter. * Also renamed SCULPT_get_mdyntopo to SCULPT_get_sculptvert. |
November 20, 2021, 15:49 (GMT) |
Sculpt-dev: fix broken vcol attr auto-creation * Fixed BKE_sculpt_color_layer_create_if_needed * Also fixed BKE_id_attribute_active_color_set, accidentally pasted the getter's precondition. |
November 20, 2021, 04:51 (GMT) |
Cleanup: Move search menu template to C++ This will allow using improved data structures, and make other refactors to the search button API cleaner. |
November 20, 2021, 00:08 (GMT) |
This review fixes USD Preview Surface import bugs reported in T90535 (missing materials in Animal Logic's ALab). Differential Revision: https://developer.blender.org/D13297 |
Revision 6392ca2 by Germano Cavalcante November 19, 2021, 19:09 (GMT) |
Merge branch 'arcpatch-D2624' Conflicts: source/blender/editors/transform/transform_input.c source/blender/editors/transform/transform_ops.c source/blender/windowmanager/intern/wm_operator_utils.c |
Revision c6e49ad by Germano Cavalcante November 19, 2021, 19:06 (GMT) |
Allow navigating while transforming Navigating while transforming is not a new idea: - https://rightclickselect.com/p/ui/Tqbbbc/allow-navigating-while-transforming (See comments); - {D1583} - {T37427} This feature allows us to be more precise where the transformed element will be placed. This would avoid, for example, the need for the node editor to automatically update the viewport when a node is transformed. And with {D9415} navigating while transform becomes a necessity because: how could we move from a point at the bottom of one object to the top of another without being able to rotate the view? ##Patch The patch implements this feature as being experimental (See image): {F11826349, layout=left, width=600} Because transform's modal keymaps conflict, two (temporary) operators were created to update the keymap and avoid conflicts. The main solution in the patch was to create the `bool WM_operator_do_navigation(...);` utility that can be used for any operator. ##Implementation Details - This feature affects all editors where transforming is possible (UV, VSE, Graph...) - The Node editor is the only one that, when canceling, the viewport position is reset - Default modal keymaps need to be edited to avoid conflict (in the patch a temporary operator was implemented to automatically update keymaps) Differential Revision: https://developer.blender.org/D2624 |
|