Commit Graph

124391 Commits

Author SHA1 Message Date
guishe
cd09c91f69 Cleanup: deduplicate code to create menu for flip region
Ref !108302.
2023-05-26 13:31:56 +10:00
Campbell Barton
e7f88c1050 Cleanup: format 2023-05-26 13:30:14 +10:00
Campbell Barton
393d4a6e14 Cleanup: duplicate words in comments
Also use doxygen-comments in files where this is already the convention.
2023-05-26 12:40:06 +10:00
Campbell Barton
6876372974 License headers: add missing license identifier 2023-05-26 12:24:55 +10:00
Campbell Barton
ac74f3b396 Cleanup: refactor cursor jump type check into a function 2023-05-26 11:45:11 +10:00
YimingWu
99df159ce0 Fix #108098: GPencil: Prevent overwriting mvalo
There are other events besides `MOUSEMOVE` that's passed in during modal
handling, causes the `tgpi->mvalo` variable to be overwritten without
moving the stroke in the first place, this results in inaccurate offsets
during mouse/pen grabbing in primitive gizmo `IN_MOVE` mode. Now fixed.

Also fixed the operator hint to include the grab functionality.

Pull Request: https://projects.blender.org/blender/blender/pulls/108172
2023-05-26 03:30:16 +02:00
Jörg Müller
e98c26dece Audaspace: porting changes from upstream. 2023-05-25 23:00:22 +02:00
Chao Li
72309be398 Mesh: Avoid position copying in corrective smooth modifier
This is a place where copying mesh position is not needed. See #103789.

Pull Request: https://projects.blender.org/blender/blender/pulls/108291
2023-05-25 22:12:11 +02:00
Xavier Hallade
c18cafe748 Merge branch 'blender-v3.6-release' 2023-05-25 20:39:27 +02:00
Xavier Hallade
2533576802 EEVEE: Fix non-deterministic codegen preventing shader cache to work
used_libraries was iterated on to generate shader code depending on
pointers order, which was non-deterministic. It prevented shader caching
by graphics drivers to survive across reboots, as reported in
https://techgage.com/article/blender-3-5-performance-deep-dive-cycles-eevee-viewport/

Co-authored-by: Ray Molenkamp <github@lazydodo.com>

Pull Request: https://projects.blender.org/blender/blender/pulls/108289
2023-05-25 20:37:42 +02:00
Jacques Lucke
dc33a8e974 Geometry Nodes: expose simulation bake path in UI
Longer term we want to have a more centralized place where the bake
paths can be managed, but this is what we can still add in bcon3.

Pull Request: https://projects.blender.org/blender/blender/pulls/108220
2023-05-25 18:56:00 +02:00
Germano Cavalcante
c89461a2bc Fix recent change in transform code
fc854fc252 caused the precision modification to be removed after
navigation was complete.

The ideal is when starting navigation.

This is because the precision button can be released during navigation,
thus confirming the precision change.
2023-05-25 13:33:45 -03:00
Miguel Pozo
55b20cef43 Workbench Next: Add missing texture usage flags 2023-05-25 18:06:45 +02:00
Miguel Pozo
0897be8bb7 EEVEE Next: Ensure correct material settings are used
Add Material::blend_flags to Shaderkey,
to ensure Materials with different settings but the same shader
don't end up using the same pass.

Pull Request: https://projects.blender.org/blender/blender/pulls/108283
2023-05-25 18:01:54 +02:00
Germano Cavalcante
fc854fc252 Transform: remove precision modification upon starting navigation
In order to execute the navigation of type "VIEW3D_OT_move," the user
is required to press both the `Shift` and `MMB` keys.

However, pressing `Shift` also activates the precision modifier for the
transform.

Consequently, while the `MMB` is unpressed, the transform operation
unintentionally remains in precision mode, altering the mouse position.

To address this issue, the solution was to eliminate the precision
changes immediately after the navigation is initiated.

Unfortunately, we have no way of knowing whether the user actually
unintentionally enabled precision, so this solution serves as a
workaround. Ideally, keymap conflicts should be avoided.
2023-05-25 11:58:19 -03:00
Sergey Sharybin
393da5df78 Cleanup: Remove redundant object fetch in MNEE
The intersection already has proper object assigned.

Pull Request: https://projects.blender.org/blender/blender/pulls/108275
2023-05-25 16:41:35 +02:00
Jacques Lucke
2fce65ecfb RNA: improve compatibility of generated code with C++
The goal here is to get us closer to using C++ in RNA code.

Pull Request: https://projects.blender.org/blender/blender/pulls/108277
2023-05-25 16:30:16 +02:00
Miguel Pozo
a31875dab6 Cleanup: Fix warnings in Overlay Next 2023-05-25 15:52:13 +02:00
Hans Goudey
986ff5a3a4 Cleanup: Remove IndexRange::as_span() static array and cache
After 2cfcb8b0b8 this was only used in one place that
was easily replaced. In practice this avoids creating a statically
allocated array after the split edges code is called.

Pull Request: https://projects.blender.org/blender/blender/pulls/108249
2023-05-25 15:42:54 +02:00
Brad Smith
a50768616f Build: fix OpenBSD error in guardedalloc
Pull Request: https://projects.blender.org/blender/blender/pulls/108252
2023-05-25 15:21:48 +02:00
Hans Goudey
de2c8416a0 Fix #108258: Sculpt mode crash after remesh
4d841e1b35 incorrectly removed the clearing
of mesh topology maps when the object is reevaluated.
2023-05-25 08:53:18 -04:00
Campbell Barton
f97660d4ad Cleanup: spelling in comments 2023-05-25 22:50:30 +10:00
Weizhen Huang
bbe5b1e8cf Cleanup: remove unnecessary eval_fac == 0 checks for point lights 2023-05-25 14:23:48 +02:00
Hans Goudey
1c88721442 Fix: Crash entering vertex paint mode
SculptSession now contains non-trivial types that must be initialized.
2023-05-25 08:02:49 -04:00
Sergey Sharybin
4d2ed350bc Fix #108240: Cycles fails on macOS and AMD GPU
The recent light linking commit changed some includes order,
making compilation to fail on platforms where certain features
are disabled.

Pull Request: https://projects.blender.org/blender/blender/pulls/108264
2023-05-25 13:54:58 +02:00
Brecht Van Lommel
c6c127bfd3 Fix non-geometry object types being possible to set as light receivers 2023-05-25 13:49:38 +02:00
Brecht Van Lommel
e3c5306d4e Fix light linked emissive meshes rendering black for camera rays 2023-05-25 13:49:38 +02:00
Brecht Van Lommel
1d7832a6a4 Fix Make Links showing light link operators for engines other than Cycles 2023-05-25 13:49:38 +02:00
Brecht Van Lommel
673d066e35 Cleanup: change #define bitflags to enum 2023-05-25 13:49:38 +02:00
Sergey Sharybin
1c3e0f3585 Fix #108250: Cycles: Light Linking disabled after modifying object
The runtime backup/restore logic was slightly wrong: it is possible that
an object requires light linking runtime but does not need light linking
itself. This is typical configuration for the receivers/blockers.

Modified the logic so that the evaluated object light linking is allocated
if there was a runtime field needed.

This required to make it so light linking evaluation takes care of feeing
the light_linking if it is empty. The downside of this approach is a
redundant allocation from the object backup when removing light linking
collection from emitter. But this is not a typical evaluation flow, and
the more typical flows are cheap with this approach.

Pull Request: https://projects.blender.org/blender/blender/pulls/108261
2023-05-25 12:59:45 +02:00
Campbell Barton
01595ee807 Merge branch 'blender-v3.6-release' 2023-05-25 20:34:17 +10:00
Campbell Barton
1bd8745fbb Merge branch 'blender-v3.6-release' 2023-05-25 20:34:14 +10:00
Campbell Barton
21af3f197c Merge branch 'blender-v3.6-release' 2023-05-25 20:34:11 +10:00
Campbell Barton
2708317b25 Merge branch 'blender-v3.6-release' 2023-05-25 20:34:06 +10:00
Campbell Barton
f3677dce41 Cleanup: minor changes to the keymap
- Keyword only argument.
- Negate booleans with `not`.
2023-05-25 20:29:02 +10:00
Campbell Barton
09c2b327d7 Fix #107283: Drag Box Selection While (e.g. Transform) Tool is on
Regression in [0]. The only configuration that has changed is RMB select
with "Right Mouse Select" set to "Select & Tweak" (the default)
which now behaves as if [0] was reverted without reintroducing #99963.

[0]: 64dbfe714b
2023-05-25 20:29:02 +10:00
Weizhen Huang
4758299d86 Cleanup: rename functions relating to MNEE light sample update
The original names were `...update_position()`, but no update in
position is performed in these functions, rather, the entries in
`LightSample` are updated. Also make clear that the functions are used
by MNEE.
2023-05-25 12:26:58 +02:00
Sergey Sharybin
5e2f73df30 Fix crash doing viewport animation render
A user-counter mistake caused by shallow-copy of the render result
during its duplication.

Pull Request: https://projects.blender.org/blender/blender/pulls/108265
2023-05-25 12:16:29 +02:00
Jeroen Bakker
f5d159b2a4 Vulkan: Extract Vendor/Driver/Device Information
Extract vendor, driver and device information from the physical device
properties.

Note that driver version is implementation dependent and might fail as
it is unclear which driver is being used. An open source driver could
store the driver version in a different way than a closed source driver.
But as it is not clear which driver version is being used it might
extract the incorrect version.

To solve this issue we check if the extracted version makes sense
depending on the version schema of the driver and if they don't match we
use another approach.

Pull Request: https://projects.blender.org/blender/blender/pulls/107872
2023-05-25 11:55:47 +02:00
Jacques Lucke
1621d790ff Fix #108120: graphic artefacts node editor during cycles render
The issue was that `is_rendering` was used as a proxy to check
whether the interface is locked. Locking the node editor during rendering
is not necessary, but it currently is necessary while baking, because
baking changes original data from a different thread.

The solution is to use the already existing mechanism to tell Blender
which regions should be locked when the interface is locked.
2023-05-25 11:24:45 +02:00
Sergey Sharybin
f669f6cd8c Fix #108243: Crash when save before close with modified image
A mistake in the recent API refactor for the buffer sharing.

Pull Request: https://projects.blender.org/blender/blender/pulls/108259
2023-05-25 09:59:23 +02:00
Clément Foucault
0e7b81dd32 Metal: Fix MSL compilation warning 2023-05-25 09:24:53 +02:00
Jason Fielder
03e4325fa9 Fix: High resolution textures in Metal from Integer overflow
Resolve an issue where a high resolution texutre 16k x 8k
did not update in metal due to integer overflow of size parameter.

This patch contains several changes to address size correctness
across multiple use cases within the Metal backend.

Authored by Apple: Michael Parkin-White

Pull Request: https://projects.blender.org/blender/blender/pulls/108238
2023-05-25 08:50:14 +02:00
Campbell Barton
21b2393eb2 Fix off by 1 error in BLI_uniquename* clipping an extra character
When the new name was clipped to make room for the number,
the string was clipped by the number size (including the null byte).

Store the length in `numlen` instead of the size (including null byte).
2023-05-25 15:47:02 +10:00
Campbell Barton
9182ebdfde Cleanup: replace strcat with BLI_strncat 2023-05-25 12:30:37 +10:00
Campbell Barton
6eebc06c36 Clenup: remove strcat use 2023-05-25 11:47:17 +10:00
Campbell Barton
23862ec60e Cleanup: quiet RNA warnings from a trailing '.' 2023-05-25 10:34:02 +10:00
Hans Goudey
4a7cfa18e2 Cleanup: Rename loose edge and loose vert variables in draw code
"ledge" and "lvert" sound very word, and "ledge" is also a word. It's
clearer to use the full word and abbeviate the obvious part, "index."
2023-05-24 20:28:18 -04:00
Hans Goudey
5063f7a725 Cleanup: Simplify IndexMask usage in two geometry nodes
Use the weird but at least consistent "from_groups" method in the sample
curves node, and avoid one logarithmic lookups when merging points.
2023-05-24 20:05:42 -04:00
Hans Goudey
1b19f62917 Curves: Improve IndexMask usage in curves sculpt brushes
Unify the handling of masks for affected curves in a few of the sculpt
brushes. In the grow shrink brush, replace a more custom "influences
per thread" solution. In the puff brush, use a full array of weights,
and build the mask earlier. In the snake hook brush, use the selection
properly (I observed a 2-3x improvement with a small selection).
2023-05-24 20:05:42 -04:00