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-10-01Use DNA defaults system for modifiersHans Goudey
As noted in T80164, there are quite a few area of Blender where the "Reset to Default Value" operator in button context menus doesn't work. Modifiers are one of them, because the DNA defaults system was never set up for them. Additionally, this should make modifier versioning easier. Whenever a new field is added it should be automatically initialized to the default value. I had to make some ordering changes in the following modifiers to work around an error with `-Wsign-conversion` in the macros: - Solidify Modifier - Corrective Smooth Modifier - Screw Modifier Some modifiers are special cases and are skipped in this commit: - Data Transfer Modifier - Cloth Modifier - Fluid Modifier - Softbody Modifier Differential Revision: https://developer.blender.org/D8747
2020-10-01Cleanup: Remove unused variableHans Goudey
2020-10-01Fix: Mesh to Volume modifier crashes when object is in edit modeJacques Lucke
Bug and fix has been found by dfelinto, thanks.
2020-10-01Volumes: copy display settings in BKE_volume_new_for_evalJacques Lucke
2020-10-01Fix T81248: World nodetree action is linked after duplicationPhilipp Oeser
This was already changed for Material nodetrees on duplication in rBa75ac18638f4. Since it is not obvious from the UI how change World actions - and to be consistent with Material actions, it is best to copy the action as the default behavior. So use generic BKE_id_copy functions with LIB_ID_COPY_ACTIONS flag [which also enables us to get rid of `BKE_world_copy`] Note: taking the User Preference `USER_DUP_ACT` into account here (for both material and world actions) could be a followup step. Maniphest Tasks: T81248 Differential Revision: https://developer.blender.org/D9046
2020-10-01Fix T81267: bad handling of usercount for actions duplicated with some animdata.Bastien Montagne
Those actions are full proper IDs and should therefore not be affected by flags used to duplicate 'owner' ID own data.
2020-10-01Fix T80395: Cycles baking crash when Surfaces are disabled in the view layerMartijn Versteegh
Always enable surfaces for baking, otherwise there is nothing to bake to. Differential Revision: https://developer.blender.org/D9015
2020-10-01Cleanup: clang-formatBrecht Van Lommel
2020-10-01Fix missing UI elements for the new Brown-Conrady distortion modelIvan Perevala
Differential Revision: https://developer.blender.org/D9072
2020-10-01Fx several issues with Outliner's collection editing re linked/override.Bastien Montagne
Most collection operations should not be allowed when either the scene or the parent collection are linked or liboverrides. This commit adds more stricter checks in both polling and execution aspects of several related operators. Fix T81282: Crash on instance to scene of a collection of a linked scene.
2020-10-01Fix some inactive modifier properties not being editableBrecht Van Lommel
The convention is to keep inactive settings editable even if they are grayed out for having no effect due to other settings.
2020-10-01Windows: workaround to make Windows Ink tablet API workNicholas Rishel
Now Wintab is not initialized when starting Blender with the tablet API preference set to native, since that disables Windows Ink. Note that changing the tablet API requires restarting Blender for changes to take effect. This serves as a stopgap to allow use of Windows Ink until runtime API switching is merged. Differential Revision: https://developer.blender.org/D9051
2020-10-01macOS: support for key repeat events in keymapsYevgeny Makarov
Differential Revision: https://developer.blender.org/D8882
2020-10-01Fix T81340: UBSan: addition of unsigned offset causes overflowAnkit Meel
The warning: runtime error: addition of unsigned offset to 0x61a0000b22d8 overflowed to 0x61a0000b22b8 Fix T81340 (partially) Reviewed By: campbellbarton Maniphest Tasks: T81340 Differential Revision: https://developer.blender.org/D9063
2020-10-01Cleanup: avoid applying offset to null pointerCampbell Barton
Based on D9069 by @ankitm.
2020-10-01Cleanup: avoid member access within null pointerAnkit Meel
While harmless, UBSan warns about this. Prefer offsetof where possible since it's more readable.
2020-10-01Cleanup: dna_genfile API for accessing struct member offsetsCampbell Barton
- Rename `find_elem` to `elem_offset` (matching `elem_exists`). - Remove unused `SDNA_StructMember` return argument. - Return an offset instead of a pointer which was being converted back into an offset by one caller, in this case there was no way to tell the difference between and element that doesn't exist and a struct member at the start of the array. Resolves UBSan warning raised in T81340.
2020-09-30Fix File Browser filtering showing workspaces for "Environment" categoryJulian Eisel
This is not an appropriate category for workspaces. Mistake in 7f564d74f9ed. My intention was probably to add it to the "Miscellaneous" category.
2020-09-30Fix implicit conversion from pointer to boolHans Goudey
Error in 9b6c5268bc20. Also move variable declaration to where it's used to reduce confusion.
2020-09-30Cleanup: Remove unused View2D variables and functionHans Goudey
It looks like this code was left over from tabbed panels in the properties editor. It wasn't used anywhere except for in one line of the horizontally-aligned panel code that was recently removed. Differential Revision: https://developer.blender.org/D8651
2020-09-30Cleanup: Reduce indentationHans Goudey
Instead of indenting the entire functional block, check for the error case and the supported case early to make the code more readable.
2020-09-30Fix Cycles CUDA kernels for Ampere not building with CUDA 11Brecht Van Lommel
Running Blender on Ampere cards was already possible with ptx, this fix is needed to support building CUDA binaries. Note the CUDA version used for official Blender builds is still 10, this is merely the change to make it possible for those using CUDA 11 and specifying the sm_8x kernels to be compiled. Found by Milan Jaros.
2020-09-30Subdivision Surfaces: make uv smooth items consistent with new boundary smoothBrecht Van Lommel
This adds an option to smooth UV boundaries including corners, and renames the available options to None / Keep Corners / All. Ref D8413
2020-09-30Subdivision Surfaces: add boundary smooth option to modifiersPiotr Ostrowski
This adds the option to either smooth the entire boundary, or to keep corners sharp, for the Subdivision Surface and Multiresolution modifiers. This mainly helps with compatibility with other software. The default behavior remains to smooth the entire boundary. Differential Revision: https://developer.blender.org/D8485
2020-09-30Subdivision Surfaces: add option disable using the limit surfacePiotr Ostrowski
This makes subdivision surfaces compatible with the old subdivision surface modifier and other applications that do not use the limit surface. This option is available on the Subdivision Surface modifier. Differential Revision: https://developer.blender.org/D8413
2020-09-30Cycles: Fix usage of memory barriers in split kernelSergey Sharybin
On user level this fixes dead-lock of OpenCL render on Intel Iris GPUs. Note that this patch does not include change in the logic which allows or disallows OpenCL platforms to be used, that will happen after the kernel fix is known to be fine for the currently officially supported platforms. The dead-lock was caused by wrong usage of memory barriers: as per the OpenCL specification the barrier is to be executed by the entire work group. This means, that the following code is invalid: void foo() { if (some_condition) { return; } barrier(CLK_LOCAL_MEM_FENCE); } void bar() { foo(); } The Cycles code was mentioning this as an invalid code on CPU, while in fact this is invalid as per specification. From the implementation side this change removes the ifdefs around the CPU-only barrier logic, and is implementing similar logic in the shader setup kernel. Tested on NUC8i7HVK NUC. The root cause of the dead-lock was identified by Max Dmitrichenko. There is no measurable difference in performance of currently supported OpenCL platforms. Differential Revision: https://developer.blender.org/D9039
2020-09-30Tracking: Implement Brown-Conrady distortion modelIvan Perevala
Implemented Brown-Conrady lens distortion model with 4 radial and 2 tangential coefficients to improve compatibility with other software, such as Agisoft Photoscan/Metashapes, 3DF Zephir, RealityCapture, Bentley ContextCapture, Alisevision Meshroom(opensource). Also older programs: Bundler, CPMVS. In general terms, most photogrammetric software. The new model is available under the distortion model menu in Lens settings. For tests and demos check the original patch. Reviewed By: sergey Differential Revision: https://developer.blender.org/D9037
2020-09-30Cleanup: convert gforge task ID's to phabricator formatValentin
Cleanup old tracker task format to the new. e.g: [#34039] to T34039 Ref D8718
2020-09-30Cleanup: use 'use_' prefix for RNA booleansCampbell Barton
Some of the naming was quite misleading.
2020-09-30UI: Motion Tracking: Fix description of K2 coefficientIvan Perevala
Fixed description of K2 coefficient. It is second coefficient Reviewed By: Blendify Differential Revision: https://developer.blender.org/D9050
2020-09-30Cleanup: spellingCampbell Barton
2020-09-30Cleanup: remove full-stop from descriptionCampbell Barton
2020-09-30Cleanup: use angle-brackets for email addressesCampbell Barton
This is already the most widely used convention. Use this so `make check_spelling_c` will ignore all email addresses.
2020-09-30Cleanup: sort cmake file listsCampbell Barton
2020-09-30Cleanup: sort struct declarationsCampbell Barton
2020-09-30Cleanup: Make function privateHans Goudey
The "UI_panel_set_expand_from_list_data" doesn't need to be in the public API since it's just called every time an instanced panel is added. This commit just sets the expansion automatically and adjusts some naming to account for the moved function.
2020-09-30Fix use after free deleting object with modifier panels visibleHans Goudey
It's necessary to check if the panels are active before accessing their data. Thanks to @ankitm for reporting this.
2020-09-30Cleanup: Use LISTBASE_FOREACH macro in outliner codeHans Goudey
2020-09-30UI: Remove second person in warning messageHans Goudey
This phrasing can feel like an accusation, and a simpler phrase gets across the idea just as well.
2020-09-29Sculpt: Preserve Mesh visibility from edit mode using the Face SetsPablo Dobarro
Before this change, when users switch from edit mode to sculpt mode, the entire mesh would be visible. Even if in the edit mesh mode part of it was set to invisible. With this change the visibility is preserved, by creating a separate face set for the visible and invisible parts of the mesh and setting their initial visibility. Implementation details: This adds a function to initialize a new Face Set datalayer taking the current mesh visibility into account which is stored in the ME_HIDE flag of the vertices. Reviewed By: sergey Differential Revision: https://developer.blender.org/D8901
2020-09-29Sculpt: Line Project Gesture toolPablo Dobarro
This tool projects all vertices to the right of the plane defined by the line gesture towards the plane. By doing this, this tool can create cuts and plane surfaces in the mesh without modifying the geometry or using boolean operations, so it is much faster than bisecting the mesh for cases where the geometry was going to be remeshed afterwards. Added as experimental as it does not have icon. Reviewed By: sergey, Severin Differential Revision: https://developer.blender.org/D9021
2020-09-29API Docs: Correct syntax for bpy.utils.register_classAaron Carlisle
2020-09-29API Docs: Fix corrupted document of gpu.select.load_idnutti
The Python API document of gpu.select.load_id does not follow rst format. c.f. https://docs.blender.org/api/current/gpu.select.html This patch fixes it. Reviewed By: Blendify Differential Revision: https://developer.blender.org/D8547
2020-09-29API docs: Fix sytax error for delaunay_2d_cdAaron Carlisle
Alternative solution to https://developer.blender.org/D8546
2020-09-29Fix T81100: ccl::Node: ASan SEGV due to bad pointerAnkit Meel
`SOCKET_OFFSETOF` was added in the initial commit {rBec51175f1fd6c91d5} when `offsetof` [1] was not supported well enough. GCC and LLVM support it since C++17. Other two changes: type and size check can be done without creating an invalid address too. [1] https://cppreference.com/w/cpp/types/offsetof Reviewed By: campbellbarton, brecht Maniphest Tasks: T81100 Differential Revision: https://developer.blender.org/D9042
2020-09-29API Docs: Use raises field list syntaxAaron Carlisle
See https://www.sphinx-doc.org/en/master/usage/restructuredtext/domains.html#info-field-lists
2020-09-29Fix unreported Eisenbug leading to a crash when reading a blend file.Bastien Montagne
This took more than a day to fully investigate and understand, one of the reasons being that the probability of the issue to show up was extremely low, and subjected to very specific random factors. Root of the issue is that, in some very rare cases, a newly read ID might get the exact same memory address as the one it had when the blend file was saved. In that case, `BKE_workspace_active_set` would return immediately, since the pointer to the active workspace would remain unchanged. But that lead to having an unset NULL active layout pointer, which would crash when attempting to get e.g. the active screen. For the record, I ran into this when running a specific build (master with one flag added to the `LIB_ID_CREATE` ones, with value `1 << 3`), using a specific set of options (`--background --factory-startup -noaudio`), and passing the .blend file from T80090 as argument.
2020-09-29Fix (unrepported) utterly broken logic in readfile for Workspaces.Bastien Montagne
Remove the attempt to update the active layout pointers of each window from whithin `direct_link_workspace`. This piece of code was a nonsense for at least to critical reasons: * Do not, never, ever, access data from another datablock within the direct_link_... functions. Just don't. Don't try to be smart. * Since it was trying (and failing) to update the active layout of every window for every workspace, it was effectively setting those `act_layout` pointers to NULL (remapping can only ever happen once, trying to remap and already remapped new pointer is bound to fail in any case). Luckily (and funnily), this piece of code was actually harmless, since setting the active layout would be overridden/redone later, in `lib_link_windowmanager`, when updating their `workspace_hook` in `lib_link_workspace_instance_hook`. Note that the similar horror with `WorkSpaceDataRelation->parent` (which points at a window) is kept for now, because that one is needed. Hope to refactor it soon though.
2020-09-29Property Search: Set expansion properly for child panelsHans Goudey
Although I haven't seen this cause any visible errors, there is some incorrect handling for setting panel expansion during search: - Properly check if child panel is active first - Don't stop traversal at headerless panels that could theoretically have children
2020-09-29Fix T71981: Alembic vertex interpolation can jumble meshSybren A. Stüvel
Add an option to disable Alembic vertex interpolation. Bump subversion from 5 to 6. Alembic stores mesh samples at specific time keys; when a frame in Blender maps to a timecode between two samples, Blender will interpolate the mesh vertex positions. This interpolation only happens when the mesh has a constant topology, but sometimes this was not detected properly when the vertices change order, but the number of mesh elements remains the same. This would result in a mesh with jumbled up vertices (T71981). With this patch, users have the ability to disable vertex interpolation. An alternative would be to have better detection of topology changes, but that that'll cause a considerable slowdown. Maniphest Tasks: T71981 Differential Revision: https://developer.blender.org/D9041