Commit Graph

114799 Commits

Author SHA1 Message Date
Hans Goudey
6599d2f03b Fix: Crash with empty curves add interpolate points
The neighbors for an added curve can be empty.
In that case use the constant value instead of interpolating.
2022-05-11 15:40:49 +02:00
Jeroen Bakker
e354ba701a Fix T97330: GPU Subdiv compiler error.
GLSL has different max number of ssbo per glsl stage.
This patch checks if the number of compute ssbo blocks matches
our requirements for the GPU Subdiv, before enabling it.

Some platforms allow more ssbo bindings then blocks per stage.
2022-05-11 15:29:52 +02:00
Ray Molenkamp
3eb3d363e1 Fix: Build error on windows.
Issue introduced by rBeef98e66cf9e

BLI_math_rotation.h uses M_PI which
gets defined inside BLI_math_base.h
2022-05-11 07:28:48 -06:00
Bastien Montagne
007e95c259 Merge branch 'blender-v3.2-release' 2022-05-11 15:15:45 +02:00
Bastien Montagne
a3f9862262 Fix (unreported) crash in Outliner Overrides Properties view in invalid cases.
We cannot try to get RNA info when the rna path of an override property
is invalid.
2022-05-11 15:14:44 +02:00
Campbell Barton
87978ff560 Cleanup: rename BLI_str_format_attribute_domain_size
This is useful without any functionality specific to attribute domains,
rename to `BLI_str_format_decimal_unit` to follow naming of a similar
function `BLI_str_format_byte_unit`.
2022-05-11 22:53:02 +10:00
Jeroen Bakker
fbf92f5967 Merge branch 'blender-v3.2-release' 2022-05-11 14:03:44 +02:00
Jeroen Bakker
b9d02b9ced Fix T97895: Eevee support for Geometry Nodes Color Attributes.
Geometry nodes can generate color attributes that aren't on point or corner domain.
When not found in these domains it will be processed as a common attribute.
2022-05-11 14:01:47 +02:00
Pablo Vazquez
eef98e66cf Mesh: Add Auto Smooth option to Shade Smooth operator
Add a property to the **Shade Smooth** operator to quickly enable the Mesh `use_auto_smooth` option.

The `Angle` property is exposed in the **Adjust Last Operation** panel to make it easy to tweak on multiple objects without having to go to the Properties editor.

The operator is exposed in the `Object` menu and `Object Context Menu`.

=== Demo ===

{F13066173, size=full}

Regarding the implementation, there are multiple ways to go about this (like making a whole new operator altogether), but I think a property is the cleanest/simplest.

I imagine there are simpler ways to achieve this without duplicating the `use_auto_smooth` property in the operator itself (getting it from the Mesh props?), but I couldn't find other operators doing something similar.

Reviewed By: #modeling, mont29

Differential Revision: https://developer.blender.org/D14894
2022-05-11 13:21:59 +02:00
Julian Eisel
6bd270f3af Fix "Open Clip" operator in Clip Editor broken
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 7849b56c3c.
2022-05-11 13:18:45 +02:00
Campbell Barton
8c233cfd78 Merge branch 'blender-v3.2-release' 2022-05-11 20:58:59 +10:00
Campbell Barton
5045968f24 Revert "Gizmo: optimize intersection tests, fix selection bias"
Manually revert commit [0] as it caused problems macOS (reported T96435).

- Includes fixes from [1] & [2].
- T98037 TODO has been created to keep track of this feature.

Thanks to @jbakker & @sergey for investigating this issue as I wasn't
able to reproduce the bug.

[0]: 0cb5eae9d0
[1]: cb986446e2
[2]: cc8fe1a1cb
2022-05-11 20:55:10 +10:00
Jeroen Bakker
61202f6f74 Merge branch 'blender-v3.2-release' 2022-05-11 12:48:23 +02:00
Jeroen Bakker
49173399f3 Fix T97173: Color Attributes shading turns black after switching mode.
Sculpt colors tagged the custom data as already created (cd_used), but
should have been tagged as being requested (cd_needed).
2022-05-11 12:44:04 +02:00
Hans Goudey
b765ea52af Cleanup: Use single quotes for Python enum string 2022-05-11 12:12:11 +02:00
Hans Goudey
2f799f893e Fix: Hide empty panel in curves sculpt mode tool settings
This panel is empty after rB5b24291be1e0
2022-05-11 12:10:40 +02:00
Hans Goudey
74a5fb734a Fix: Spline parameter node broken for Catmull Rom curves
Subtracting one from the evaluated index could make the index -1.
That was only necessary for Bezier curves due to the specifics of
the "bezier_evaluated_offsets".
2022-05-11 11:33:52 +02:00
Bastien Montagne
30534deced Outliner: Remove the 'Remap data-block usages' operation.
This feature is very advanced, and the way it was exposed in the
Outliner was very confusing at best.

It remains available through the Python API (`ID.user_remap`) e.g.
2022-05-11 11:25:02 +02:00
Bastien Montagne
2d9a6e4f68 Outliner: Remove 'rename library' feature.
This was historically the only way to change/fix paths of library files
in Blender. However, only changing the path then required a manual
reload of the library, which could be skipped by user, or a save/reload
of the working .blend file, which could lead to corruption of advanced
library usages like overrides.

Prefferred, modern way to change path of a library is to use the
Relocate operation instead. Direct path modification remains possible
through RNA (python console or the Data API view in the Outliner.
2022-05-11 11:25:02 +02:00
Sergey Sharybin
be9800e8da Update Ceres to latest upstream version 2.1.0
This release deprecated the Parameterization API and the new Manifolds
API is to be used instead. This is what was done in the Libmv as part
of this change.

Additionally, remove the bundling scripts. Nowadays those are only
leading to a duplicated work to maintain.

No measurable changes on user side is expected.
2022-05-11 09:33:45 +02:00
Campbell Barton
b30cb05c14 Cleanup: spelling in comments/strings
D14918 from @linux_dr with some other changes included.
2022-05-11 17:02:06 +10:00
Jun Mizutani
195986a719 Fix: Curves interpolate point count option missing from panels
Added in 8852191b77

Differential Revision: https://developer.blender.org/D14919
2022-05-11 08:56:26 +02:00
Campbell Barton
8650c2b614 Merge branch 'blender-v3.2-release' 2022-05-11 16:34:39 +10:00
Campbell Barton
82a70ffe40 Merge branch 'blender-v3.2-release' 2022-05-11 16:34:37 +10:00
Campbell Barton
c0546ff953 Merge branch 'blender-v3.2-release' 2022-05-11 16:34:33 +10:00
Campbell Barton
0c5a7ca117 Merge branch 'blender-v3.2-release' 2022-05-11 16:34:31 +10:00
Campbell Barton
ec53e9fa69 Merge branch 'blender-v3.2-release' 2022-05-11 16:34:28 +10:00
Campbell Barton
ae683a22c6 Merge branch 'blender-v3.2-release' 2022-05-11 16:34:25 +10:00
Campbell Barton
87d74d03bf Merge branch 'blender-v3.2-release' 2022-05-11 16:34:22 +10:00
Campbell Barton
8e476c414c Merge branch 'blender-v3.2-release' 2022-05-11 16:34:17 +10:00
Campbell Barton
690ecaae20 Fix T97153: Knife project crashes
Knife projection BVH-tree lookup could use invalid indices since the
mesh being cut is also used for BVH intersection tests.

Solve by storing triangle indices when knife project is used so a
triangle index can always be used to look up original coordinates of a
triangle.
2022-05-11 16:28:37 +10:00
Campbell Barton
067f0d40ae Fix knife tool use-after free on completion
Regression in [0] accessed knife data after it had been freed.

[0]: f87029f7b1
2022-05-11 16:28:37 +10:00
Campbell Barton
a652568570 Cleanup: use 'num' / 'size' suffix instead of 'sz'
GPU code used `sz` as an abbreviation for size, as well as a few other
places. Use size where this represents a size in bytes, see: T85728.
2022-05-11 13:40:09 +10:00
Campbell Barton
2fa2612b06 Cleanup: use '_num' / '_count' suffix instead of '_ct'
Use num & count (for counters), in drawing code, see: T85728.
2022-05-11 13:38:00 +10:00
Campbell Barton
42e275a7d4 Cleanup: use '_num' suffix, mostly for curves & spline code
Replace tot/amount & size with num, in keeping with T85728.
2022-05-11 13:38:00 +10:00
Campbell Barton
8f1a11c35a WM: clear wmEvent.flag for file-select events
Harmless but could cause file-select events to have WM_EVENT_IS_REPEAT
set which logged a warning as this is only intended for keyboard events.
2022-05-11 11:02:01 +10:00
Campbell Barton
17ab0342ac Cleanup: spelling in comments
Revert change from [0] that assumed UNORM was a mis-spelling of UNIFORM.

[0]: 2c75857f9f
2022-05-11 11:02:01 +10:00
Campbell Barton
0091c97b32 Cleanup: use '_num' suffix instead of '_size' for CurveGeometry
Follow conventions from T85728.
2022-05-11 11:02:01 +10:00
Campbell Barton
f9e0b94c2f Cleanup: format 2022-05-11 11:02:01 +10:00
Campbell Barton
baf8ec2e54 Cleanup: use doxy sections for node_edit.cc 2022-05-11 11:02:01 +10:00
Germano Cavalcante
046b45749c Fix cursor snap not acting on selected UVs
Regression in rBd2271cf939.
2022-05-10 21:22:16 -03:00
Ray Molenkamp
1bb7fda600 CMake: Fix noisy PUGIXML warning.
When doing a lite build, a warning is displayed
that due to PUGIXML being off WITH_CYCLES_OSL
is being disabled as well.

If WITH_CYCLES is off this is just useless
noise.

this diff changes the warning to only emit when
WITH_CYCLES is on.
2022-05-10 16:38:20 -06:00
Clément Foucault
b47c5505aa Fix T96892 Overlay: Hiding all of a mesh in edit mode causes visual glitch
This is caused by the geometry shader used by the edit mode line drawing.
If the drawcall uses indexed drawing and if the index buffer only contains
restart indices, it seems the result is 1 glitchy invocation of the
geometry shader.

Workaround by tagging these special case index buffers and bypassing
their drawcall.
2022-05-10 23:36:16 +02:00
Brecht Van Lommel
74228e2cd2 Fix T97945: Cycles baking max distance is wrong
It was effectively sqrt(max_distance) before this fix.

Thanks to Omar Emara for identifying the solution.
2022-05-10 20:55:03 +02:00
Brecht Van Lommel
81b797af66 Fix T97908: Cycles missing motion from on pointcloud generated by geometry nodes
Assume geometry is always potentially animated, since we can't use our heuristic
to detect if the object is potentially animated by looking at modifiers on the
object.

The main original reason for this check was to avoid evaluating subdivision
surfaces for many static objects, which is not happening here anyway.
2022-05-10 20:45:30 +02:00
Dalai Felinto
28240f78ce UI: Geometry Nodes Icon
Geometry Nodes (new) icon. So far we were using the generic node-tree
icon for geometry nodes, not anymore.

The new icon is composed of 4 spheres that is a reference to the
original pebbles demo. Scattering points was also the turning point for
the project (which originally was focusing on dynamic effects), and to
this day is one of the first steps for everything procedural such as
hair.

Note that the modifier icon is still showing as white in the outliner.
The alternative is to be blue everywhere.

Patch review and feedback by Hans Goudey.

Icon creation in collaboration with Pablo Vazquez.
2022-05-10 19:33:49 +02:00
Mikhail Matrosov
dcce4a59a0 Fix T97966: Cycles shadow terminator offset wrong for scaled object instances
Differential Revision: https://developer.blender.org/D14893
2022-05-10 18:53:14 +02:00
Olivier Maury
dc55e095e6 Fix T97056: Cycles MNEE not working with glass and pure refraction BSDFs
Differential Revision: https://developer.blender.org/D14901
2022-05-10 18:51:02 +02:00
Brecht Van Lommel
c171c99fa1 Fix part of T97895: Cycles not rendering edge domain attributes
These aren't really ideal for rendering, but better to show something. Edge
values are averaged at vertices.
2022-05-10 18:29:00 +02:00
Hans Goudey
8852191b77 Curves: Interpolate point count in add brush
This commit adds an option to interpolate the number of control points
in new curves based on the count in neighboring existing curves. The
idea is to provide a more automatic default than manually controlling
the number of points in a curve, so users don't have to think about
the resolution quite as much.

Internally, some utilities for creating new curves are extracted to a
new header file. These can be used for the various nodes and operators
that create new curves.

The top-bar UI will be adjusted in a separate patch, probably moving
all of the settings that affect the size and shape of the new curves
into a popover.

Differential Revision: https://developer.blender.org/D14877
2022-05-10 18:28:02 +02:00