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.
|
|
Cycles defines some basic integer types since it cannot use the standard headers when
compiling with NVRTC. NanoVDB however only does this when the "__CUDACC_RTC__" define
is set and otherwise includes the standard "stdint.h" header which clashes with those typedefs.
So for compatibility do the same thing in the Cycles kernel headers. See also T81454.
|
|
Request from the studio.
|
|
Rename `col` to `row` when it's actually a row (and not a column).
No functional changes.
|
|
Removing interior vertices can remove some complexity from the final
exports. Also improved the topology slightly in some cases.
|
|
|
|
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..
|
|
The issue was in `buildinfo.c`:
char build_c[xx]flags[] = BUILD_C[XX]FLAGS;
Non-escaped double-quotes were terminating the string early, and
causing the compile error. So use single-quotes.
|
|
It's causing build errors on compilers that I don't have. Turn it off
while I fix them.
Added in {rB1daa3c3f0a1cfd74bef527e0207f38154e591d46}.
|
|
|
|
This reverts commit ad35fa1993a49f663f782af1c9c41640e94b7eb8, it had
unintended side-effects (T82312).
|
|
This change removes the user-specific information from
macros like `__FILE__` and keeps it relative to top level
source or build (for generated files) directory.
It makes traces concise.
Added option `WITH_COMPILER_SHORT_FILE_MACRO` enabled by default.
Reviewed By: campbellbarton
Differential Revision: https://developer.blender.org/D9386
|
|
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.
|
|
|
|
|
|
Tests files are based on test from D8393
Test files should be in `lib\tests\sequence_editing`
These are files, I will add few more tests including animation test.
{F9155273}
Using generic tool to compare rendered vs reference image as other render engines.
Reviewed By: sergey
Differential Revision: https://developer.blender.org/D9394
|
|
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.
|
|
While Cycles already supports using both CPU and GPU at the same time, there
currently is a large problem with it: Since the CPU grabs one tile per thread,
at the end of the render the GPU runs out of new work but the CPU still needs
quite some time to finish its current times.
Having smaller tiles helps somewhat, but especially OpenCL rendering tends to
lose performance with smaller tiles.
Therefore, this commit adds support for tile stealing: When a GPU device runs
out of new tiles, it can signal the CPU to release one of its tiles.
This way, at the end of the render, the GPU quickly finishes the remaining
tiles instead of having to wait for the CPU.
Thanks to AMD for sponsoring this work!
Differential Revision: https://developer.blender.org/D9324
|
|
|
|
enabled.
|
|
local queue to consume during WM_* mouse events.
|
|
when compared to current time.
|
|
|
|
Added missing function documentation.
|