Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-11-29Run clang-format to fix line length after D8915.Alexander Gavrilov
2020-11-29CMake/macOS: Use custom LIBDIR if set on CLIRebecca Dengate
Reviewed By: ankitm Maniphest Tasks: T83174 Differential Revision: https://developer.blender.org/D9664
2020-11-28Speed up finding patch components in new boolean.Howard Trickey
By checking if a cell has already been processed in the finding patch component code, an enormous speedup happens. This only will be noticeable if there are lots of patches, and some cells with a large number of patches.
2020-11-28Speedups for finding cells in new boolean.Howard Trickey
In case where there are coplanar instersections where each part has a lot of triangles, the finding-cells algorithm was very inefficient. This uses a Set instead of a Vector to keep track of a cell's patches, avoids going through all patch x patch combinations, avoids going through all patches to renumber after a merge, and merges smaller patch-sixe cells into larger ones. All this reduces the time to find cells in the cited case by a factor of 10.
2020-11-28Fix Auto Clamped limits when smoothing the transition of cyclic curves.Alexander Gavrilov
The value of l[count-1] should be ready by the time hmin/hmax is computed. Otherwise the left limit for the transition key would be scaled wrong.
2020-11-28Fix some naming and comments in F-Curve smoothing code.Alexander Gavrilov
2020-11-28Fix T83023: incorrect shape of cyclic F-Curve with only two points.Alexander Gavrilov
The equation solver didn't handle the one unknown case correctly.
2020-11-28GPencil: Fix unreported vertex size for Bezier handlesAntonio Vazquez
By error, the Bezier points were using the mesh vertex size, not the grease pencil vertex size.
2020-11-27Fix T82758: Convert Proxy to Override: Local constraints aren't saved.Bastien Montagne
Ensure consistent order of pose bones. Now it should always match the one from bones in armature obdata (as exposed by e.g. RNA, i.e. children-first). Previously when some pose bones would need to be added or removed from a pose due to changes in the bone armature, or if bones in armature were re-ordered, the bones order in pose would not match anymore the one from armature, and could even become different between e.g. a proxy and its linked source. This was not really nice, but not a big issue before either. But with diffing process of override, consistent order of items between reference linked collection and local override one is crucial. Reviewed By: #animation_rigging, sybren Maniphest Tasks: T82758 Differential Revision: https://developer.blender.org/D9646
2020-11-27Fix transform snap mixed with incrementalGermano Cavalcante
The incremental was taking priority but the other elements are mandatory.
2020-11-27Fix T83092: Direction of rotation with View orientation changed in 2.91Germano Cavalcante
The change was intentional so that the orientation matrices match (`rv3d->viewinv` becomes equal to the orientation matrix). But, although in a projection matrix the Z axis is negative, this should not be so from the user's point of view. So the solution here is to negate the Z axis when the View orientation is chosen. This affects all modes, but is only evident for rotation. --- Another change here is to use the final rotation value (`values_final`) for the gizmo drawing since this value can be changed by the mode.
2020-11-27Fix T82156: Object with constraints translates when parentedSybren A. Stüvel
Avoid the evaluation of constraints when computing the parent-inverse matrix. Constraints are meant to be evaluated last; object transforms are computed this order: 1. `parent->obmat` (the parent object's world matrix) 2. `ob->parentinv` (the object's parent-inverse matrix) 3. Object's loc/rot/scale 4. Object's constraint evaluation When the constraints are used to compute the parent-inverse matrix, their effect is moved from step 4 to step 2 in this list, potentially rotating or scaling the object's local transform. This causes unwanted movement as reported in T82156. Reviewed By: looch Differential Revision: https://developer.blender.org/D9413
2020-11-27Cleanup: Animation, clean up FCurve Cycles modifierSybren A. Stüvel
Simplify conditions and declare variables `const` where possible. No functional changes.
2020-11-27Cleanup: Add `r_` to return parameterNathan Craddock
Prefix a return parameter with `r_` to follow the style guide. No functional changes.
2020-11-27Cleanup: Move logic to `outliner_find_item_at_x_in_row`Nathan Craddock
Move the logic for determining if the item at a given x position is an icon into the function. This is used for determining selection over an icon, and will be used in a later commit for checking for hover over an icon. No functional changes.
2020-11-27Add performance timing to mesh_boolean.cc.Howard Trickey
You can uncomment the PERFDEBUG define to get timings.
2020-11-27Sculpt: Refactor transform code to allow incremental updatesPablo Dobarro
This adds support for incremental updates in the sculpt transform code. Now tools can define if they need the displacement applied for the original coordinates or incrementally. This is needed for features like elastic transform or cloth deformation target in the transform tool. No functional changes. Reviewed By: sergey Differential Revision: https://developer.blender.org/D9547
2020-11-26UI: Use decorators in volume modifiersHans Goudey
This is consistent with the UI for other modifier types.
2020-11-26GPencil: Cleanup - Remove unused old shadersAntonio Vazquez
These fill shaders were used with the old draw engine.
2020-11-26Transform: Improve event detection for AutoConstrainGermano Cavalcante
The event "value" is not really required since this operation works as a toogle. This change cleans and simplifies the code.
2020-11-26Cleanup unintentional change in rB8a2270efc52aBastien Montagne
Note that the whole thing need to be redone/properly fixed, but this is a bit more complicated so for now fix in rB8a2270efc52a is 'good enough'.
2020-11-26Fix T83055: setting rna pointer properties can create bogus custom propertiesPhilipp Oeser
This was reported in the form of the eyedropper of the 'Parent' property creating a custom property 'parent' if self was picked. Problem arises when certain checks for setting rna pointer properties failed (for example: the PROP_ID_SELF_CHECK check) and then a different code path was entered (which was only meant for IDProperties). Problem was introduced in rBa7b3047cefcb. To solve, now first enter the branch for rna-based pointer properties, then perform the sanity-checks (and if these fail: dont enter the other unrelated codepath but instead do nothing) Maniphest Tasks: T83055 Differential Revision: https://developer.blender.org/D9652
2020-11-26Fix T82729: Crash in rna_EffectorWeight_path when object has fluid andPhilipp Oeser
dynamic paint modifiers Looks like prior to the introduction of mantaflow, the former SmokeModifierData always had a domain initialized (even if its type was set to None). Since mataflow, the FluidModifierData type needs to be set to MOD_FLUID_TYPE_DOMAIN (otherwise domain is invalid) Maniphest Tasks: T82729 Differential Revision: https://developer.blender.org/D9644
2020-11-26Fix T83046: Material change not updating in the link of an override.Bastien Montagne
Code was actually not applying any override operation over linked data. Reasonn behind that was that if library file is saved with latest override applied then this is not needed, since data saved for the override in the lib file is already up to date. But this is actually fully breaking in case someone update the lib file of the lib file, without re-saving the libfile itself. So now we alwaya apply overrides also on linked data. Note that this will not fix the case where a resync is needed.
2020-11-26UI: Fix incorrect offset for panel label when zooming inHans Goudey
The panel title text intersected any buttons in the header because the label offset retrieved from the layout code was not scaled by the block's zoom level. Error in rB0d93bd8d63980.
2020-11-26Fix T83020: Transform: AutoConstraint being confirmed without releasing the MMBGermano Cavalcante
The transform modifiers are confirmed by releasing any button. Thus, the operation can be falsely confirmed if the button that launched the operation is released after the modifier has been activated. Previously the events that confirmed the modifiers were hardcoded. An option to fix this would be to add custom confirmation keyitens for specific modifiers. But this can be a bit confusing and would make the modal keymap even bigger. So the solution here is to skip the button that launched the operation when confirming the modifier.
2020-11-26Fix T80970: Copy Rotation constraint incorrect under shearJoseph Brandenburg
Orthogonalize the constraint target's matrix before decomposing it into Euler angles. This removes sheer, and is actually a requirement for correct decomposition. It's conceivable that someone has used the incorrect behaviour in a rig. As the shear caused unpredictable flipping of the constrained object, this is unlikely. Reviewed By: angavrilov, sybren Differential Revision: https://developer.blender.org/D8915
2020-11-26Cleanup: clearer marking of what was changed in GTestAddTests.cmakeSybren A. Stüvel
Replace `Blender` with `BLENDER` so that it's more clearly a marker, and not just the name. No functional changes.
2020-11-26macOS: Patch OpenImageIO's ustring for ARM.Stefan Werner
OpenImageIO's ustring makes assumptions about the interals of std::string which aren't true on macOS/ARM. A patch for OpenImageIO addresses this for macOS/ARM builds only, at the expense of potentially duplicated allocations of strings.
2020-11-26macOS: Added new location for Homebrew.Stefan Werner
The build script for macOS dependencies expects to find bison provided by Homebrew under /usr/local. Since the default install location for Homebrew changes on macOS/ARM, the script now looks at the host architecture and switches to /opt/homebrew on Macs with Apple Silicon.
2020-11-26Fix T81265: Animation is not evaluated when collection is included into view ↵Bastien Montagne
layer. Just tag objects in un-excluded viewlayer for animation update.
2020-11-26Fix T82452: Outliner: Cyclic "Original ID" panel in Data API.Bastien Montagne
I cannot think of any case where we'd want to show this pointer in UI anyway, so just tag it with `PROP_HIDDEN`.
2020-11-26Fluid: Updated Mantaflow source filesSebastián Barschkis
This update introduces two improvements from the Mantaflow repository: (1) Improved particle sampling: - Liquid and secondary particles are sampled more predictably. With all parameters being equal, baked particles will be computed at the exact same position during every bake. - Before, this was not guaranteed. (2) Sparse grid caching: - While saving grid data to disk, grids will from now on be saved in a sparse structure whenever possible (e.g. density, flame but not levelsets). - With the sparse optimization grid cells with a value under the 'Empty Space' value (already present in domain settings) will not be cached. - The main benefits of this optimization are: Smaller cache sizes and faster playback of simulation data in the viewport. - This optimization works 'out-of-the-box'. There is no option in the UI to enable it. - For now, only smoke simulation grids will take advantage of this optimization.
2020-11-26UI: Allow theming the alternate row color in the sequencerErik Abrahamsson
Previously, the alternate row color in the Video Sequence Editor was just a shaded version of the editor's background color. This makes it theme-able just like in the file browser and outliner, although the default color is very slightly different. Differential Revision: https://developer.blender.org/D9634
2020-11-26Fix Edit Face Set operator not being cancelled when the cursor is not over ↵Pablo Dobarro
the mesh If the cursor is not over the mesh, the operator was still using the last Face Set ID updated by the drawing cursor code when the cursor was over the mesh. This now cancels the operator instead of modifying a Face Set that will look random to the user. Reviewed By: sergey Differential Revision: https://developer.blender.org/D9545
2020-11-26Rename use paint symmetry to use mesh symmetry in quadriflowPablo Dobarro
The original name was chosen because symmetry was a property of the Paint struct. Now symmetry is a property of meshes, which also makes the name of the property easier to understand. Reviewed By: sergey, dbystedt Differential Revision: https://developer.blender.org/D9618
2020-11-25Cleanup: Typo in `print_default_info` function name.Bastien Montagne
2020-11-25Fluid Particles: fix viscoelastic spring threading crash again after D7394.Alexander Gavrilov
Since D6133 fluid particle code uses thread local storage to collect springs created during a time step before adding them to the actual spring array. Prior to the switch to TBB there was a single finalize callback which was called on the main thread, so it could use psys_sph_flush_springs and insert the new entries into the final buffer. However in D7394 it was replaced with a reduce callback, which is supposed to be thread safe and have no side effects. This means that the only thing it can safely do is copy entries to the other temporary buffer. In addition, careful checking reveals that the 'classical' solver doesn't actually add springs, so reduce isn't needed there. Differential Revision: https://developer.blender.org/D9632
2020-11-25RNA Armature: Improve the description of AxisRollFromMatrixGermano Cavalcante
The roll value may not be as expected when a matrix is not orthogonal or has a negative determinant. This can lead to confusion as seen in T82930. Therefore, make it clear that this is a limitation and that a value for the roll is somewhat indeterminable in these cases. This fixes T82930
2020-11-25GPencil: Disable vertex color when use holdoutAntonio Vazquez
If the material has the holdout enabled, the value of the vertex color must not be used.
2020-11-25Fix T82988: Div by zero with curve deform modifierRobert Guetzkow
In `calc_curve_deform` a factor is calculated without checking if the divisior is zero or close to zero. This patch adds the missing checks and sets the factor to zero if the division shouldn't be computed. Reviewed By: mont29 Differential Revision: https://developer.blender.org/D9645
2020-11-25Atomics: Fix missing 64bit implementation for 32bit platformsSergey Sharybin
Blender uses 64bit atomics to manipulate SessionUUID, and these atomics were not defined on any of 32bit platforms. While official support is limited to 64bit platforms only, the code should not make assumptions about bitness or endianess, in terms that there should be codepaths and fallback (or provision of them) for 32bit platforms. This change makes 64bit atomic functions defined for all platforms. The atomic_test was compiled and successfully tested on i686 and armv7l platforms. The rest of compilation process of Blender will be very tedious, so that was not done. This change is essential, but not necessarily enough to make Blender compilable on i686 (ability to compile Blender on 32bit platforms was lost during the 2.91 development). This is a functional part of original fix done by Brecht in D9577.
2020-11-25Atomics: Cleanup, move defines closer to usageSergey Sharybin
There is a special defines block needed for ARM on Linux. Move it from public header to an implementation file. No functional changes. This is a non-functional part of original fix done by Brecht in D9577.
2020-11-25Nodes: deduplicate ping pong math operationJacques Lucke
The formula did not change. The only side effect of this change should be that the compositor node now does not divide by zero in some cases.
2020-11-25Cleanup: remove useless cast.Bastien Montagne
2020-11-25Tracking: Cleanup, de-duplicate implementation of marker lookupSergey Sharybin
The logic was duplicated. Should be no functional changes. The modified function is expected to give same exact results for all inputs. On the "caching last-used track" topic. The code was using last_marker to allow faster lookup of marker closest to the frame. With this change it is still the case since the BKE_tracking_marker_get() does cache last used marker.
2020-11-24Viewport: cannot select object by clicking on its instancesJacques Lucke
Selecting an object by clicking on its instances only worked, when the object itself is visible. However, it is possible to hide the object and still keep the instances visible. The solution is to give every object the correct `select_id` in the depsgraph object iterator right before rendering. Reviewers: fclem, brecht Differential Revision: https://developer.blender.org/D9640
2020-11-24Merge remote-tracking branch 'origin/blender-v2.91-release'Sybren A. Stüvel
2020-11-24Fix T80748: Render Emissive Colors in Compositor BackdropJeroen Bakker
This change will use the image engine to draw the backdrop of the compositor. With this patch the alpha blending will be done in Linear Scene Reference space and shows pure emissive colors. See differential for an example image. **Technical changes** As only the backdrop drawing is done using the draw manager there are some technical changes. 1. The overlay buffer is partly drawn outside the draw manager. When drawing the backdrop image the overlay buffer needs to be masked to simulate premultiplied alpha under. 2. The backdrop of the node editor is done in region pixel space. A `DRWView` is constructed with this space. 3. UDIM textures uses world position to generate the UV coordinates. This has been implemented more strict by the `IMAGE_DRAW_FLAG_USE_WORLD_POS`. When the flag isn't used the local coordinates are used to generate the UV coordinates what is image space. 4. The draw manager now checks the actual `eSpaceType` of the space data to use different code paths. In the future the movie clip editor will be added. NOTE: The preview images in nodes are drawn in display space and cannot show pure emissive colors. As preview images are used on more locations it is best to fix this in a separate patch. Reviewed By: Clément Foucault Differential Revision: https://developer.blender.org/D9451
2020-11-24Fix T77261: Multires creates spikes when subdividing ngonsSergey Sharybin
The spikes were caused by non-initialized tangent matrix used during smoothing process. The reason tangent matrix was not initialized was because wrong usage of API: n-gons should pass corner of 0 to the matrix construction function. Corrected usage of the API and added assert() to help catching such kind of non-initialized issues easier.