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-12-14UI/Assets: Operator to load custom preview images for data-blocksJulian Eisel
No automatic preview generation will ever be good enough to cover all cases well. So custom preview images are a must for a preview driven data-block selection - like for asset browsing. The operator simply allows selecting an image file, which will then be read and copied into the data-blocks preview (resized if necessary). There's no UI for this currently and the operator won't be available in the search menu yet. It will later once the Asset Browser UI is merged. Reviewed as part of https://developer.blender.org/D9719. Reviewed by: Bastien Montagne, Brecht Van Lommel
2020-12-14Fix windows build.Alexander Gavrilov
2020-12-14LibOverride: Do not store some heavy data from override IDs.Bastien Montagne
This commit removes geometry from meshes and shapekeys, and embedded files, from liboverride IDs. This data is never overrideable, there is no reason to store extra useless copies of it in production files. See T78944. Note that we may add more data to be skipped on write for liboverrides in the future, but this commit should address all the most important cases already. Reviewed By: brecht Differential Revision: https://developer.blender.org/D9810
2020-12-14Cleanup: clang tidyJacques Lucke
2020-12-14Fix T83712: arctangent math node does not work in EeveeJacques Lucke
Caused by my refactoring of the math node. Somehow this operation slipped through my double checking procedure.
2020-12-14Cleanup: path_util.c commentsCampbell Barton
2020-12-14Fix missing string escape for RNA path creationCampbell Barton
2020-12-14Fix version patching sequence strip alpha from 2.4x filesCampbell Barton
Regression in 4f5f868a523430aa41de8bd63f888878aaf63002
2020-12-14Fix enum-conversion, old-style-declaration warningsCampbell Barton
Introduced in 8f3a401975987c9b70f3ea0ea21977c70371b466
2020-12-14Fix T83696: Add Additional menu to Effects panelAntonio Vazquez
This adds the missing options for the effects as it is done in modifiers. Reviewed By: HooglyBoogly Maniphest Tasks: T83696 Differential Revision: https://developer.blender.org/D9838
2020-12-14Eevee: Add Volume Transmittance to Color Render Passes.Jeroen Bakker
In Cycles the volume transmittance is already composited into the color passes. In Eevee the volume transmittance pass was separate and needed to be composited in the compositor. This patch adds the volume transmittance pass direct in the next render passes: * Diffuse Color * Specular Color * Emission * Environment This patch includes the removal of the volume transmittance render pass. It also renames the volume render passes to match Cycles. The setting themselves aren't unified. Maniphest Tasks: T81134
2020-12-14UI: Click modifier icon to set active modifierHans Goudey
This should be a final piece of the changes for the active modifier interface. Before, it was necessary to click on the blank space of a modifier panel to set it active (not the header), this commit allows clicking on the icon also. The spacing with the spacing with the expand button would ideally be a bit larger, but the layout system doesn't offer much flexibility here.
2020-12-14Fix T83673: Custom node trees selectable in nodes modifierHans Goudey
Node tree types from addons were selectable in the modifier's drop-down. Obviously they didn't do anything, but it shouldn't be possible anyway. This was just caused by an unimplemented poll function.
2020-12-14Cleanup: Fix capitalization in various placesYevgeny Makarov
Approximately 33 changes of capitalization to conform to MLA title style. Differential Revision: https://developer.blender.org/D9796 Reviewed by Julian Eisel
2020-12-14Fix T83725 Inconsistent vertex group between exact and fast boolean.Howard Trickey
This makes the exact boolean have zero weights for any vertex groups on any newly created vertices, which is what the fast solver does. The exact boolean solver was interpolating vertex data when interpolating loop data in newly created faces. Not sure why I chose that. The Fast boolean solver doesn't do that, so I stopped doing it too.
2020-12-13Cleanup: removing some uses of equal sign in descriptionsYevgeny Makarov
Using 'is/means/equal' words in place of equal sign in descriptions. Differential Revision: https://developer.blender.org/D9799 Reviewed by Hans Goudey
2020-12-13Fix cursor position on HighDPI in stereo side-by-side modeYevgeny Makarov
Could not select left quarter of the screen in stereo side-by-side mode on high dpi displays. Differential Revision: https://developer.blender.org/D9836 Reviewed by Julian Eisel
2020-12-13UI: Improved Script Execution WarningYevgeny Makarov
New dialog box layout with large alert icon for the Python script execution warning popup. Differential Revision: https://developer.blender.org/D9390 Reviewed by Hans Goudey
2020-12-13UI: Remove Unused 'U.wheellinescroll' PropertyYevgeny Makarov
Remove 'U.wheellinescroll' preference, currently hidden and unused. Differential Revision: https://developer.blender.org/D9616 Reviewed by Brecht Van Lommel
2020-12-13Fix weird Swing+Twist decomposition with noncanonical quaternions.Alexander Gavrilov
It turns out that after the fix to T83196 (rB814b2787cadd) the matrix to quaternion conversion can produce noncanonical results in large areas of the rotation space, when previously this was limited to way smaller areas. This in turn causes Swing+Twist math to produce angles beyond 180 degrees, e.g. outputting a -120..240 range. This fixes both issues, ensuring that conversion outputs a canonical result, and decomposition canonifies its input. This was reported in chat by @jpbouza.
2020-12-13Cleanup: Reduce variable scope in view_2d_ops.cHans Goudey
2020-12-12Fix T83705: GPencil - Duplicate strokes of destination layer when merge layerAntonio Vazquez
If the destination layer hadn't keyframe, a new keyframe was added and later the merge layer strokes were added, but this could change the animation because the new frame replaced the old drawings of the target layer. Now, before merge the layer, all keyframes are added in the target layer in order to keep the drawings.
2020-12-12GPencil: Add uniform subdivide BKE to improve interpolationFalk David
This patch introduces a new BKE function that performs a uniform subdivide. The goal of this function is to subdivide the stroke to reach a target number of points while maintaining its shape, color, and weights. This is done by repeatedly subdividing the longest edge in the stroke. Every subdivision adds a new point at the exact middle point of an edge. The function is intended to be used in the interpolation operators to give better results when interpolating between different sized strokes. Reviewed By: antoniov Differential Revision: https://developer.blender.org/D9835
2020-12-12Cleanup: clang tidyJacques Lucke
2020-12-12UI: Allow UI to pass focused data-block to operators via contextJulian Eisel
This is similar to c4a2067130130d, but applies to the general UI and is only about single data-blocks. Here there was a similar problem: How can buttons pass the data they represent to operators? We currently resort to ugly ad-hoc solutions like `UI_context_active_but_get_tab_ID()`. So the operator would need to know that it is executed on a tab button that represents a data-block. A single button can now hand operators a data-block to operate on. The operator can request it via the "id" context member (`CTX_data_pointer_get_type(C, "id", &RNA_ID)` in C, `bpy.context.id` in .py). In this commit, it is already set in the following places: * Generic RNA button code sets it to the pointed to data-block, if the button represents a data-block RNA pointer property. (I.e for general data-block search buttons.) * Data-block selectors (`templateID`) set it to the currently active data-block. * The material slot UI-List sets it for each slot to the material it represents. The button context menu code is modified so its operators use the context set for the layout of its parent button (i.e. `layout.context_pointer_set()`). No user visible changes. This new design isn't actually used yet. It will be soon for asset operators. Reviewed as part of https://developer.blender.org/D9717. Reviewed by: Brecht Van Lommel
2020-12-12UI: Allow Outliners to pass selected data-blocks to operators via contextJulian Eisel
The way the Outliner integrates operations on selected tree elements is known to be quite problematic amongst developers. The context menu is generated in an unusual way and doesn't use the normal operator system. Instead, changes are applied via a recursive callback system. Things are quite ad-hoc, and the callbacks often implement logic that should not be in the Outliner, but in entirely different modules. Often these modules already contain the logic, but as proper operators. This commit is a step into a hopefully better direction that should allow us to put actual operators into Outliner context menus. It starts solving the problem of: How can the Outliner pass selected data to operators. It implements it for data-blocks only, but other data could do it in the same way. Idea is to keep doing what operators were initially designed to do: Operate on context. Operators can now query a "selected_ids" context member (`CTX_data_selected_ids()` in C, `bpy.context.selected_ids` in .py). If an Outliner is active, it will generate a list of selected data-blocks as a response, via its `SpaceType.context` callback. Any other editor could do the same. No user visible changes. This new design isn't actually used yet. It will be soon for asset operators. Reviewed as part of https://developer.blender.org/D9717. Reviewed by: Brecht Van Lommel
2020-12-11Fix error in recent commitGermano Cavalcante
Introduced in rBcada56b1f72f537f9ab007cfafd430ac10c292fb
2020-12-11Fix: Fix potential memory leak in BLI_getenvRay Molenkamp
Issue introduced in rB87b19b3aba0c and unlikely to occur but no reason not to have correct code.
2020-12-11Cleanup: Python GPU: change prefix 'bpygpu_' to 'py_' in static functionsGermano Cavalcante
2020-12-11Cleanup: GPU Python: Use 'PyC_ParseStringEnum' for string enumGermano Cavalcante
2020-12-11Fix: BLI_getenv returns ascii not UTF8 on windowsRay Molenkamp
BLI_getenv has always incorrectly returned ascii rather than UTF-8. This change corrects this behaviour. This resolves issues when the `BLENDER_USER_CONFIG` environment variable contains a path with Unicode characters on windows as reported in T74510 (but unlikely the root cause for the issue at hand there) Differential Revision: https://developer.blender.org/D9831 Reviewed by: brecht
2020-12-11Cleanup: clang-formatHarley Acheson
Forgot to run Make Format on recent spelling changes
2020-12-11Fix T83050: Crash dragging shared collection to master collectionHans Goudey
The flag syncing code expects to find collection flags in same view layer before and after the move, it even has an assert for it. However, there is one case where this doesn't happen, when dragging a collection that exists in two scenes to the master collection. This commit removes this assert, frees the temporary flag structs separately, and updates some comments with this information. There is more detail in the adjusted comment. Differential Revision: https://developer.blender.org/D9785
2020-12-11Cleanup: clang tidyJacques Lucke
2020-12-11Fix T83280: Crash when deleting hair collision collection.Bastien Montagne
Root of the issue was missing management of ID pointers in the cloth modifier data stored in ParticleSystem for hair physics, in the 'foreach_id' particle system code. Using modifier's 'foreach_id' code in psys one unfortunately requires some ugly conversion gymnastics, but this is still better than having dedicated code for that case. Note that this is actually a fairly critical issue, fix should be backported to 2.91.1 should we do it, and to 2.83 LTS as well I think.
2020-12-11Geometry Nodes: support instancing collectionsJacques Lucke
The Point Instance node can instance entire collections now. Before, only individual collections were supported. Randomly selecting objects from the collection on a per point basis is not support, yet. Last part of D9739. Ref T82372.
2020-12-11Geometry Nodes: support collection socketsJacques Lucke
Part of D9739.
2020-12-11Nodes: add Collection socket typeJacques Lucke
The implementation is pretty much the same as for Object sockets. The socket color is the one that is used for collections in the outliner. Part of D9739.
2020-12-11UI: Consistent Range DescriptionsYevgeny Makarov
Unifying range descriptions as a value 'to' a value. Differential Revision: https://developer.blender.org/D9771 Reviewed by Julian Eisel
2020-12-11Refactor/extend BKE API to get special user directoriesJulian Eisel
The previous `BKE_appdir_folder_default()` was confusing, it would return the home directory on Linux and macOS, but the Documents directory on Windows. Plus, for the Asset Browser, we want to use the Documents directory for the default asset library on all platforms. This attempts to clean up the API to avoid confusion, while adding the newly needed functionality. * `BKE_appdir_folder_default()` should behave as before, but the implementation changed: ** Removes apparently incorrect usage of `XDG_DOCUMENTS_DIR` on Unix systems - this seems to be a config file variable, not an environment variable. Always use `$HOME` instead, which this ended up using anyway. ** On Windows it doesn't attempt to use `%HOME%` anymore and gets the Documents directory directly. * Add `BKE_appdir_folder_home()` to gives the top-level user directory on all platforms. * Add `BKE_appdir_folder_documents()` to always get the user documents directory on all platforms. There should be no user noticable behavior change. Differential Revision: https://developer.blender.org/D9800 Reviewed by: Brecht Van Lommel
2020-12-11GPencil: Add Link support to Effects using Ctrl+LAntonio Vazquez
The effects were not supported in this operator, but it was supported in the Outliner. Differential Revision: https://developer.blender.org/D9824
2020-12-11Fix T82881: Paint mask 'deselect on nothing' missed viewport updatePhilipp Oeser
Was failing for weightpaint and vertexpaint. Selection flags were actually changed, but the update in the viewport wasnt immediate, leading to confusion when the update happened later (e.g. when using the weight gradient tool as done in the report). We need to tag ID_RECALC_SELECT and send ND_SELECT notifier here. This could be done explicitly, but there is also existing functionality available that does this. Note: the way updates happen for paintfaces vs. paintverts looks a bit inconsistent (so this could be part of a later cleanup commit) Maniphest Tasks: T82881 Differential Revision: https://developer.blender.org/D9631
2020-12-11UI: Correct help text in the Parent panelThomas Beck
Tracking Axis and Up Axis were still referring to duplis (DupliFrame) - changed it to be in line with Aaron's info about them in our manual
2020-12-11Geometry Nodes: add Attribute Mix nodeJacques Lucke
This node can be used to mix two attributes in various ways. The blend modes are the same as in the MixRGB shader node. Differential Revision: https://developer.blender.org/D9737 Ref T82374.
2020-12-11Cleanup: remove some forward declared enumsJacques Lucke
Forward declaring enums are not allowed in C++. Differential Revision: https://developer.blender.org/D9811
2020-12-11Fix wrong operator return values in Outliner code.Bastien Montagne
Mistakes in rBac8b641b77e0 and rBf254f66587f2. Spotted while inverstigating T83592.
2020-12-11GeometryNodes: Make properties exposed in modifier overridable.Bastien Montagne
2020-12-11Cleanup: Fix typo in comment.Bastien Montagne
2020-12-11Correct the order of the last two arguments in ↵Evan Wilson
`eevee_cryptomatte_shading_group_create` When compiling on Windows, the following warnings occur: ```[3468/4560] Building C object source\blender\draw\CMakeFiles\bf_draw.dir\engines\eevee\eevee_cryptomatte.c.obj C:\blender-git\blender\source\blender\draw\engines\eevee\eevee_cryptomatte.c(306): warning C4047: 'function': 'bool' differs in levels of indirection from 'void *' C:\blender-git\blender\source\blender\draw\engines\eevee\eevee_cryptomatte.c(306): warning C4024: 'eevee_cryptomatte_shading_group_create': different types for formal and actual parameter 5``` As @Severin pointed out [here](https://developer.blender.org/rB76a0b322e4d3244e59a154c8255b84a4fbc33117#288960), this is due to the last two arguments being flipped. This diff corrects the order. Reviewed By: Severin, fclem Differential Revision: https://developer.blender.org/D9809
2020-12-11Workaround T83651: Crash dragging multiple buttons in the clip editorCampbell Barton
Avoid the crash, dragging multiple buttons still needs fixing.