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
2020-12-09Cleanup: use common 'MOD_WELD_MODE_' prefixCampbell Barton
2020-12-09Modifier: Add "Connected" mode to the weld modifierHenrik Dick
Implement improvement from T73139 for merging along edges. It is now called "Connected" mode, while the default is called "All". With the recent performance improvement, the Connected Mode is in some cases only double the speed than the usual merge all strategy but in other cases it may be even faster. The bottleneck is somewhere further down the line of merging geometry. The motivation for this patch came from T80897, because the merging in complex solidify is making it very slow. Now merging can be removed from solidify without greater consequences, as this is just a quicker and more advanced algorithm to do the same thing that solidify currently does slowly. Reviewed by: mano-wii, campbellbarton Ref D8966
2020-12-08Fix T83559: File Browser uses wrong operationJulian Eisel
When opening a temporary File Browser, we have to make sure the file selection parameters are refreshed. When opening it in a new Window that would always be the case, if the File Browser uses a maximized window (as set in the Preferences), it might reuse space-data from a previous use. So we have to force the refresh. Also renamed the relevant function to be more clear about what it's doing. Mistake in 95b3c4c966f9.
2020-12-08Fix T83114: incorrect normals after joining subdivided meshesJacques Lucke
This just makes sure that the mesh coming out of the subdivision surface node has correct normals. Ideally, we would lazily compute derived data like normals in more cases, but that can be solved later. Correctness is more important right now. In order to solve this better, it would be nice if functions like `BKE_mesh_ensure_normals` would take a `const Mesh *`. The mesh could be considered to be logically const, because normals are derived data that is only cached for the current state of the mesh.
2020-12-08Fix T83337: boundary smooth input in subdivision surface node is invertedLéo Depoix
Differential Revision: https://developer.blender.org/D9753
2020-12-08Fix T81950: GPencil - Draw - Stoke Placement Stroke Feature BrokenJamell Moore
Buffer strokes weren't being the excluded from depth only draw calls so were being included in depth tests. They are now excluded by bypassing the creation of the buffer strokes. Reviewed By: fclem Differential Revision: https://developer.blender.org/D9742
2020-12-08Cleanup: Use enum for file selection type definitionsJulian Eisel
Makes it more clear that these belong together and allows using the enum type rather than just `int`.
2020-12-08Cleanup: Correct an own earlier commit to use an existing utility functionJulian Eisel
Didn't know this function existed, better to use it then to avoid verbosity.
2020-12-08File Browser: Refactor access to the selection parameters structJulian Eisel
* Avoid direct access to `SpaceFile.params`, use a getter instead. This matters because once the asset-browser changes are in, there will be an alternative selection parameter object. The getter can return the correct one. * Rename the function to ensure the parameters. The old name `ED_fileselect_get_params()` wasn't a mere getter, it would create the parameters if necessary. Now we have an actual getter, so better be clear. * In some instances, I replaced the old "get" function with the new mere getter. So the ensure logic is called less often. However, in these cases we should be able to assume the selection parameters were created already as part of the editor creation routine. The term "active" in the new function names may seem a bit odd in the current context, but that is a preparation for the Asset Browser merge as well. Like said, there will be two file selection parameter objects in the space.
2020-12-08Cleanup: Use guarded allocator for data-block names returned from file readingJulian Eisel
Direcly using the C library allocator functions is usually avoided in favor of our guarded allocator. It's more useful when debugging.
2020-12-08Fix unexpected "/" path after normalizing empty directory pathJulian Eisel
Caused problems in the Asset Browser branch when passing an empty path. The function shouldn't blindly add a slash but sanity-check the input parameters first.
2020-12-08LibOverride: Add initial support for adding new NLA tracks.Bastien Montagne
Also makes NLA tracks and strips overridable. User can either edit existing strips in existing NLA tracks (but not add or remove them), and/or add new NLA tracks after those comming from the linked data. Most of the work was as usual checking operators and adding protections against illegal operations in override context. Note that since we can only rely on indices to deal with local added tracks, we forbid any local track being before any linked/original track. Maniphest Tasks: T72629 Differential Revision: https://developer.blender.org/D9611
2020-12-08CMake: fix linking with WITH_SDL_DYNLOADCampbell Barton
While this was only needed in 'source/blender/python', add to ghost to avoid problems in the future.
2020-12-08Cleanup: use static declarationsCampbell Barton
2020-12-08shaders_test: correct arguments to EEVEE_shaders_cryptomatte_sh_getCampbell Barton
2020-12-08Cleanup: LibOverride: Forgot to update comments in previous commit.Bastien Montagne
2020-12-08LibOverride: Refactor collection items 'local' helper functions.Bastien Montagne
It's easier to read and less 'weird' to check that an item is non-local in a liboverride data-block, than the other way around. Thanks to @sybren for noticing it.
2020-12-08Fix T83117: Curve bevel not handle aligned at end-pointsCampbell Barton
Caused by fix for T80742, 4987b7d347a885916916a888c18401ea2fe552f4. Keep the fix that calculates the start/end direction from adjacent points but only use it as a fallback.
2020-12-08Spelling: Bit Depth Compound ModifiersYevgeny Makarov
Correct usage of compound modifiers like '32-bit'. Differential Revision: https://developer.blender.org/D9769 Reviewed by Julian Eisel
2020-12-08UI: Correct Usage of 'Eevee' NameYevgeny Makarov
Use accepted capitalization of Eevee, not 'EEVEE'. Differential Revision: https://developer.blender.org/D9770 Reviewed by Julian Eisel
2020-12-07Fix T83307: Some modal keys of transform operators don't correspond to the ↵Germano Cavalcante
expected effect The transform modes `shrinkfatten` and `seq_slide` have a special way of handling events. They use modal events in a different way than expected. Therefore, this commit adds special event handles for these modes and removes the keymodal tips from the status bar. These effects are already described in the header anyway.
2020-12-07Fix T83510: Convert Gpencil to curve crash when stroke has zero pointsAntonio Vazquez
If the stroke had zero points the pointer returned NULL. Also replaced for loop by FOREACH macro. This is a corner case of "empty" strokes without points.
2020-12-07Cleanup: Use LISTBASE_FOREACH in node transform codeHans Goudey
Also decrease variable scope.
2020-12-07Add comment to clarify the use of mesh::symmetryPablo Dobarro
Reviewed By: sybren Differential Revision: https://developer.blender.org/D9776
2020-12-07Fix DPX image output having invalid float metadataBrecht Van Lommel
Casting 0xFFFFFFFF to float does not give NaN as is needed here. Found through compiler warning which is now fixed.
2020-12-07Animation: Show Channel Group Colors is now off by defaultSybren A. Stüvel
Change the default for the Show Channel Group Colors preference to OFF. This option in the user preferences was introduced in rBad85256e7108. It moved a per-file-per-editor option to the user preferences. As this option would be frequently turned off by animators, this would now have to happen only once. This commit takes this one step further, and turns it off by default, as it can cause major readability issues of the animation channel list.
2020-12-07LibOverride: Abstract a bit handling of local items of RNA collections.Bastien Montagne
RNA collections that support insertion of new items in liboverride data-block need a special way to distiguish between locale and orig-from-linked items (since some operations are allowed on the forer, but no the latter). In future we want a proper solution to abstract that at the `BKE_lib_override` level, but for now we need to add some code for each case. Note that this commit also fixes a few potential issues with GPencil modifiers, and constraints, regarding their handling of local overrides.
2020-12-07Fix (unreported) LibOverride: GPencil local Modifiers not fully editable.Bastien Montagne
Missing case in `RNA_property_overridable_get`
2020-12-07Fix T81745: Auto Weights fails with Mirror mod + Vertex Groups XSybren A. Stüvel
Fix the Assign Automatic Weights operator in weight paint mode when the Vertex Groups X option is enabled. This issue was probably introduced in rB5502517c3c12 where `me->editflag & ME_EDIT_MIRROR_X` was replaced by either `me->editflag & ME_EDIT_VERTEX_GROUPS_X_SYMMETRY` or `me->symmetry & ME_SYMMETRY_X`. In this case, the former wasn't working, so I replaced it with the latter.
2020-12-07UI Code Quality: Start refactoring Outliner tree-element building (using C++)Julian Eisel
Continuation of the work started with 249e4df110e0. After all display modes were ported to this new design, this commit starts the (more complex) work on the individual tree-element types. More concretely it ports animation tree-elements (action data-blocks, drivers and NLA data). The commit above explains motivations. In short, we need a better design that's easier to reason about and better testable. Changes done here are pretty straight forward and introduce similar class hierarchy and building patterns as introduced for the display modes already. I.e. an abstract base class, `AbstractTreeElement` with derived classes for the concrete types, and a C-API with a switch to create the needed objects from a type enum. The latter should be replacable with something nicer later on (RAII based, and type-safer through meta-programming). Each tree-element type has its own class, with an own header and source file (okay some closely related types can share a header and source file, like the NLA ones). I added some further temporary bits for the transition to the new design, such as the `TreeElement.type`. It should entirely replace `TreeElement` eventually, just as `outliner_add_element()` should be quite small by then and easily replacable by a `TreeBuilder` helper.
2020-12-07Fix missing type check for Outliner eyedropper queryJulian Eisel
Mistake in 35a5dee2ef73. Code would simply assume that the element under the cursor is an Object if it was an ID (but not a collection). This wouldn't cause any issues in current code, since the only other ID that set the direct-data were collections, which are special in that they don't have a `TreeStoreElem.type` of 0, which is already being checked for here. And if there was no direct-data set, the object lookup in the View-Layer would correctly fail too.
2020-12-07Cleanup: Avoid setting (unsafe) Outliner tree element data that won't be usedJulian Eisel
I carefully checked and am quite sure for `TSE_ANIMATION_DATA` and `TSE_NLA_ACTION` the direct-data isn't used at all. This data is stored and accessed in unsafe ways based on conventions anyway (`void *`). We should aim for a safer design but it will be difficult to get there. Any removed complexity will help.
2020-12-07Fix access to invalid data in Outliner tree buildingJulian Eisel
Non-ID tree-elements would cast their data pointer to `ID *` and take the name and ID-Code from there. The name would actually be overridden a few lines later, so that didn't cause issues. But the ID-Code stored inside the tree element kept an undefined value. In practice that probably didn't cause many issues either, since it's just an undefined value that was very unlikely to take a valid 16-bit ID-code value, meaning ID-Code checks would simply fail as they should. Further there typically are other checks to see if the element actually represents an ID. However, in theory this may have caused a few random crashes or data-corruptions.
2020-12-07Fix bug in cleanup commitSybren A. Stüvel
Fix a copy-paste error in rB11c4066159e
2020-12-07Cleanup: partial Clang-Tidy modernize-loop-convertSybren A. Stüvel
Modernize loops by using the `for(type variable : container)` syntax. Some loops were trivial to fix, whereas others required more attention to avoid semantic changes. I couldn't address all old-style loops, so this commit doesn't enable the `modernize-loop-convert` rule. Although Clang-Tidy's auto-fixer prefers to use `auto` for the loop variable declaration, I made as many declarations as possible explicit. To me this increases local readability, as you don't need to fully understand the container in order to understand the loop variable type. No functional changes.
2020-12-07UI: Fix mistakes in UI messages.Bastien Montagne
2020-12-07File Subversion Bump: 2.92.5Jeroen Bakker
2020-12-07Fix T83296: Unknown actions no longer perform an undo pushGreg Neumiller
str_len_clip is initialized to 0, so when "Unknown Action" occurs, set str_len_clip appropriately. Regression in 0688309988e546382748b9e755d84ae8a5059192 Ref D9759
2020-12-07Fix T83347: Smart UV project crashes with wire edgesGreg Neumiller
Missing NULL check. Regression in 9296ba867462f7ff3c55bc0c9129af4121243bed Ref D9757
2020-12-07Cleanup: spellingCampbell Barton
2020-12-07Cleanup: correct enum typeCampbell Barton
2020-12-07GPencil: Enable Layer Onion Skin by defaultAntonio Vazquez
2020-12-06UI: Alert Dialog Helper FunctionYevgeny Makarov
Shared helper function to create a split layout with an alert icon for popup dialogs. Differential Revision: https://developer.blender.org/D9486 Reviewed by Julian Eisel
2020-12-06UI: 'About Blender' with Full LogoYevgeny Makarov
New layout for the 'About' dialog featuring the full version of the Blender logo. Differential Revision: https://developer.blender.org/D9507 Reviewed by Hans Goudey
2020-12-06Reorder fields in boolean's ITT_value to save memory.Howard Trickey
2020-12-05Fix crashes with invisible Outliners on fullscreen or window closingJulian Eisel
I didn't actually confirm this is caused by invisible Outliners. But I'm pretty sure the error happens with Outliners that aren't initialized (so were open in an area before, but another editor is active there currently). In that case, the runtime data may not be set yet and that is fine. Fixes T83420.
2020-12-05Fix T83400: GPencil onion skin not visible when Edit Lines is enabledAntonio Vazquez
The Edit Lines flag was not checking if Onion was enabled. In 2D template this is disabled by default, but default template has enabled it.
2020-12-05Add more timing hooks for boolean.Howard Trickey
2020-12-05Cleanup: Finish porting outliner tree building to C++Nathan Craddock
No functional changes. This is a few minor cleanups to the remaining C code for building the outliner tree after parts have been moved to C++. Differential Revision: https://developer.blender.org/D9741
2020-12-05Cleanup: Outliner Data API display modeNathan Craddock
No functional changes. Moves the data API display building code to C++. Differential Revision: https://developer.blender.org/D9741