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-04-23Fix deprecation warning when building with OpenVDB 9Brecht Van Lommel
Based on patch by Sebastian Parborg.
2022-04-22Fix T97453: Blender crash when selecting Caching checkbox in VSEJörg Müller
Merge Audaspace fixes from upstream.
2022-04-22Cleanup: Clang tidy, unused variable warningsHans Goudey
Also remove unnecessary uses of `struct` and add const in one place.
2022-04-22Cleanup: Remove unused variables, adjust commentsHans Goudey
2022-04-22Cycles: removed UV requirement for MNEE, along with fixes and cleanupsOlivier Maury
Remove need for shadow caustic caster geometry to have a UV layout. UVs were useful to maintain a consistent tangent frame across the surface while performing the walk. A consistent tangent frame is necessary for rough surfaces where a normal offset encodes the sampled h, which should point towards the same direction across the mesh. In order to get a continuous surface parametrization without UVs, the technique described in this paper was implemented: "The Natural-Constraint Representation of the Path Space for Efficient Light Transport Simulation" (Supplementary Material), SIGGRAPH 2014. In addition to implementing this feature: * Shadow caustic casters without smooth normals are now ignored (triggered some refactoring and cleaning). * Hit point calculation was refactored using existing utils functions, simplifying the code. * The max number of solver iterations was reduced to 32, a solution is usually found by then. * Added generalized geometry term clamping (transfer matrix calculation can sometimes get unstable). * Add stop condition to Newton solver for more consistent CPU and GPU result. * Add support for multi scatter GGX refraction. Fixes T96990, T96991 Ref T94120 Differential Revision: https://developer.blender.org/D14623
2022-04-22LibOverride: Add hierarchy creation from IDTemplate UI widget.Bastien Montagne
This is fairly tricky to perform, since there is often very limited contextual information available about the 'active' hierarchy to override. This commit is a first step, it is expected to handle decently well cases like objects and obdata (recreating necessary object and collection hierarchy, and/or hooking it to a potential existing hierarchy), at least in most common cases. Ref: {T95707}.
2022-04-22Fix: Build error on macOS after previous commitHans Goudey
2022-04-22Re-fix some comments in bmesh_bevel.c.Howard Trickey
The UV fix just committed had gotten out of sync with some changes that had been made inside some comments (spelling and folding).
2022-04-22Curves: Further split of curves draw code from particlesHans Goudey
Extends the changes started in f31c3f8114616bb to completely separate much of the DRW curves code from the particle hair drawing. In the short term this increases duplication, but the idea is to simplify development by making it easier to do larger changes to the new code, and the new system will replace the particle hair at some point. After this, only the shaders themselves are shared. Differential Revision: https://developer.blender.org/D14699
2022-04-22BMesh: Add additional attribute access macrosMartijn Versteegh
Add macros to get/set boolean attributes, to set float2/float3 attributes and to get float2/float3 attributes via pointer access. Needed for D14365 and further generic attribute integration. Differential Revision: https://developer.blender.org/D14708
2022-04-22Fix T56625: Bevel sometimes made zero area UV faces.Howard Trickey
This substantially redoes the logic by which bevel chooses, for the middle segment when there are an odd number of segments, which face to interpolate in, and which vertices to snap to which edges before doing that interpolation. It changes the UV layouts of a number of the regression tests, for the better. An example, in the reference bug, is a cube with all seams, unwrapped and then packed with some margin around them, now looks much better in UV space when there are an odd number of segments.
2022-04-22Fix T96498: Modifiers affect multiple curve objectsHans Goudey
The original mistake I made in b9febb54a492ac6c938 was thinking that the input curve object data to `BKE_displist_make_curveTypes` was already copied from the original. I think I misread some of its `ID` flags. This commit places the result of curves evaluation in a duplicated curve instead, and copies the edit mode pointers necessary for drawing overlays. `Curve` needs to know not to free those pointers. I still don't have a full understanding of why some of the tactics I've used work and others don't. I've probably tried around 8 different solutions at this point, and this is the best I came up with. The dependency graph seems to have some handling of edit mode pointers that make the edit mode overlays work if the evaluated result is only an empty curve created by the evaluated geometry set. This doesn't work with the current method and I need to set the edit mode pointers at the end of evaluation explicitly. We're constrained by the confusing duality of the old curves system combined with the new design using the evaluated geometry set. Older areas of Blender expect the evaluated `Curve` to be a copy of the original, even if it was replaced by some arbitrary evaluated mesh. Differential Revision: https://developer.blender.org/D14561
2022-04-22Fix (unreported): Placement Tool not orienting the Object to normalGermano Cavalcante
Regression introduced in {rB721335553ccb5ce4f7a374b958b7d65befa319df}. `plane_omat` is only computed if `snap_state->draw_plane` is `true`.
2022-04-22Fix: Assert failure with certain screw modifier settingsHans Goudey
Caused by a typo/mistake in rB6a3c3c77b3ebdbcd4455.
2022-04-22Fix various typos and other UI messages issues.Bastien Montagne
2022-04-22Fix T97429: Translateable Unit Names Missing in the File.Bastien Montagne
Added some regex magic in i18n py module to also extract UI names from all of our units definitions. Those enum values are fully dynamically generated, so they cannot be extracted from RNA introspection.
2022-04-22Change vertex paint icon color (fix)Ramil Roosileht
Apply standard green tool color to vertex paint tools, to keep icon color palette more consistent https://developer.blender.org/D14694
2022-04-22Fix Data Transfer Projected Face/Edge Interpolated mode is wrongPhilipp Oeser
Caused by {rBcfa53e0fbeed} Above commit mixed up source and destination meshes causing bad lookups on calculated normals. Now make sure we get normals from our destination mesh to project along. Note this was only reported for Projected Face Interpolated mode, but same was true for Projected Edge Interpolated mode (though that one is a bit weird to test since I think there is generally something wrong with that mode -- with or without rBcfa53e0fbeed). Fixes T97528 Maniphest Tasks: T97528 Differential Revision: https://developer.blender.org/D14726
2022-04-22Fix accessing attribute data in editmodePhilipp Oeser
When in mesh editmode, attributes point to bmesh customdata, the attribute data is empty since custom data is stored per element instead of a single array there (same es UVs etc.). Opposed to e.g. UVs, general attributes were not setting their data length/size to zero in case of editmode though, which could lead to - crash in Outliner Data Api view [that was reported in T95922] - RuntimeError such as the following: ``` RuntimeError: bpy_prop_collection[index]: internal error, valid index 0 given in 8 sized collection, but value not found ``` Now check for mesh editmode in `BKE_id_attribute_data_length` (and return zero in that case). Alternatively, the check could also be done in `rna_Attribute_data_length` only (such as UVs do in `rna_MeshUVLoopLayer_data_length`). Ref D11998 Fixes T95922 Maniphest Tasks: T95922 Differential Revision: https://developer.blender.org/D14714
2022-04-22Fix T97277: Tweak drag transforming is broken for masks (RMB select)Campbell Barton
Regression in 4d0f846b936c9101ecb76a6db962aac2d74a460a, passing selection through to drag relied on tweak events running even when the press event was handled which is not the case for drag.
2022-04-22Fix - Display correct units in "Edit voxel size" widgetRamil Roosileht
Fix for T84962 Before the patch, edit voxel size always displayed voxel size without units, just as a number in meters. Now it changes like in the voxel remesh panel and shows correct units Video: {F13009428} In adaptive mode: {F13009435} Reviewed By: JulienKaspar Maniphest Tasks: T84962 Differential Revision: https://developer.blender.org/D14682
2022-04-22Change viewport shading text from "Color" to "Attribute"Ramil Roosileht
This change from T97104 Reviewed By: JulienKaspar, jbakker Maniphest Tasks: T97104 Differential Revision: https://developer.blender.org/D14620
2022-04-22Reorder sculpt toolsRamil Roosileht
Changed tool order as proposed in [[ https://developer.blender.org/T97206 | T97206 ]] {F12987559} Reviewed By: JulienKaspar, jbakker Maniphest Tasks: T97206 Differential Revision: https://developer.blender.org/D14612
2022-04-22Fix: VSE channels region visible in previewRichard Antalik
Hide region for preview and sequencer/preview combined view.
2022-04-22pyproject: add configuration for autopep8Campbell Barton
This adds pyproject.toml, needed to configure defaults for autopep8. The file is auto-discovered in a similar way to .clang-format, other tools could be configured here too. For now just configure autopep8 so this can be enabled in IDE's without causing unexpected edits such as wrapping lines over 80 columns in width. Now autopep8 can be used from the root directory by running: autopep8 . This uses multiple-jobs to run autopep8 over all Python scripts except paths that are explicitly ignored in exclude defined by pyproject.toml. Reviewed By: mont29, brecht, sybren Ref D14686
2022-04-22Cleanup: spelling in commentsCampbell Barton
2022-04-22Cycles: enable AMD RDNA GPU support on LinuxBrecht Van Lommel
This enables building of HIP binaries for AMD RDNA and RDNA2 GPUs. This requires the 22.10 / ROCm 5.1 driver. Ref T91571 Differential Revision: https://developer.blender.org/D14360
2022-04-22Fix: VSE channels area has no backgroundRichard Antalik
Draw area background even when there is no sequencer data.
2022-04-21Fix: Use alphabetical order in geometry nodes add menuHans Goudey
2022-04-21Fix: Memory leak writing to builtin attribute from modifierHans Goudey
If the attribute already existed, but had a different domain or data type than the user tried to write to it with (i.e. writing to `position` with a float), then the data from field evaluation wasn't freed. This restructures the geometry nodes modifier attribute writing process to solve that problem and remove some of the nested if statements that made the process confusing. One case that still doesn't work is writing to a builtin attribute from a different domain. If `OutputAttribute` gets that feature then that could be supported here too. Differential Revision: https://developer.blender.org/D14706
2022-04-21Fix T97490: snap to multiple objects with linked data can crashGermano Cavalcante
The problem is old. rB52be06301257 (fixed by rB4b35d6950d4f) just masked it. `Object->data`, on evaluated objects, is not a safe pointer to get objects with the same `BMEditData`. Use `Object->runtime.data_orig` instead.
2022-04-21Cleanup: Remove unused argument to mesh modifier evaluationHans Goudey
2022-04-21gpu.types.GPUBatch: warn about deprecated primitive typesGermano Cavalcante
As `GPU_PRIM_LINE_LOOP` is not supported on Vulkan or Metal and `GPU_PRIM_TRI_FAN` is not supported on Metal, they will be removed in future releases. So it is important to inform users that they are obsolete and may not be supported for a long time. Release Notes: https://wiki.blender.org/wiki/Reference/Release_Notes/3.2/Python_API Reviewed By: campbellbarton Differential Revision: https://developer.blender.org/D14679
2022-04-21Cleanup: don't use allocation variables in OpenColorIO configBrecht Van Lommel
These are only needed for the legacy GPU renderer, which we don't use.
2022-04-21Color Management: add ACEScg to the default configurationBrecht Van Lommel
For more easily reading and writing ACEScg EXR files.
2022-04-21Fix T97502: Issues/crashes with "color_attributes" AttributeGroupPhilipp Oeser
Property collection functions were not really in sync which could result in crashes in UI_LISTS. The reason is that attributes of type color defined on domains other than Points or Corners are still valid, but should really be skipped for the special "color_attributes". `rna_AttributeGroup_color_length` itself was fine here, it skips these, but the iterator (`rna_AttributeGroup_color_iterator_begin` / `rna_Attributes_noncolor_layer_skip`) wasnt, so when a UI_LIST filter_items() would iterate the collection it would actually get results were it shouldnt. Now check a suiting domain in `rna_Attributes_noncolor_layer_skip` as well. Maniphest Tasks: T97502 Differential Revision: https://developer.blender.org/D14717
2022-04-21Geometry Nodes: better support for byte color attributesJacques Lucke
Since {rBeae36be372a6b16ee3e76eff0485a47da4f3c230} the distinction between float and byte colors is more explicit in the ui. So far, geometry nodes couldn't really deal with byte colors in general. This patch fixes that. There is still only one color socket, which contains float colors. Conversion to and from byte colors is done when read from or writing to attributes. * Support writing to byte color attributes in Store Named Attribute node. * Support converting to/from byte color in attribute conversion operator. * Support propagating byte color attributes. * Add all the implicit conversions from byte colors to the other types. * Display byte colors as integers in spreadsheet. Differential Revision: https://developer.blender.org/D14705
2022-04-21Nodes: raise exception when creating node group input/output failsJacques Lucke
Previously this would silently return `None`. Now the behavior is similar to when new sockets are added to a node.
2022-04-21install_deps: Update USD to 22.03.Bastien Montagne
Add back a patch wrongly removed by rBb9c37608a9e9, and add another fix, for gcc11 build support. Re {T95206}.
2022-04-21Functions: fix procedure executor not writing output in correct bufferJacques Lucke
The issue was that the executor would forget about the caller provided storage if the variable is destructed.
2022-04-21Geometry Nodes: show used named attributes in modifierJacques Lucke
This adds a new subpanel to the geometry nodes modifier which is just used to display information about used attributes. * A new panel is used because adding this information anywhere else clutters the ui too much imo. * The general layout is similar to that in the tooltip. I found it to be more trouble than it's worth to share this code. Possible future improvements: * Don't show the panel if there are no used named attributes. * Add some heuristics to determine which named attributes the user does not have to care about because they are only used in the node group and don't affect anything else. Differential Revision: https://developer.blender.org/D14701
2022-04-21Curves: show sculpt tool settings in panelsJacques Lucke
Ref T97444. Differential Revision: https://developer.blender.org/D14700
2022-04-21Fix T97497: NLA strip names are now properly contained within the strip boundsColin Basnett
Very easy fix, the bug seemed to be a result of a typo on the right-most margin. Old: {F13013777} New: {F13013782} Maniphest Tasks: T97497 Differential Revision: https://developer.blender.org/D14711
2022-04-21Fix Empty "Only Axis Aligned" viewing angle depends on object scalePhilipp Oeser
This was projecting the unnormalized z scale axis onto the plane defined by the view vector. If object scale was very small, this made the empty still visible at viewing angles far from the object axis. Now use the normalized z scale axis to make this work the same at all object scales. Fixes T97004. Maniphest Tasks: T97004 Differential Revision: https://developer.blender.org/D14557
2022-04-21Fix T97465: Moving compositor BG image cannot be cancelledPhilipp Oeser
This was possible with the gizmo, but no using the operator (e.g. from the sidebar). Now store original offsets and reset to these on calcel (ESC or RMB). Maniphest Tasks: T97465 Differential Revision: https://developer.blender.org/D14704
2022-04-21Sculpt: fix missing null pointer checkJoseph Eagar
in workbench_engine.c
2022-04-21Fix T95932: Auto-close text breaks outliner drag-n-dropCampbell Barton
Text inserted via TEXT_OT_insert would always have auto-close logic applies which interfered any insertion of literal strings containing brackets. Now auto-closing brackets is restricted to characters read from events from the operators invoke functions.
2022-04-21Cleanup: clang formatJacques Lucke
2022-04-21Cleanup: fix various warnings after recent commitJacques Lucke
2022-04-21Vertex paint: Fix debug compile error and aJoseph Eagar
few warnings.