Age | Commit message (Collapse) | Author |
|
This reverts commit 0277579b2850f0ba097741ca22eb8ae9ccd9bcea.
This commit caused build errors on Linux.
|
|
This reverts commit 20c4aa13de7ba403e113df8ec69c632b6815eac8.
Wrong buggy commit breaking tests, and not actually adding anything to
code quality.
|
|
This patch changes behavior of strip transform and crop feature.
Purpose of this change is to allow display arbitrary portion of input
image, simplify user interface and workflow.
Offset and Crop values in old files are converted in versioning.
Offset animation is also converted. Crop animation and animation of
crop or offset enable properties is not taken into account
Changes in behavior and interface:
- If image is added to timeline it is scaled to fit inside preview area
while maintaining aspect ratio. Image is centered. This is considered
as a baseline for further transformation.
- Scale and rotation was added, so it is possible to transform image at
it's original resolution.
- Crop will not affect image transformation (does not move image).
- Values of Crop and Transform Position are in pixels, these values are
corrected if preview is fraction of project resolution.
- Transform and Mirror panel has been removed and new Transform panel
and Crop panel is moved to Adjust panel. Mirror is now part of new
Transform panel.
Technical changes:
- Preprocessing stage must work on duplicated image, because original is
cached. Previously Crop and Offset could run at once and required only
one duplication of image. This is not the case with new algorithms, so
duplication on demand is implemented. Transformation can read original
image and will output new image that is safe to modify. It should be
possible to add crop step to transform algorithm, so that Crop won't
require previous duplication though.
- Use Crop and Use Translation checkboxes were removed. Individual
values are compared to default values to check if image needs to be
processed. In case of transform this will be done also if resolution of
source.
Reviewed By: sergey
Differential Revision: https://developer.blender.org/D8393
|
|
The behavior of the incremental snap did not take into account the
relative dimensions of the window, which resulted in a different behavior
if the area height was greater than the width.
|
|
There should not be much user visible here (other than T73668 being addressed).
I added the writing code already for the initial implementation of workspaces,
but we decided to keep it disabled until the top-bar design is more clear. It
was never planned to keep this disabled for so long.
Fixes T73668.
|
|
Request from the studio.
|
|
|
|
This fixes critical bug with liboverride when soe add-ons add some
RNA ID Pointer properties.
ID pointers should **never** have ownership of their ID when defined
from python.
(As a reminder, RNA properties owning their ID pointers are extremely
rare even from C code, only embedded IDs (root node trees, master
collections) and the shape keys snowflakes are concerned.)
|
|
Add a comment to the declaration of the `BKE_object_where_is_calc...()`
functions to explain where the result of the calculation is stored.
No functional changes.
|
|
Consistently return `false` from `ED_object_parent_set()` when parenting
is not possible. Before, when parent and child were the same object, the
function would return `true` even though the parent-child relation was
not made.
Just returning `false` in the `parent == child` case would break the
parenting operator, as `false` stops its loop over all selected objects.
This tight coupling caused T82312. The loop now has its own check for
this, so that it properly continues, and the implementation of
`ED_object_parent_set()` is decoupled from its surrounding code.
No functional changes.
|
|
|
|
|
|
Adding another pass of ensuring valid up-to-date pose data in RNA
function itself...
|
|
This can happen after some changes in lib file and resync in user file
e.g..
|
|
This reverts commit ad35fa1993a49f663f782af1c9c41640e94b7eb8, it had
unintended side-effects (T82312).
|
|
This was added when Python was initially bundled so any problems
finding Python could be investigated.
Move this to use logging so we can show this information when needed.
|
|
|
|
|
|
Reviewed By: sergey
Differential Revision: https://developer.blender.org/D9349
|
|
This reverts commit 6527a14cd2ceaaf529beae522ca594bb250b56c9.
Some 3rd party scripts made use of this so scripts can work with
2.90 to 2.92, although eventually this can still be removed.
|
|
|
|
Without this, sys.executable may be set to Blender's
executable instead.
|
|
|
|
For the fast solver, there was an optimization carried over
from the non-collection case for empty meshes which did not
work in the chained boolean code for collection operands.
Removed that optimization in the collection case.
|
|
For the fast solver, there was an optimization carried over
from the non-collection case for empty meshes which did not
work in the chained boolean code for collection operands.
Removed that optimization in the collection case.
|
|
The code that decided to use a faster double version of plane
side testing forgot to take an absolute value, so half the time
the exact code was being used when it was unnecessary.
|
|
The code that decided to use a faster double version of plane
side testing forgot to take an absolute value, so half the time
the exact code was being used when it was unnecessary.
|
|
Also, clarify comments.
|
|
|
|
If the next frame of the layer was NULL and it was not the active layer crashed.
|
|
|
|
|
|
Some tranform modes are not expected to be used in the `SPACE_ACTION`.
|
|
This introduces a new operator to edit the detail size of constant
detail mode in dyntopo. The way this operator works and the
functionality it provides is similar to the "Voxel size edit" operator
for the voxel remesher.
It also includes a sample mode. When pressing Ctrl, the detail size
will be sampled from the surface under the cursor, updating the
preview in real time. This allows quick resolution changes without
using the operator multiple times.
The operator is set to Shift + D, replacing the old way to change
the constant detail size of dyntopo. Shift + R will remain available to
be enabled when the voxel remesher works with dyntopo. Deciding
if both detail sizes can be unified needs a separate discussion as the
new dyntopo can work with detail sizes in parts of the mesh that can
easily crash the remesher.
The structure of these operators is similar, but the data they control,
ranges, drawing and setup functions are completely different, making it
hard to merge them into one.
Reviewed By: sergey
Differential Revision: https://developer.blender.org/D9355
|
|
This adds an option to orientate the trimming shape using the surface
normal instead of the view when lasso trim is used.
Reviewed By: dbystedt, sergey
Differential Revision: https://developer.blender.org/D9231
|
|
This line was probable left there after a bad merge.
Reviewed By: campbellbarton
Differential Revision: https://developer.blender.org/D9367
|
|
|
|
I could not easily move `direct_link_screen` yet, because it
has a return value. That has to be solved differently at some point.
|
|
Add a parameter to rotate the texture for Dots and Squares
Differential Revision: https://developer.blender.org/D9369
|
|
|
|
Follow-up to rBc0beeeb5de0cbc, fixing overflow accesses on arrays
introduced by rB042143440d76.
It's never 'OK' to access invalid memory...
|
|
There should be no functional changes.
Eventually, it would be good to handle the different space types
using callbacks.
Ref T76372.
|
|
Caused Victor.blend from the cloud to crash with ASan. Four floats are
fetched from the stack, but the buffer was only three wide.
Caused by 042143440d. Issue was probably harmless since the fourth
element wasn't actually touched.
|
|
Ref T76372.
|
|
|
|
|
|
Ensure parenting an object to itself is seen as error, by returning
`false`.
This error was introduced as part of a supposed-to-be-non-functional
cleanup rBb8d4a2aff8069dd7d6fb91ad0d9427eed489b68f.
|
|
Non-memfile undo steps never properly initialized the flag allowing to
re-use old Main data during undo/redo. This lead to doing a complete
full re-reading of data when undoing/redoing mode switches e.g.
Note that current undo system is supposed to support any kind of mode
switch across those steps, however this needs to be properly deeply
tested, so only comitting this to master. It would be way too risky for
2.91 release.
|
|
|
|
|