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
path: root/source
AgeCommit message (Collapse)Author
2022-08-27Fix assertion when notifiers weren't removed from the notifier queue setCampbell Barton
Since [0] notifiers were cleared and left in the queue, while harmless it meant the call to remove the notifier from the set was redundant. Now set aside a category to tag notifiers as having been cleared and skip them entirely. [0]: 0aaff9a07d3bdf8588cef15d502aeb4fdab22e5e
2022-08-26Cleanup: use 'len_v2'Germano Cavalcante
Simplifies readability and avoids repeat casts.
2022-08-26Cleanup: Move bmesh_query_uv.c to C++Hans Goudey
Helpful for D14365.
2022-08-26Merge branch 'blender-v3.3-release'Germano Cavalcante
2022-08-26Transform: Use more general approach to node view updateGermano Cavalcante
With rBe6a557952ead, concerns were reported about missing updates when the view is moved other than through the Edge Pan system. Although the transform operator blocks navigation in general, it is good to avoid these cases.
2022-08-26Merge branch 'blender-v3.3-release'Germano Cavalcante
2022-08-26Fix T100632: Regression: Node border snap guide line not drawing properlyGermano Cavalcante
Caused by {rBd2271cf93926}. Color values were being used without being initialized.
2022-08-26Fix T100633: Node Editor: Edge scrolling breaks node snappingGermano Cavalcante
The view offset, calculated by the Edge Pan system, only affects the position of the nodes, but forget to update: - snapping data - final value of transform - values used for custom drawing Therefore, to avoid having to update a lot of scattered data, the `transformViewUpdate` utility has been implemented to recalculate input values when the view changes. This utility does more than is necessary to fix the bug, but with that, it can work in any situation.
2022-08-26Fix T100633: Node Editor: Edge scrolling breaks node snappingGermano Cavalcante
The view offset, calculated by the Edge Pan system, only affects the position of the nodes, but forget to update: - snapping data - final value of transform - values used for custom drawing Therefore, to avoid having to update a lot of scattered data, the `transformViewUpdate` utility has been implemented to recalculate input values when the view changes. This utility does more than is necessary to fix the bug, but with that, it can work in any situation.
2022-08-26CustomData: Add function to get name of default layerHans Goudey
Used by D14365
2022-08-26Merge branch 'blender-v3.3-release'Bastien Montagne
2022-08-26Fix assert in id remapper tests.Bastien Montagne
Was using uninitialized ID name, leading to unknown ID type. Thanks at Ray molenkamp (@LazyDodo) for noting the issue.
2022-08-26Cleanup: Fix const correctness in CustomData set name functionHans Goudey
The function does modify the object since it changes the name of a layer it owns. Ideally this wouldn't be possible, but raw pointers don't have ownership semantics so this is a common problem with CustomData.
2022-08-26Fix T55284: error in Hybrid MultiFractal Musgrave textureLuis Pereira
The calculation was revised to address two issues: * Discontinuities occurring when detail was a non-integer greater than 2. * Levels of detail in the interval [0,1) repeating the levels of detail in the interval [1,2). This fixes Cycles, Eevee and geometry nodes. Differential Revision: https://developer.blender.org/D15785
2022-08-26IDManagement: fix missing WM name validation when using "keep current WM ↵Aras Pranckevicius
list" code path The blendfile_liblink and blendfile_io python tests in debug fired an assert that WMWinMan object was in Main database, but not in the ID name map. This was caused by wm_window_match_do going into case 3 there: the new WM list is completely empty, the old list is not empty, and it was directly using the old/current list (via wm_window_match_keep_current_wm function), without actually registering/validating the objects in it through the name map. Reviewed By: Bastien Montagne Differential Revision: https://developer.blender.org/D15787
2022-08-26IDManagement: fix missing WM name validation when using "keep current WM ↵Aras Pranckevicius
list" code path The blendfile_liblink and blendfile_io python tests in debug fired an assert that WMWinMan object was in Main database, but not in the ID name map. This was caused by wm_window_match_do going into case 3 there: the new WM list is completely empty, the old list is not empty, and it was directly using the old/current list (via wm_window_match_keep_current_wm function), without actually registering/validating the objects in it through the name map. Reviewed By: Bastien Montagne Differential Revision: https://developer.blender.org/D15787
2022-08-26Merge branch 'blender-v3.3-release'Philipp Oeser
2022-08-26Fix T100602: Incoming Vector in world shader for Eevee is invertedPhilipp Oeser
Regression from {rBf4d7ea2cf61} where the direction was flipped. Maniphest Tasks: T100602 Differential Revision: https://developer.blender.org/D15779
2022-08-26Cleanup: use booleansCampbell Barton
2022-08-26Cleanup: quiet GCC array bounds warningCampbell Barton
2022-08-26makesrna: type check bool/int/float/enum get/set callbacksCampbell Barton
While converting types from callbacks isn't a bug, it's unlikely we ever want to do this on purpose and can hide mistakes such as silently converting floating point values to ints as happened with Sequencer.frame_start.
2022-08-26Cleanup: use matching function signatures for RNA callbacksCampbell Barton
Use matching int/float/boo types for RNA callbacks.
2022-08-26Merge branch 'blender-v3.3-release'Campbell Barton
2022-08-26Fix Sequence.frame_start being rounded to int when assignedCampbell Barton
2022-08-26Cleanup: reduce variable scopeCampbell Barton
2022-08-26Cleanup: spelling in comments, formatCampbell Barton
2022-08-25Merge branch 'blender-v3.3-release'Bastien Montagne
2022-08-25Fix T100255: Make RigidBodyWorld (and effector_weights) collections refcounted.Bastien Montagne
Those collections were so far mainly just tagged as fake user (even though a few places in code already incremented usercount on them). Since we now clear the fakeuser flag when linking/appending data, ensure that these collections are preserved by making these usages regular ID refcounting ones. Reviewed By: brecht Differential Revision: https://developer.blender.org/D15783
2022-08-25Revert "LibOverride: Preserve viewlayers when creating overrides of ↵Bastien Montagne
collecitons." Commit is not working as expected in some cases, as revealed by liboverride testcase entering infinite loop. Code needs some more thinking. This reverts commit ee7bd79b54a32d64fe0337695d438ad34990d121.
2022-08-25LibOverride: Preserve viewlayers when creating overrides of collecitons.Bastien Montagne
Usually, when overriding collections, the linked reference ones are removed from the ViewLayer, and the overrides replace them. This change to `layer_collection_sync` code makes it so that in case there is a free viewlayer hierarchy matching the linked collection, it gets re-used for the override one, instead of re-creating everything from scratch. To achieve this, resync process is split into two steps, first regular collections are processed, then the override ones. This should ensure an override does not steal the layers of its reference if the later is still instantiated in the view layer.
2022-08-25Merge branch 'blender-v3.3-release'Philipp Oeser
2022-08-25Fix T100599: dont reset parent inverse setting parent type the samePhilipp Oeser
Since rBb100bdca25b1 the parent inverse was always reset in ED_object_parent (also for just changing the parent type). This does make sense (since there is no point keeping it when e.g changing from "Bone" to "Object" or "Vertex" to "Object", for this to really make sense it would have to be properly recalculated anyways which does not happen afaict). The reported issue was that setting the prop to the same value as it was before (e.g. from "Object" to "Object") would still reset the parent inverse which was really unexpected since from a user standpoint, nothing has changed here. So in case the value does not really change, we now just early out and skip `ED_object_parent`. Maniphest Tasks: T100599 Differential Revision: https://developer.blender.org/D15771
2022-08-25Cleanup: remove redundant calculation in bmo_poke_execCampbell Barton
Mistake in [0] calculated the mean-face-center which wasn't used. 0: 23344bca6c5d1de330169a04ed8d21145fc60053
2022-08-25Cleanup: rename mat3_to_quat_is_ok to mat3_to_quat_legacyCampbell Barton
Update comment, noting why this is kept.
2022-08-25Keyframing: replace mat3_to_quat_is_ok with mat4_to_quatCampbell Barton
Added [0] which notes in most cases results are the same but in some cases the result seems better. While true at the time of writing since then mat3_to_quat has been improved and used for nearly all matrix to quaternion conversion. 0: 876cfc837e2f065fa370940ca578983d84c48a11
2022-08-25BLI_math: ensure non-negative matrices for mat3_to_quat calculationsCampbell Barton
Making the callers responsible for this isn't practical as matrices are often passed indirectly to a functions such as mat3_to_axis_angle, BKE_object_mat3_to_rot & BKE_pchan_mat3_to_rot. Or the matrix is combined from other matrices which could be negative. Given quaternions calculated from negative matrices are completely invalid and checking only needs to negate matrices with a negative determinant, move the check into mat3_to_quat and related functions. Add mat3_normalized_to_quat_fast for cases no error checking on the input matrix is needed such as blending rotations.
2022-08-25Cleanup: remove outdated, unhelpful commentsCampbell Barton
2022-08-25Fix matrix/quaternion conversion with negative scaled camerasCampbell Barton
2022-08-25Cleanup: Add asserts to curves data-block creationMattias Fredriksson
Ref D14481
2022-08-25Cleanup: Improve commentsMattias Fredriksson
Add to comments in curves header, fix typo in attribute header. Ref D14481
2022-08-24Cleanup: Deduplicate RNA mesh element index retrievalHans Goudey
Reuse the subtraction, which simplifies adding assertions and refactoring to remove the custom data pointers.
2022-08-24Cleanup: Move outliner types to namespace, avoid C-style type definitionJulian Eisel
With C++ we should transition towards namespaces to avoid naming collisions. Having the namespace in place is the first step for that transition. Plus, the `typedef` isn't necessary for struct/class/enum definitions in C++, so avoid the verbosity it adds.
2022-08-24Merge branch 'blender-v3.3-release'Bastien Montagne
2022-08-24Cleanup warning about missing pointer casting.Bastien Montagne
2022-08-24Cleanup: Fix typo in commentHans Goudey
Added by mistake in 6718afdc8a32.
2022-08-24Merge branch 'blender-v3.3-release'Bastien Montagne
2022-08-24LibOverride: Fix (unreported) crashes in some cases, preserve active object ↵Bastien Montagne
on Clear, general cleanup. Inconsistencies in update/tagging code between different code doing the same 'Clear. liboverride operation lead to crashes in some cases. Unify deg tagging and WM notifiers accross the three editor-level codepaths performing the common Make/Reset/Clear operations. Preserve if possible the active object accross Clear operation. Several cleanup/rename/re-arangement of code to make it more consistent.
2022-08-24Cleanup: rename new IDTemplate operator to create overrides to `make`.Bastien Montagne
Matches other operators' names and UI labels better.
2022-08-24BLI_math: assert mat3_normalized_to_quat doesn't use a negative matrixCampbell Barton
Add an assert to ensure callers don't pass in negative matrices as the resulting quaternion is invalid.
2022-08-24Merge branch 'blender-v3.3-release'Campbell Barton