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
2022-06-20Mask Editor: Add mask blending factor for combined overlaySimon Lenz
This adds a new parameter to the "Combined" overlay mode of the mask editor. The "blending factor" allows users to blend the mask exterior with the original footage to visualise the content of the mask in a more intuitive way. The "Alpha" overlay is unaffected by this change. The existing "Combined" overlay is used like before (covering everything outside the mask in black), but can be blended with the slider in the mask overlay to look at the exterior. This is part of an effort to make mask editing more intuitive & easy to use: https://developer.blender.org/T93097 Differential Revision: https://developer.blender.org/D13284
2022-06-15Fix T98765: Regression: Unable to select mask points in clip editorSergey Sharybin
Re-organize de-selection so that there is less conflict between tracking and masking operators. Still not fully ideal: the LMB selection does not de-select everything now since the `mask.select` with `deselect_all` is only added to the keymap when the RMB is the select mouse. While this is sub-optimal, this seems to be how mask selection behaved in the Image Editor in 3.1. Not sure it worth looking into a more complete fix, as it will likely be too big to be safe for a corrective release. Differential Revision: https://developer.blender.org/D15183
2022-06-09Cleanup: use const variables & argumentsCampbell Barton
2022-06-05Cleanup: assign operator type flags in their initializationCampbell Barton
Some operators OR'ed the existing flags in a way that made it seem the value might already have some values set. Replace this with assignment as no flags are set and the convention with almost all operators is to write the value directly.
2022-05-18Merge branch 'blender-v3.2-release'Sergey Sharybin
2022-05-18Fix incorrect track search area election colorSergey Sharybin
It was following the pattern area selection color instead of its own.
2022-05-17Merge branch 'blender-v3.2-release'Sergey Sharybin
2022-05-17Fix console errors about missing properties in circle selectSergey Sharybin
A regression since 113b8030ced9: circle selection operators does not define properties like deselect_all and a special name callback is to be used for those. This is what was already done for circle select in the 3D viewport. Some other spaces were using the generic pick operator for the circle selection which causes error prints in the console.
2022-05-16Cleanup: Tracking, clarify commentSergey Sharybin
2022-05-16Cleanup: shadowing warningCampbell Barton
2022-05-13Tracking: Move all selection logic to operator exec()Sergey Sharybin
Unlikely that users will notice this, but this makes it so that the operator behaves consistently across its exec() and invoke() code paths.
2022-05-13Refactor: Use coordinate in API for track selectionSergey Sharybin
Currently no functional changes. Prepares for a change which will allow to more consistently redo the track selection operator.
2022-05-13Fix jump when switching accurate marker slidingSergey Sharybin
As a side effect the "sticky" search area on resize/move is also resolved now: previously attempt to move search area past to where it could be would make it hard to move it back. Now the search area will always respond immediately to mouse motion, even after it got clamped.
2022-05-13Cleanup: Remove dead code in tracking slide operatorSergey Sharybin
The code was there prior pattern area affine transform and was never used afterwards. After so long time it should be safe to remove the unused code.
2022-05-13Cleanup: Proper state check in marker slide operatorSergey Sharybin
The previous code was had confusing logic, but since it was acting more as a fall-back it did not cause bugs for users.
2022-05-13Merge branch 'blender-v3.2-release'Campbell Barton
2022-05-13Fix T89909: Circle Select tool status bar doesn't match the operationsCampbell Barton
Assign get_name functions for select picking and circle select so modifier keys show the result of holding the modifiers.
2022-05-12Cleanup: Clarify function name and comment logicSergey Sharybin
This is a bit tricky exceptional case, which originates to an original motion tracking commit. Took a while to remember what it is ab out so here is a comment for the future developers.
2022-05-12Cleanup: De-duplicate region visibility logic in clip editorSergey Sharybin
2022-05-12Cleanup: Use stronger typing in marker slide operatorSergey Sharybin
2022-05-12Cleanup: Hide slide operator specific logicSergey Sharybin
Use a more semantically clear function in the tracking API.
2022-05-12Cleanup: Reduce indentation level in track slide operatorSergey Sharybin
2022-05-12Cleanup: Refactor marker area clampingSergey Sharybin
Switch from a single function with a lot of branching at its top level to dedicated function calls with own documentation.
2022-05-12Cleanup: Remove redundant marker clamping code pathSergey Sharybin
Pattern is expected to be freely resized to any size, and the search area s to become bigger when needed. Remove confusing pattern size clamping which was actually clamping search area. There should be no functional changes.
2022-05-12Cleanup: Strong type for track path clear APISergey Sharybin
Replace a generic int value with an enum. Should be no functional changes.
2022-04-28VSE: Add precise drag and drop and strip previewsSebastian Parborg
This patch adds the drag and drop strip previews in the VSE. It also adds two new functions to the drag and drop API. 1. "draw_in_view" for callbacks that wants to draw elements in local viewport coordinates 2. "on_drag_start" that can be used for prefetching data only once at the start of the drag. Reviewed By: Julian, Campbell Differential Revision: http://developer.blender.org/D14560
2022-04-04Cleanup: ensure space after file named in headersCampbell Barton
Add blank lines after file references to avoid them being interpreted as doc-strings the following declarations.
2022-03-24Tracking: Fix incorrect angle calculation on marker slideSergey Sharybin
Now the mouse cursor will exactly follow the tilt/scale sliding area.
2022-03-24Tracking: Fix jump when sliding tild/scale of markerSergey Sharybin
Was a mistake in coordinate handling: need to take possible offset from the sliding area. Mouse us still not fully perfectly follows changes of the tilt slide area, but that is a separate issue.
2022-03-18Cleanup: Compilation warningsSergey Sharybin
Mainly -Wset-but-unused-variable. Makes default compilation on macOS way less noisy. Differential Revision: https://developer.blender.org/D14357
2022-03-15Fix slow tracking of long sequencesSergey Sharybin
The performance issue was noticeable when tracking a lot of tracks which are using keyframe pattern matching. What was happening is that at some cache gets filled in and the furthest away frame gets removed from the cache: the frame at marker's keyframe gets removed and needs to be re-read from disk on the next tracking step. This change makes it so frames at markers' keyframes are not removed from cache during tracking. Steps to easily reproduce: - Set cache size to 512 Mb. - Open image sequence in clip editor - Detect features - Track all markers Originally was reported by Rik, thanks!
2022-03-14Auto-generate RNA-structs declarations in `RNA_prototypes.h`Julian Eisel
So far it was needed to declare a new RNA struct to `RNA_access.h` manually. Since 9b298cf3dbec we generate a `RNA_prototypes.h` for RNA property declarations. Now this also includes the RNA struct declarations, so they don't have to be added manually anymore. Differential Revision: https://developer.blender.org/D13862 Reviewed by: brecht, campbellbarton
2022-03-03WM: use pass-through for cursor placement operatorCampbell Barton
This is needed since 4d0f846b936c9101ecb76a6db962aac2d74a460a however change in the operator instead of the event handler is correct, as accepting a press event should suppress drag events unless the pass-through flag is set. This is how select & tweak already works.
2022-02-15RNA: add RNA_collection_is_empty & RNA_property_collection_is_emptyCampbell Barton
Some collections needed to be iterated over to count their length. Provide a function to check if the collection is empty to avoid this.
2022-02-11File headers: SPDX License migrationCampbell Barton
Use a shorter/simpler license convention, stops the header taking so much space. Follow the SPDX license specification: https://spdx.org/licenses - C/C++/objc/objc++ - Python - Shell Scripts - CMake, GNUmakefile While most of the source tree has been included - `./extern/` was left out. - `./intern/cycles` & `./intern/atomic` are also excluded because they use different header conventions. doc/license/SPDX-license-identifiers.txt has been added to list SPDX all used identifiers. See P2788 for the script that automated these edits. Reviewed By: brecht, mont29, sergey Ref D14069
2022-02-03Merge branch 'blender-v3.1-release'Campbell Barton
2022-02-03Fix T66913: undo after frame-change doesn't refresh properlyCampbell Barton
Use the ID.recalc flag to detect when updates after frame-change is needed. Since comparing the last calculated frame doesn't take undo into account (see code-comment for details). `ID_RECALC_AUDIO_SEEK` has been renamed to `ID_RECALC_FRAME_CHANGE` since this is not only related to audio however internally this flag is still categorized in `NodeType::AUDIO`. Reviewed By: sergey Ref D13942
2022-01-30Cleanup: Cmake: remove unnecessary definitions for internationalizationAaron Carlisle
Previously, macros were ifdefed using the cmake option `WITH_INTERNATIONAL` However, the is unnecessary as withen the functions themselves have checks for building without internationalization. This also means that many `add_definitions(-DWITH_INTERNATIONAL)` are also unnecessary. Reviewed By: mont29, LazyDodo Differential Revision: https://developer.blender.org/D13929
2022-01-26Performance: Remap multiple items in UIJeroen Bakker
During sprite fright loading of complex scenes would spend a long time in remapping ID's The remapping process is done on a per ID instance that resulted in a very time consuming process that goes over every possible ID reference to find out if it needs to be updated. If there are N of references to ID blocks and there are M ID blocks that needed to be remapped it would take N*M checks. These checks are scattered around the place and memory. Each reference would only be updated at most once, but most of the time no update is needed at all. Idea: By grouping the changes together will reduce the number of checks resulting in improved performance. This would only require N checks. Additional benefits is improved data locality as data is only loaded once in the L2 cache. It has be implemented for the resyncing process and UI editors. On an Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz 16Gig the resyncing process went from 170 seconds to 145 seconds (during hotspot recording). After this patch has been applied we could add similar approach to references (references between data blocks) and functionality (tagged deletion). In my understanding this could reduce the resyncing process to less than a second. Opening the village production file between 10 and 20 seconds. Flame graphs showing that UI remapping isn't visible anymore (`WM_main_remap_editor_id_reference`) * Master {F12769210 size=full} * This patch {F12769211 size=full} Reviewed By: mont29 Maniphest Tasks: T94185 Differential Revision: https://developer.blender.org/D13615
2022-01-26VSE: Build proxies only for slow moviesRichard Antalik
This change applies only for automatic proxy building, when strip is added to timeline. Manual building process is not affected. Don't build proxy file if movie is already fast enough to seek. To determine seek performance, check if whole GOP can be decoded in 100 milliseconds. To consider some variation in GOP size, large number of packets are read, assuming that each packet will produce 1 frame. While this is not technically correct, it does give quite accurate estimate of maximum GOP size. This test will ensure consistent performance on wide array of machines. Check should be done in order of few milliseconds. Reviewed By: sergey Differential Revision: https://developer.blender.org/D11671
2022-01-25Revert "Performance: Remap multiple items in UI"Jeroen Bakker
This reverts commit 948211679f2a0681421160be0d3b90f507bc0be7. This commit introduced some regressions in the test suite. As this change is a core part of blender Bastien and I decided to revert it as the solution isn't clear and needs more investigation. The following tests FAILED: 62 - blendfile_liblink (SEGFAULT) 63 - blendfile_library_overrides (SEGFAULT) It fails in (id_us_ensure_real)
2022-01-25Performance: Remap multiple items in UIJeroen Bakker
During sprite fright loading of complex scenes would spend a long time in remapping ID's The remapping process is done on a per ID instance that resulted in a very time consuming process that goes over every possible ID reference to find out if it needs to be updated. If there are N of references to ID blocks and there are M ID blocks that needed to be remapped it would take N*M checks. These checks are scattered around the place and memory. Each reference would only be updated at most once, but most of the time no update is needed at all. Idea: By grouping the changes together will reduce the number of checks resulting in improved performance. This would only require N checks. Additional benefits is improved data locality as data is only loaded once in the L2 cache. It has be implemented for the resyncing process and UI editors. On an Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz 16Gig the resyncing process went from 170 seconds to 145 seconds (during hotspot recording). After this patch has been applied we could add similar approach to references (references between data blocks) and functionality (tagged deletion). In my understanding this could reduce the resyncing process to less than a second. Opening the village production file between 10 and 20 seconds. Flame graphs showing that UI remapping isn't visible anymore (`WM_main_remap_editor_id_reference`) * Master {F12769210 size=full} * This patch {F12769211 size=full} Reviewed By: mont29 Maniphest Tasks: T94185 Differential Revision: https://developer.blender.org/D13615
2022-01-13Fix compilation error caused by missing target relationSergey Sharybin
Space clip depends on DNA now so that it can access offsets.
2022-01-12DNA: Add space clip editor defaultsSimon Lenz
This is my attempt of adding defaults for the space clip editor struct (in line with https://developer.blender.org/T80164). It adds the default allocation for `SpaceClip` and `node_composite_movieclip.cc`. This also solves the error below (for C++ files using the DNA_default_alloc), which was put forward by Sergey Sharybin. Differential Revision: https://developer.blender.org/D13367 Reviewed by: Julian Eisel
2022-01-07Cleanup: remove redundant const qualifiers for POD typesCampbell Barton
MSVC used to warn about const mismatch for arguments passed by value. Remove these as newer versions of MSVC no longer show this warning.
2022-01-06Cleanup: spelling in commentsCampbell Barton
2022-01-04Fix T91160 - Movie Clip Editor - frame indicator/controller is not displayedAidan Davey
The frame indicator/controller is not displayed when in the Graph or Dopesheet view of the Movie Clip Editor To solve this we could call the function ED_time_scrub_draw_current_frame in clip_draw_dopesheet_main and graph_region_draw in space_clip.c Reviewed By: jbakker Maniphest Tasks: T91160 Differential Revision: https://developer.blender.org/D12659
2021-12-14Cleanup: correct unbalanced doxygen groupsCampbell Barton
Also add groups in some files.
2021-12-13Cleanup: use "filepath" term for Main, BlendFileData & FileGlobalCampbell Barton
Use "filepath" which is the current convention for naming full paths. - Main use "name" which isn't obviously a file path. - BlendFileData & FileGlobal used "filename" which is often used for the name component of a path (without the directory).
2021-12-08Cleanup: move public doc-strings into headers for 'editors'Campbell Barton
Ref T92709