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
2021-09-04RNA: support extracting names from paths without allocating memoryCampbell Barton
Support extracting identifiers RNA paths into fixed size buffer since the maximum size of the identifier is known all cases. - Add BLI_str_unescape_ex to support limiting the destination buffer. - Add BLI_str_quoted_substr to copy values into a fixed size buffer.
2021-09-02Cleanup: remove redundant alloc argument to SEQ_editing_getCampbell Barton
Callers that require lazy initialization can use SEQ_editing_ensure.
2021-09-01Cleanup: remove redundant strstr callsCampbell Barton
Rely on BLI_str_quoted_substrN to detect if the prefix exists since this function exists early there is no need to check before calling.
2021-08-31Transform: avoid passing the context to extended orientation functionsCampbell Barton
This makes it possible to calculate orientation from functions that don't have the context.
2021-08-27VSE: Transform overwrite modeRichard Antalik
Add mode to overwrite strips on overlap instead of resolving overlap. When overlap is created, 3 things can happen: - On partial overlap, handles of overlapped strip are moved - On complete overlap with smaller strip, overlapped strip is split - On complete overlap with larger strip, overlapped strip is removed This mode can be enabled in header. Reviewed By: fsiddi, mano-wii Differential Revision: https://developer.blender.org/D11805
2021-08-26Cleanup: spelling in commentsCampbell Barton
2021-08-25BLF: Remove ASCII-only Code PathsHarley Acheson
Remove redundant code for drawing text strings that contain only ASCII. See D12293 for much more detail. Differential Revision: https://developer.blender.org/D12293 Reviewed by Campbell Barton
2021-08-25Fix wrong length value in the header of the Move operatorGermano Cavalcante
Missed in {rB0d36439f95c0}.
2021-08-25Fix T90911: Move along axis does not display real distance unitsGermano Cavalcante
Variable was wrongly set to 0. Caused by {rB7192e57d63a5}.
2021-08-24Nodes: Improvements to edge panning in the node editor.Lukas Tönne
- New operator property to toggle edge panning in the keymap: This is disabled by default to avoid edge-panning in cases where it gets distracting, such as adding a new node. Only the explicit translate operator(s) (GKEY or drag) have this enabled now. - Restore the initial view rect on edge pan cancel: The initial view rect is now stored in the edge pan operator data. When an operator with edge panning is cancelled it can now call the `UI_view2d_edge_pan_cancel` function to restore the original View2D rect. - Less delay in node editor scrolling: Delay is useful when scrolling through long lists, such as in the outliner, but makes node scrolling feel sluggish and unresponsive. The lower scroll speed here makes a faster response the better option. - Zoom influence feature: Somewhat slower scrolling in UI-space when zoomed out. With the 0.5 zoom influence factor nodes behave as if zoom factor is halved, otherwise it gets too fast when zoomed out. Previously scrolling would always be constant-speed in UI space, now it's half-way between UI space and node (view) space.
2021-08-24Fix T90646: VSE hangs when strips overlapRichard Antalik
When all strips are selected and overlap is caused, this causes VSE to hang in infinite loop, because such situation should never happen. To prevent infinite loop, ensure, that strip overlap is not tested against single overlapping strip itself. Prevent overlap that can not be handled because of issue described above by moving overlapping strip between channels. Reviewed By: campbellbarton Differential Revision: D12209
2021-08-23Cleanup: rename parameter in transform utilityGermano Cavalcante
`inv_unit_scale` is not descriptive.
2021-08-23Fix T90872: Dopesheet messes up keyframe handlesGermano Cavalcante
Y coordinate was not being constrained. Caused by {rBb0d9e6797fb866e7a58876c7977c98a190070310}
2021-08-21Cleanup: spelling in comments & minor cleanupCampbell Barton
Also hyphenate 'mouse-move' use doxy sections in render_update.c & move function comment from the header to the source.
2021-08-20Fix T90795: Moving keys in Grease Pencil Dopesheet crashes BlenderGermano Cavalcante
`td->loc` is referenced but not initialized.
2021-08-19Fix the value in the graphical editor header when transformingGermano Cavalcante
The header did not display the actual value when transforming with snapping
2021-08-19Fix T87173: wrong Auto-Snap in animation editorsGermano Cavalcante
This was partially broken with {rBde9ea94fc6f}. The `Frame Step` and `Second Step` snapping options were working as if they were `Nearest Frame` and `Nearest Second` respectively in the `Dope Sheet` and `NLA` editors. In the `Graph Editor` the problem was more serious: "Second Step: ... The keyframe itself moves along as though in snapping were active at all, while its handles 'stay behind' until it reaches the next second boundary, at which point the teleport handles to 'catch up'". The snapping code for these modes was spread across the transform mode code and `recalcData` of each data type. Therefore, create a unified snapping code for these options so that all issues are fixed in one place. Differetial Revision: https://developer.blender.org/D12241
2021-08-19Transform Convert Action: conventionalize TransData creationGermano Cavalcante
`td2d->loc`, `td2d->loc2d`, `td->loc` and `td->iloc` were not being initialized as is done with the other conversion types. This avoids problems with transform modes becoming incompatible. This avoids problems with incompatible transform modes that could result in a crash.
2021-08-19Fix incremental snap in animation editorsGermano Cavalcante
Animation editors have their own snap types and incremental is not supported.
2021-08-19Cleanup: move animation snap utilities to a separate compilation unitGermano Cavalcante
The snap functions of animation editors were scattered in `transform_mode` and `transform_snap`.
2021-08-17Cleanup: move 'recalcData' to 'transform_convert.h'Germano Cavalcante
The `recalcData` function is defined in `transform_convert.c`, so the header is most expected to be `transform_convert.h`.
2021-08-17Fix wrong Anim Auto-Snap Ctrl togglePhilipp Oeser
This was not working like elsewhere in both NLA and Graph Editor (meaning that when snapping was already enabled, {key Ctrl} during transform did not disable it). Now use getAnimEdit_SnapMode() for this in NLA and GE as well. Maniphest Tasks: T87173 Differential Revision: https://developer.blender.org/D12244
2021-08-12Cleanup: use C++ style comments for disabled codeCampbell Barton
2021-08-06Fix T90477: Cursor vertex snapping not working in UV editorGermano Cavalcante
`t->obedit_type` is read to indicate if we are in uv edit mode. Also fixes a crash introduced in {rBdd14ea18190ff27082009f73a556569a43377a71}.
2021-08-05Action Constraint: add Split Channels Mix choices from Copy TransformsAlexander Gavrilov
Practice shows that when combining actions and direct animation it is usually best to combine location, rotation and scale separately, which is implemented by the Split Channels modes recently introduced in D9469 for Copy Transforms. This completes the same set of 6 choices for the Action Constraint. The default for new constraints is changed to the newly added Before Original (Split Channels) mode. The original patch is motivated by Loic Pinsard, who created an addon that does the equivalent of this feature by splitting the action into two, separating location and rotation+scale. Differential Revision: https://developer.blender.org/D7547
2021-08-05Cleanup: remove redundant parenthesisCampbell Barton
2021-08-04Cleanup: rename restrict to hide/visibility in Object, Collection, MaskLayerBrecht Van Lommel
This makes the internal naming consistent with the public API. And also gives us a visibility_flag rather than restrictflag that can be extended with more flags.
2021-08-03Fix T90313: Align to Transform Orientation Axis Property Doesn't WorkGermano Cavalcante
`Orientation Axis` is a property incompatible with `Align` mode and should not be visible.
2021-07-30Cleanup: clang-format (re-run after v12 version bump)Campbell Barton
2021-07-26VSE: Fix snapping bugsRichard Antalik
Fix hold offset check causing missing snapping point when strip have only still frames. Fix effect strips of transformed strips causing snapping to prevoius strip positions. Reviewed By: mano-wii Differential Revision: https://developer.blender.org/D11948
2021-07-24UI: Do not abbreviate/shorten wordingAaron Carlisle
Abbreviations are harder to read and understand thus it is best to be direct. For example without understanding and context it is hard to know exactly what "Len" means.
2021-07-23Cleanup: code comments punctuation / spacingCampbell Barton
2021-07-20Cleanup: use single back-tick quoting in commentsCampbell Barton
While doxygen supports both, conform to our style guide. Note that single back-tick's are already used in a majority of comments.
2021-07-20Cleanup: quiet GCC maybe-uninitialized warningCampbell Barton
Function signatures for snap callbacks used `const` incorrectly which was hidden by casting function types. This made it seem as if the input arguments wouldn't be change and wouldn't be initialized. Name return arguments with an `r_` prefix, order them last, remove function casts and correct `const` usage.
2021-07-19Revert "Depsgraph: Implement 'ID_RECALC_GEOMETRY_DEFORM'"Germano Cavalcante
This reverts commits bfa3dc91b75407b063f2ac991b176d98c050f92d, 52b94049f2a71a74f52247f83657cf3a5c8712b4, ae379714e4f1eca74f5f77532a6e959f29445236, a770faa811ee62837eb540b0bd83ca0770f16663, 4ed029fc02b022cb5ff28ed3ce70992c450d2be5, 101a493ab556c6597ac91fba204059be67b35990 and 62a2faa7ef39130446716d7a06215cd1df1eb2ac. And fixes T89955. Changing the dependency graph is a can of worms and the result is a kind of unpredictable. A different solution will be planned.
2021-07-16Fix T89722: Duplicate macro can cause strips to overlapRichard Antalik
Bug caused by 78693d524c13 accidentally removing overlap handling when transform operator is canceled. Reviewed By: campbellbarton Differential Revision: https://developer.blender.org/D11899
2021-07-16Cleanup: remove redundant parenthesesCampbell Barton
2021-07-15Cleanup: replace BLI_assert(!"text") with BLI_assert_msg(0, "text")Campbell Barton
This shows the text as part of the assertion message.
2021-07-14Fix T89826: VSE snapping with constrained axisRichard Antalik
Constraining to X axis caused snapping to not work at all. Constraining to Y axis caused snapping indicator to be drawn, when snapping doesn't occur. Reviewed By: mano-wii Differential Revision: https://developer.blender.org/D11898
2021-07-14Transform: Identify more safely when the mesh is deform onlyGermano Cavalcante
Depending on the modifiers, geometry can be destructive which is not safe.
2021-07-13Fix 'Correct Face Attributes' optionGermano Cavalcante
With this option enabled, updating the geometry is no longer deform only.
2021-07-13Cleanup: replace BKE_customdata.h in BKE_editmesh.hCampbell Barton
Only DNA_customdata_types.h is needed for BMEditMesh.
2021-07-13Depsgraph: Implement 'ID_RECALC_GEOMETRY_DEFORM'Germano Cavalcante
During a mesh transformation in edit mode (Move, Rotate...), only part of the batch cache needs to be updated. This commit allows only update only the drawn batches seen in `BKE_object_data_eval_batch_cache_deform_tag` if the new `ID_RECALC_GEOMETRY_DEFORM` flag is used. This new flag is used in the transforms operation for edit-mesh and results in 1.6x overall speedup in heavy subdiv cube. Differential Revision: https://developer.blender.org/D11599
2021-07-12Cleanup: improve naming and comments of scene frame/ctime functionsBrecht Van Lommel
Confusingly, BKE_scene_frame_get did not match the frame number as expected by BKE_scene_frame_set. Instead it return the value after time remapping, which is commonly named "ctime". * Rename BKE_scene_frame_get to BKE_scene_ctime_get * Add a new BKE_scene_frame_get that matches BKE_scene_frame_set * Use int/float depending if fractional frame is expected
2021-07-07Cleanup: spelling in commentsCampbell Barton
2021-07-05Cleanup: spelling, punctuationCampbell Barton
2021-07-03Cleanup: consistent use of tags: NOTE/TODO/FIXME/XXXCampbell Barton
Also use doxy style function reference `#` prefix chars when referencing identifiers.
2021-07-02Cleanup: Further use of const when accessing evaluated meshHans Goudey
Also resolve a warning from the previous commit. The next blocker to using const is `BKE_mesh_wrapper_ensure_mdata`.
2021-07-02Copy Transforms: implement Remove Target Shear and more Mix options.Alexander Gavrilov
This constraint can be naturally viewed as a prototype for a future 4x4 matrix math node (or subset thereof), since its basic semantics already is matrix assignment. Thus it makes sense to add math options to this constraint to increase flexibility in the meantime. This patch adds support for several operations that would be useful: - An option to remove shear in the incoming target matrix. Shear is known to cause issues for various mathematical operations, so an option to remove it at key points is useful. Constraints based on Euler like Copy Rotation and Limit Rotation already have always enabled shear removal built in, because their math doesn't work correctly with shear. In the future node system shear removal would be a separate node (and currently Limit Rotation can be used as a Remove Shear constraint). However removing shear from the result of the target space conversion before mixing (similar to Copy Rotation) has to be built into Copy Transforms itself as an option. - More ways to combine the target and owner matrices. Similar to multiple Inherit Scale modes for parenting, there are multiple ways one may want to combine matrices based on context. This implements 3 variants for each of the Before/After modes (one of them already existing). - Full implements regular matrix multiplication as the most basic option. The downside is the risk of creating shear. - Aligned emulates the 'anti-shear' Aligned Inherit Scale mode, and basically uses Full for location, and Split for rotation/scale. (This choice already existed.) - Split Channels combines location, rotation and scale separately. Looking at D7547 there is demand for Split Channels in some cases, so I think it makes sense to include it in Copy Transforms too, so that the Mix menu items can be identical for it and the Action constraint. Differential Revision: https://developer.blender.org/D9469
2021-07-01Fix memory leak in VSE transform codeRichard Antalik
SeqCollection wasn't freed. It wasn't easy to find culprit so added argument to SEQ_collection_create() to pass function name. Reviewed By: sergey Differential Revision: https://developer.blender.org/D11746