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-05-24Fix T95706: Material asset not applied if appended and then linkedJulian Eisel
8f79fa9c6780 was an attempt to fix this already, but it didn't quite work. Problem was that the tooltip was messing with the drop-box and operator properties, setting the name property for its own internal logic. This name property would then be used rather than the session UUID to query the material, which gave the wrong material (linking can result in multiple IDs of the same type with the same name). A followup commit will further sanitize this.
2022-05-24Fix possible lingering around of ID after asset dropping failedJulian Eisel
More and more of the drop operations are being switched to use the ID's session UUID rather than the name, but the cleanup after a drop operator was cancelled assumed they would set the name. They will now first attempt to use the session UUID and fallback to the name if needed.
2022-05-24Fix (studio-reported) bad re-assigning of new liboverride from ID template ↵Bastien Montagne
widget. Shift-click on the 'linked' button in an ID template widget would fail to properly remap that usage of the linked ID to the newly created liboverride.
2022-05-24Redraw Motion Paths panel after creating motion pathSybren A. Stüvel
Add notifier such that the Motion Paths panel in the Object Properties tab gets redrawn, after using the Create Motion Path button. The reason it didn't update was that the button actually triggers a popup, and then executes in the context of that popup. It now actually emits a `ND_DRAW_ANIMVIZ` notifier, and ensures that the panel redraws on that.
2022-05-24Fix T98152: Named Attribute node changes data type for non-existant attributesJacques Lucke
Skip changing the data type in the node if it is not known.
2022-05-24Fix T97828: Split normals not visible on certain platforms.Jeroen Bakker
It is a know issue that split normals aren't supported when using high quality normals in the viewport. Some AMD platforms were pushed to use high quality normals to work around a driver bug where 1010102 texture formats `GL_INT_2_10_10_10_REV` wasn't uploaded to the GPU. This change will remove commonly used polaris platforms from the work-around. This has been tested with a RX480 against the latest AMD whql drivers (22.5.1). Users need to ensure that they use the latest drivers that are available on their platform. Although this change doesn't fix the underlying issue to support edit normals when high quality normals are enabled. It will not force that common platforms cannot use a feature as their platform is forced into using a work-around.
2022-05-24Fix T98247 EEVEE: Regression: Shader To RGB not displaying texturesClément Foucault
This was caused by the nodetree branch duplication not handling incoming links to the copied node, making all bsdfs nodes use their default values.
2022-05-24Fix T98268: replace string node des not handle empty strings correctlyJacques Lucke
Just use an existing function from blenlib instead of implementing a new version.
2022-05-24Fix T98328: missing depsgraph update after adding node groupJacques Lucke
Adding node groups can change depsgraph relations, so the depsgraph has to be rebuild.
2022-05-24Fix T98317: equal vs not-equal modes in compare node are not exact oppositesJacques Lucke
For vectors and colors to be not equal, it is enough when they are not equal in one component.
2022-05-24Fix GPUIndexBuf not working in pythonGermano Cavalcante
Since rBb47c5505aa37, Batchs containing GPUIndexBuf initialized via a PyObject with buffer protocol no longer work. This was because of an unsafe optimization in the GPUIndexBuf module for Python. So remove this micro-optimization.
2022-05-24Fix T98185: Assertion saving while fullscreenCampbell Barton
When saving from the menu the region was not set, causing the last region in `area->regionbase` to be used as the region was assigned before comparison.
2022-05-23Fix Eevee blackbody wrong with non-default scene linear color spaceBrecht Van Lommel
* Port over new code tables from Cycles * Convert Rec.709 to scene linear for lookup table. * Move code for wavelength and blackbody to IMB so they can access the required transforms, which are not in blenlib. * Remove clamping from blackbody shader to bypass the texture read. Since it's variable now easiest to just always read from the texture than pass additional parameters. * Fold XYZ to RGB conversion into the wavelength table. Ref T68926
2022-05-23Fix further issues when mixing link & append for asset drag & dropJulian Eisel
917c096be6b9 applied to objects only, this also applies the same fix for the general 3D View drop operations, e.g. used for dragging materials, images, worlds, etc. This is needed to fix T95706, but apparently something else is still going on. Needs further investigation.
2022-05-23Cleanup: Move new utilities for ID lookup operator propertiesJulian Eisel
Move them to a more accessible place, so that other operators in different files can use them. The following commit needs this.
2022-05-23Fix possible issues when mixing link & append for asset drag & dropJulian Eisel
The operators to handle object drag and drop (from the asset browser, outliner, etc.) used the object name to find the object to add and place. This is problematic with linking and/or library overrides, since this may lead to multiple objects with the same name. So the wrong object would be used by the drop operators. Partially fixes T97320. T95706 probably needs the same fix but for materials. As a side-effect, the "Name" button won't show up in the Adjust Last Operation panel anymore. This isn't really useful, and I doubt this was ever intentionally exposed in the UI.
2022-05-23Fix "Open Clip" operator in Clip Editor brokenJulian Eisel
Steps to reproduce were: - Open Clip Editor - Call "Open Clip" (e.g. Alt+O) - Select video file The file wouldn't be loaded into the Clip Editor. Caused by 7849b56c3c41.
2022-05-23Fix for crash opening the file selector multiple timesCampbell Barton
This is part of a fix for T88570, where the file selector would crash when activated multiple times. Calling save multiple times would free the operator, leaving a dangling pointer which was used when panels were visible that accessed the "active_operator". Reviewed By: Severin Ref D14905
2022-05-23Fix T88570: Crash when saving after pressing ctrl+S twice.Julian Eisel
Existing code to replace the file operation was failing when done from the window for the file operation itself. Basically, this patch does two things: - Implement a well defined window context to use as the "owner" or "root" of the File Browser. This will be used for managing the File Browser and to execute the file operation, even after the File Browser was closed. - Ensure the context is valid when dealing with file File Browser event handlers. Previously the window context just wasn't well defined and just happened to work well enough in most cases. Addressing this may unveil further issues, see T88570#1355740. Differential Revision: https://developer.blender.org/D13441 Reviewed by: Campbell Barton
2022-05-23Cleanup: GPU: Remove `gpu_shader_common_obinfos_lib.glsl`Clément Foucault
This has been replaced by `draw_object_infos`.
2022-05-23Fix T98251: EEVEE: Regression: Wrong normalmaps on scaled objectsClément Foucault
This was caused by a missing `normalize`.
2022-05-23EEVEE: Fix unreported broken normal map node modesClément Foucault
A compilation error was making it impossible to use normal map modes other than tangent.
2022-05-23DRW: Fix signed/unsigned mismatches in shader codeJohannes J
Fix the following error messages on Blender startup since commit 308a12ac647d6f9b4ef2b6c403903e0aeb65a571. This commit fixes T98194. Reviewed By: fclem Differential Revision: https://developer.blender.org/D15007
2022-05-23Fix T98128: EEVEE: Regression: Inverted surface normal on MacOS Intel GPUClément Foucault
This seems to be caused by the `!` used in conjunction with a macro. Using the macro directly as condition does not exhibit this issue.
2022-05-23Fix T98196: Crash when moving tweaked NLA strip with empty track belowSybren A. Stüvel
`BKE_nlastrip_find_active()` and `update_active_strip()` now do a more thorough search for the active strip, by also recursing into meta-strips. There were some assumptions in the NLA code that the active strips is contained in the active track. This assumption turned out to be false: when there is a meta-strip, the active strip could be inside that, and then it's not contained in `active_track.strips` directly. Apart from the above, there are other situations in which the track pointed to by `AnimData::act_track` does *not* contain the active strip (even indirectly). Both these cases can happen when the transform system is moving a strip that's in tweak mode. Entering tweak mode doesn't just search for the active track/strip, but also falls back to the last-selected ones. This means that the track/strip pointers & flags can be out of sync with what's being tweaked/transformed. Because of this, the assumption that there is any relation between "active strip" and "active track" has been removed from the `update_active_strip()` function. All this searching could be prevented by passing the `AnimData` to the code that duplicates tracks & strips. That way, when the active track/strip is dup'ed, the `AnimData` pointers can be updated as well. That would require more refactoring and thus could introduce other bugs, so that's left for later.
2022-05-23Cleanup: clarify what is scene linear color space in conversion conversionBrecht Van Lommel
* Rename ambiguous rgb to scene_linear in some places * Precompute matrices to directly go to scene instead of through XYZ * Make function signatures more consistent
2022-05-23Python API: add mathutils.Color functions to convert color spacesBrecht Van Lommel
Between scene linear and sRGB, XYZ, linear Rec.709 and ACES2065-1. And add some clarifications about color spaces in the docs. Fixes T98267 Ref T68926 Differential Revision: https://developer.blender.org/D14989
2022-05-23Fix T97237: dragging custom node group asset adds broken nodeJacques Lucke
Differential Revision: https://developer.blender.org/D15013
2022-05-23Fix T98283: Regression: crash when opening file that has Collision modifier ↵Bastien Montagne
on liboverride object Some RNA property update callbacks can already generate such modifier, and only one is allowed per object, so had to adapt code actually adding new modifiers in liboverride apply codebase.
2022-05-23Fix T98316: geometry nodes stop updating after duplicationJacques Lucke
This was a missing depsgraph update.
2022-05-23Fix T98258: Duplicated last vertex after GPencil sample.YimingWu
Also fixed an unreported issue of incorrect interpolation of thickness. Reviewed By: Aleš Jelovčan (frogstomp), Antonio Vazquez (antoniov) Differential Revision: https://developer.blender.org/D15005
2022-05-23Fix T98231: missing update when material output is in groupJacques Lucke
Differential Revision: https://developer.blender.org/D14998
2022-05-23Fix T98321: Image.update doesn't update the image editor.Jeroen Bakker
Missing call to partial update.
2022-05-23Compositor: Fix Map Range node To/From Max default valueAaron Carlisle
Mistake from rB5ef5a9fc24668aa264fe0558db9c0fb1246aa37f Fixes T98322
2022-05-22Fix T98320: GPencil Crash with Length and Build ModifiersAntonio Vazquez
The length modifiers creates a NULL strokes and this is not handled by Build modifier.
2022-05-20Fix wrong USD image color space export with non-default OpenColorIO configBrecht Van Lommel
The names of color spaces in OpenColorIO configs can be arbitrary, so don't use hardcoded names from our default config.
2022-05-20Fix T98266: Crash with empty mesh boolean nodeHans Goudey
The output mesh can be null. Also reorganize the WITH_GMP check to avoid compiling the rest of the node with GMP off.
2022-05-20Fix T96810: Bitmap race condition in PBVH normal calculationHans Goudey
The final normalization step of sculpt normal calculation iterates over all unique vertices in each node and marks them as done. However, storing the done mask in a bitmap meant that multiple threads could write to a single byte at the same time, because the bits for separate threads could be stored in the same byte. This is not threadsafe Fixing this issue seems to improve performance as well. First I tested just clearing the entire bitmap after the normal calculation. Then I tested using an array of booleans instead, which turned out to be slightly better, and simplifies code a bit. I tested on a Ryzen 3800x, on an 8 million polygon subdivided Suzanne by using the grab brush with a radius large enough to affect most of the mesh. | Original | Clear Entire Bitmap | Boolean Array | | --------- | ------------------- | ------------- | | 67.9 ms | 59.1 ms | 57.9 ms | | 1.0x | 1.15x | 1.17x | Differential Revision: https://developer.blender.org/D14985
2022-05-20Fix popup menu memory activating labels when names matched menu itemsCampbell Barton
When labels in popups (typically headings) matched the name of a button, the label would be activated instead of the button. This caused the unwrap menu in the UV editor not to re-select "Unwrap" when opening a second time.
2022-05-19Fix T98230: Automatic Constraint doesn't work if cursor is not movingGermano Cavalcante
The change was kind of intentional on {rB21e72496a629}. That commit made mouse movement to "select" the contraint in Auto Constraint a requirement. This deduplicated the code a bit, but this requirement is not comfortable for the first "selection" of the contraint. So the constraint "selection" is now done in two ways: - If there is no contraint, the "selection" is done immediately; - If there is already a constraint, the "selection" is delayed by 1 event to simulate a constraint cancellation if there is no mouse movement.
2022-05-19Fix (studio-reported) more possibilities to edit content of linked/override ↵Bastien Montagne
collections. Existing code for the `Move` operator, and some `Collections` panel operations (Object properties) was absolutely not override-safe, and sometimes not even linked-data safe.
2022-05-19GPencil: Remove icons in Build modifer mode parameterAntonio Vazquez
The list must not use icons. Feedback by @pablovazquez
2022-05-19Fix liboverride extreme resync times in case of libraries dependency loops.Bastien Montagne
That max number of `10000` level of recursivity was a typo (should have been `1000`), but even that is way too high, typical sane situation should not lead to more than a few tens of levels, so reducing the max level to 200. Also improve error message with more context info about the issue. Found while investigating issues for the Blender Studio's Heist production.
2022-05-19Revert "Fix liboverride extreme resync times in case of libraries dependency ↵Bastien Montagne
loops." This reverts commit e42e4e8568edeb4e0b962e2059586c2a3d3b457d. Wrong commit, sorry for the noise.
2022-05-19Fix liboverride extreme resync times in case of libraries dependency loops.Bastien Montagne
That max number of `10000` level of recursivity was a typo (should have been `1000`), but even that is way too high, typical sane situation should not lead to more than a few tens of levels, so reducing the max level to 200. Also improve error message with more context info about the issue. Found while investigating issues for the Blender Studio's Heist production.
2022-05-19Fix T98237: Double free with curve object conversion to meshHans Goudey
In some cases (when there is an evaluated curve), the conversion code would try to free the evaluated data-block twice, because freeing the object would free it from `data_eval` and then the data-block was freed again explicitly. Now check if the data-block is stored in `data_eval` before freeing `object.data` manually. This is another area that's made more complex by the fact that we change the meaning of `object.data` for evaluated objects. The solution is more complicated than it should be, but it works whether or not an evaluated mesh or curve exists.
2022-05-19Fix T93779: Python is unable to set axis aligned viewsCampbell Barton
It wasn't possible to temporarily orbit the view, then set back to an axis-aligned view. Details: - It was possible to change RegionView3D.view_rotation while the view kept the axis alignment value (Top, Left, Front .. etc) which displayed in the viewport overlay. Now changing the view rotation directly or via "view_matrix" resets the axis-alignment - clearing when the view is no longer axis-aligned or assigning the newly aligned axis. - RegionView3D.is_orthographic_side_view added in [0] could be assigned but wasn't useful as it treated an enum as a boolean only setting the RegionView3D.view to RV3D_VIEW_USER or RV3D_VIEW_FRONT. Now enabling this aligns the viewport rotation to it's closest axis-aligned orientation setting RegionView3D.view & view_axis_roll accordingly. Note that the "orthographic" term is misleading as the property only relates to axis-alignment, not to the perspective/orthographic setting. We could consider deprecating the current naming. [0]: 63bae864f40302b0a303498d26f230caf4f24339
2022-05-19Fix View Roll failure to align the quaternion to the view-axisCampbell Barton
View roll checked if the resulting roll was close to a view axis but didn't write the aligned quaternion back to the final result. Add ED_view3d_quat_to_axis_view_and_reset_quat since most callers to ED_view3d_quat_to_axis_view will reset the quaternion when a view aligned axis is found.
2022-05-18Fix T98225: file saved with an object in sculptmode that is disabled in ↵Bastien Montagne
viewports crashes on reload Issue revealed by rB90e12e823ff0. Hidden objects may not be fully evaluated by the despgraph, do not attempt to restore edit/sculpt/etc. modes for those. Should also be backported to 2.93 LTS release.
2022-05-18Fix incorrect track search area election colorSergey Sharybin
It was following the pattern area selection color instead of its own.