http://www.miikahweb.com/feed.php MiikaHweb - Blender Commits By Angavrilov http://www.miikahweb.com/ MiikaHweb - Blender Commits By Angavrilov fi Fri, 21 Jan 22 08:30:21 +0000 MiikaHweb RSS contact at miikahweb.com <![CDATA[[7e11776] temp-angavrilov: Allow overrides for cloth, collision and force field properties...]]> http://www.miikahweb.com/en/blender/git-logs/commit/7e11776d6d5b498a96e87374a78c613f139ec443 7e11776
Branches : temp-angavrilov
Author : Alexander Gavrilov (angavrilov)
----------------------------------------
Allow overrides for cloth, collision and force field properties.

Allow overriding simple properties of cloth simulations, colliders
and force fields. Vertex group and shape key selectors in cloth are
still not overridable since they are tied to mesh data.

Force fields have a number of physical fields shared between multiple
RNA fields. Until they are decoupled, they will produce redundant
overrides, and cannot have different hard range limits.

----------------------------------------
6 Paths Changed]]>
Tue, 28 Dec 2021 15:25:28 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/7e11776d6d5b498a96e87374a78c613f139ec443Alexander Gavrilov
<![CDATA[[4a08623] temp-angavrilov: RNA: add a property flag to display exact integer values without...]]> http://www.miikahweb.com/en/blender/git-logs/commit/4a08623254d4e3b751bfa42693ad2054bee44f97 4a08623
Branches : temp-angavrilov
Author : Alexander Gavrilov (angavrilov)
----------------------------------------
RNA: add a property flag to display exact integer values without fraction.

Add a flag to display exact integer values of a floating point field
without a fraction, for use in case when the value can technically be
fractional, but most commonly is supposed to be integer.

The fraction is discarded in the normal display mode and when copying
the value to clipboard, but not when editing to remind the user that
the field allows fractions.

Also, fix a precision issue when stepping down from 1 to 0 via the
left decrement button and step 100 results in a small nonzero value.

----------------------------------------
6 Paths Changed]]>
Tue, 28 Dec 2021 11:57:46 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/4a08623254d4e3b751bfa42693ad2054bee44f97Alexander Gavrilov
<![CDATA[[02362bb] temp-angavrilov: Bone Overlay: support bone wireframe opacity depth fade.]]> http://www.miikahweb.com/en/blender/git-logs/commit/02362bb864420db8b754993a100f07da226fe498 02362bb
Branches : temp-angavrilov
Author : Alexander Gavrilov (angavrilov)
----------------------------------------
Bone Overlay: support bone wireframe opacity depth fade.

Add an option that allows fade based on the depth from the camera,
using exponential decay with the slider specifying the 'half-life'
depth. This is intended as a way to automatically hide bones
in distant parts of the mesh while focused on a specific part.

----------------------------------------
16 Paths Changed]]>
Tue, 28 Dec 2021 11:57:46 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/02362bb864420db8b754993a100f07da226fe498Alexander Gavrilov
<![CDATA[[16bf46b] temp-angavrilov: Bone Overlay: support changing bone wireframe opacity.]]> http://www.miikahweb.com/en/blender/git-logs/commit/16bf46b6b5a50514f988f6b93a7e455f9d84a21d 16bf46b
Branches : temp-angavrilov
Author : Alexander Gavrilov (angavrilov)
----------------------------------------
Bone Overlay: support changing bone wireframe opacity.

When weight painting the bone overlay is extremely intrusive,
effectively requiring either extensive use of hiding individual
bones, or disabling the whole bone overlay between selections.

This addresses the issue by adding a bone opacity slider that
is used for the 'wireframe' armature drawing mode. It directly
controls the uniform opacity as a straightforward option.

Differential Revision: https://developer.blender.org/D11804

----------------------------------------
11 Paths Changed]]>
Tue, 28 Dec 2021 11:57:46 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/16bf46b6b5a50514f988f6b93a7e455f9d84a21dAlexander Gavrilov
<![CDATA[[1bbf913] temp-angavrilov: Temporary Hack: provide B-Bone scale versioning for files with...]]> http://www.miikahweb.com/en/blender/git-logs/commit/1bbf913055319aba9ec375e60b94184336067c6b 1bbf913
Branches : temp-angavrilov
Author : Alexander Gavrilov (angavrilov)
----------------------------------------
Temporary Hack: provide B-Bone scale versioning for files with old patch.

Run the versioning code for the conversion of bbone scale to an xyz
vector if it has fields that correspond to the old version of the
patch before that change requiring versioning.

The actual Y (length) scale value from the old patch isn't versioned
and will be lost, requiring manual fixing.

----------------------------------------
1 Path Changed]]>
Tue, 28 Dec 2021 11:57:45 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/1bbf913055319aba9ec375e60b94184336067c6bAlexander Gavrilov
<![CDATA[[f5c8f1f] temp-angavrilov: Armature: apply Y scale to B-Bone segments.]]> http://www.miikahweb.com/en/blender/git-logs/commit/f5c8f1f4c9e7ed6cd800f70f1bb96241759ed392 f5c8f1f
Branches : temp-angavrilov
Author : Alexander Gavrilov (angavrilov)
----------------------------------------
Armature: apply Y scale to B-Bone segments.

This fixes a strange behavior where the segments were not actually
scaled in the Y direction to match their actual length, thus
producing gaps or overlap depending on the shape of the curve. For
transformation the change should be very small if enough segments
are used, but this will affect the results of the Copy Transforms
and Armature constraints, so a backwards compatibility option is
provided. Newly created bones default to the new behavior.

----------------------------------------
6 Paths Changed]]>
Tue, 28 Dec 2021 11:57:45 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/f5c8f1f4c9e7ed6cd800f70f1bb96241759ed392Alexander Gavrilov
<![CDATA[[62efb1f] temp-angavrilov: Constraints: refactor the D7437 patch adding Custom Space for...]]> http://www.miikahweb.com/en/blender/git-logs/commit/62efb1fa96ef0057543cb1e516ac114a1f67a0e2 62efb1f
Branches : temp-angavrilov
Author : Alexander Gavrilov (angavrilov)
----------------------------------------
Constraints: refactor the D7437 patch adding Custom Space for constraints.

As mentioned in the comments to that patch, I had an idea for
a different way to do some technical aspects, but it was too
complicated to force changes in the original patch. Thus I submit
this follow up patch.

First, instead of modifying all the get_constraint_targets and
flush_constraint_targets callbacks, introduce wrapper functions
for accessing constraint targets, convert all code to use them,
and handle the new reference there uniformly for all constraints.

This incidentally revealed a place in the Collada exporter that
didn't clean up after retrieving the targets.

Also, tag the special target with a flag so other code can
handle it appropriately where necessary. This for instance
allows dependency graph to know that the Use B-Bone Shape
option doesn't affect this specific target.

Finally, rename and simplify the function for initializing the
custom space, and make sure it is called everywhere necessary.

Differential Revision: https://developer.blender.org/D9732

----------------------------------------
17 Paths Changed]]>
Tue, 28 Dec 2021 11:57:45 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/62efb1fa96ef0057543cb1e516ac114a1f67a0e2Alexander Gavrilov
<![CDATA[[872fd7f] temp-angavrilov: Depsgraph: connect up drivers on various physics properties.]]> http://www.miikahweb.com/en/blender/git-logs/commit/872fd7fb51f9a5ec2a50a04512161629784de59b 872fd7f
Branches : temp-angavrilov
Author : Alexander Gavrilov (angavrilov)
----------------------------------------
Depsgraph: connect up drivers on various physics properties.

It seems drivers for physics properties weren't being linked to
evaluation nodes. This connects settings used by modifiers
to Geometry; particle settings and rigid body data to Transform
which seems to contain rigid body evaluation; and force fields
to object Transform, since fields can exist on empties.

Differential Revision: https://developer.blender.org/D10088

----------------------------------------
3 Paths Changed]]>
Tue, 28 Dec 2021 11:57:45 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/872fd7fb51f9a5ec2a50a04512161629784de59bAlexander Gavrilov
<![CDATA[[67b9d2d] temp-angavrilov: Force Fields: implement new true power and custom falloff options...]]> http://www.miikahweb.com/en/blender/git-logs/commit/67b9d2d9cb8abeaaaee6f3e675dd98965cc9e429 67b9d2d
Branches : temp-angavrilov
Author : Alexander Gavrilov (angavrilov)
----------------------------------------
Force Fields: implement new true power and custom falloff options.

The 'power' falloff option in Blender force fields does not actually
generate a true power falloff function, as pointed out in D2389.
However, that patch adds a special 'gravity' falloff option to Force
fields, without addressing the shortcoming in the common options.

The reason for not using the true curve in the options, as far as
one can tell, is that the power curve goes up to infinity as the
distance is reduced to 0, while the falloff options are designed
so that the maximum value of the curve is 1.

However, in reality forces with a power falloff don't actually go
to infinity, because real objects have a nonzero size, and the force
reaches its maximum at the surface of the object. This can be used
to integrate an option to use a true power falloff with the design
of falloff settings, if it requires a nonzero 'minimum' distance
to be set, and uses a curve that reaches 1 at that distance.

Since this is adding a new feature to the minimum distance value,
it is also a good opportunity to add a feature to the maximum
distance. Specifically, the new options can be used to apply
arbitrary brush-style falloff curves between min and max,
including a fully custom curve option. When used together with
power falloff, the two curves are multiplied together.

While the true power option allows creating more physically
correct forces, the custom curves aid artistic effects.

Differential Revision: https://developer.blender.org/D8075

----------------------------------------
9 Paths Changed]]>
Tue, 28 Dec 2021 11:57:45 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/67b9d2d9cb8abeaaaee6f3e675dd98965cc9e429Alexander Gavrilov
<![CDATA[[2757c3e] temp-angavrilov: Animation: support filtering for curves that have cycle issues...]]> http://www.miikahweb.com/en/blender/git-logs/commit/2757c3e78199fd7552d06497a415fcd12ddd9f6a 2757c3e
Branches : temp-angavrilov
Author : Alexander Gavrilov (angavrilov)
----------------------------------------
Animation: support filtering for curves that have cycle issues.

It is possible to have curves with cyclic extrapolation that
have a mismatch in their end keyframes, causing a jump.

Also, since the looping behavior is defined per curve rather than at
action level, it is possible for curve loop periods to get out of
sync with each other. This commit adds an option to compare curves
against the manual frame range specified in the action, and treat
any mismatches as errors for the purpose of F-Curve filtering.

When enabled, the check verifies that end values of cyclic curves
match, curves within a cyclic action have valid cyclic extrapolation,
and the action period evenly divides by the curve period (since
a curve looping at e.g. half of the action period length still
repeats in sync with the action).

Ref: D11803

Differential Revision: https://developer.blender.org/D13349

----------------------------------------
6 Paths Changed]]>
Tue, 28 Dec 2021 11:57:45 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/2757c3e78199fd7552d06497a415fcd12ddd9f6aAlexander Gavrilov
<![CDATA[[a7dca13] master: Fix loss of cloth disk cache on reload in library overrides.]]> http://www.miikahweb.com/en/blender/git-logs/commit/a7dca135dc78b8c9644543ed99ef126971d74703 a7dca13
Branches : master
Author : Alexander Gavrilov (angavrilov)
----------------------------------------
Fix loss of cloth disk cache on reload in library overrides.

If the override system creates an override record for the cache
name (no idea why though), it trashes the disk cache on file load.

The reason is that it tries to rename cache files in update handler
when assigning the name, and BLI_rename deletes the target file even
if both names are the same.

This is a safe fix that simply aborts the pointless rename attempt.

Differential Revision: https://developer.blender.org/D13679

----------------------------------------
1 Path Changed]]>
Tue, 28 Dec 2021 11:56:09 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/a7dca135dc78b8c9644543ed99ef126971d74703Alexander Gavrilov
<![CDATA[[7615019] : RNA: add a property flag to display exact integer values without...]]> http://www.miikahweb.com/en/blender/git-logs/commit/7615019f26ac171952806fedecd6820c9381a2d0 7615019
Author : Alexander Gavrilov (angavrilov)
----------------------------------------
RNA: add a property flag to display exact integer values without fraction.

Add a flag to display exact integer values of a floating point field
without a fraction, for use in case when the value can technically be
fractional, but most commonly is supposed to be integer.

The fraction is discarded in the normal display mode and when copying
the value to clipboard, but not when editing to remind the user that
the field allows fractions.

Also, fix a precision issue when stepping down from 1 to 0 via the
left decrement button and step 100 results in a small nonzero value.

----------------------------------------
6 Paths Changed]]>
Sun, 26 Dec 2021 15:11:04 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/7615019f26ac171952806fedecd6820c9381a2d0Alexander Gavrilov
<![CDATA[[70101e1] : Bone Overlay: support bone wireframe opacity depth fade.]]> http://www.miikahweb.com/en/blender/git-logs/commit/70101e1f285b7610a81963e8ba62d4bbf17a6139 70101e1
Author : Alexander Gavrilov (angavrilov)
----------------------------------------
Bone Overlay: support bone wireframe opacity depth fade.

Add an option that allows fade based on the depth from the camera,
using exponential decay with the slider specifying the 'half-life'
depth. This is intended as a way to automatically hide bones
in distant parts of the mesh while focused on a specific part.

----------------------------------------
16 Paths Changed]]>
Sun, 26 Dec 2021 15:11:04 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/70101e1f285b7610a81963e8ba62d4bbf17a6139Alexander Gavrilov
<![CDATA[[048b09f] : Bone Overlay: support changing bone wireframe opacity.]]> http://www.miikahweb.com/en/blender/git-logs/commit/048b09f5329ba97fb87415e15d6ef5b566cd4b1c 048b09f
Author : Alexander Gavrilov (angavrilov)
----------------------------------------
Bone Overlay: support changing bone wireframe opacity.

When weight painting the bone overlay is extremely intrusive,
effectively requiring either extensive use of hiding individual
bones, or disabling the whole bone overlay between selections.

This addresses the issue by adding a bone opacity slider that
is used for the 'wireframe' armature drawing mode. It directly
controls the uniform opacity as a straightforward option.

Differential Revision: https://developer.blender.org/D11804

----------------------------------------
11 Paths Changed]]>
Sun, 26 Dec 2021 15:11:01 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/048b09f5329ba97fb87415e15d6ef5b566cd4b1cAlexander Gavrilov
<![CDATA[[a660f75] : Temporary Hack: provide B-Bone scale versioning for files with...]]> http://www.miikahweb.com/en/blender/git-logs/commit/a660f7501292c0a77ff63a7e6784b9a0a67299ca a660f75
Author : Alexander Gavrilov (angavrilov)
----------------------------------------
Temporary Hack: provide B-Bone scale versioning for files with old patch.

Run the versioning code for the conversion of bbone scale to an xyz
vector if it has fields that correspond to the old version of the
patch before that change requiring versioning.

The actual Y (length) scale value from the old patch isn't versioned
and will be lost, requiring manual fixing.

----------------------------------------
1 Path Changed]]>
Sun, 26 Dec 2021 15:10:09 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/a660f7501292c0a77ff63a7e6784b9a0a67299caAlexander Gavrilov
<![CDATA[[e26774f] : Armature: apply Y scale to B-Bone segments.]]> http://www.miikahweb.com/en/blender/git-logs/commit/e26774fc9fba4cab23c9ab94a773d1957fa443bd e26774f
Author : Alexander Gavrilov (angavrilov)
----------------------------------------
Armature: apply Y scale to B-Bone segments.

This fixes a strange behavior where the segments were not actually
scaled in the Y direction to match their actual length, thus
producing gaps or overlap depending on the shape of the curve. For
transformation the change should be very small if enough segments
are used, but this will affect the results of the Copy Transforms
and Armature constraints, so a backwards compatibility option is
provided. Newly created bones default to the new behavior.

----------------------------------------
6 Paths Changed]]>
Sun, 26 Dec 2021 15:10:09 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/e26774fc9fba4cab23c9ab94a773d1957fa443bdAlexander Gavrilov
<![CDATA[[6217c07] : Constraints: refactor the D7437 patch adding Custom Space for...]]> http://www.miikahweb.com/en/blender/git-logs/commit/6217c07ed89bc509cbf6c93c7d72306e1e4194f1 6217c07
Author : Alexander Gavrilov (angavrilov)
----------------------------------------
Constraints: refactor the D7437 patch adding Custom Space for constraints.

As mentioned in the comments to that patch, I had an idea for
a different way to do some technical aspects, but it was too
complicated to force changes in the original patch. Thus I submit
this follow up patch.

First, instead of modifying all the get_constraint_targets and
flush_constraint_targets callbacks, introduce wrapper functions
for accessing constraint targets, convert all code to use them,
and handle the new reference there uniformly for all constraints.

This incidentally revealed a place in the Collada exporter that
didn't clean up after retrieving the targets.

Also, tag the special target with a flag so other code can
handle it appropriately where necessary. This for instance
allows dependency graph to know that the Use B-Bone Shape
option doesn't affect this specific target.

Finally, rename and simplify the function for initializing the
custom space, and make sure it is called everywhere necessary.

Differential Revision: https://developer.blender.org/D9732

----------------------------------------
17 Paths Changed]]>
Sun, 26 Dec 2021 15:10:09 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/6217c07ed89bc509cbf6c93c7d72306e1e4194f1Alexander Gavrilov
<![CDATA[[d746262] : Depsgraph: connect up drivers on various physics properties.]]> http://www.miikahweb.com/en/blender/git-logs/commit/d746262903ef64986e70d0048373483015ad63c6 d746262
Author : Alexander Gavrilov (angavrilov)
----------------------------------------
Depsgraph: connect up drivers on various physics properties.

It seems drivers for physics properties weren't being linked to
evaluation nodes. This connects settings used by modifiers
to Geometry; particle settings and rigid body data to Transform
which seems to contain rigid body evaluation; and force fields
to object Transform, since fields can exist on empties.

Differential Revision: https://developer.blender.org/D10088

----------------------------------------
3 Paths Changed]]>
Sun, 26 Dec 2021 15:10:09 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/d746262903ef64986e70d0048373483015ad63c6Alexander Gavrilov
<![CDATA[[f0ac641] : Force Fields: implement new true power and custom falloff options...]]> http://www.miikahweb.com/en/blender/git-logs/commit/f0ac641c6fa9b8c33dd7c80ed159578169c8dfb0 f0ac641
Author : Alexander Gavrilov (angavrilov)
----------------------------------------
Force Fields: implement new true power and custom falloff options.

The 'power' falloff option in Blender force fields does not actually
generate a true power falloff function, as pointed out in D2389.
However, that patch adds a special 'gravity' falloff option to Force
fields, without addressing the shortcoming in the common options.

The reason for not using the true curve in the options, as far as
one can tell, is that the power curve goes up to infinity as the
distance is reduced to 0, while the falloff options are designed
so that the maximum value of the curve is 1.

However, in reality forces with a power falloff don't actually go
to infinity, because real objects have a nonzero size, and the force
reaches its maximum at the surface of the object. This can be used
to integrate an option to use a true power falloff with the design
of falloff settings, if it requires a nonzero 'minimum' distance
to be set, and uses a curve that reaches 1 at that distance.

Since this is adding a new feature to the minimum distance value,
it is also a good opportunity to add a feature to the maximum
distance. Specifically, the new options can be used to apply
arbitrary brush-style falloff curves between min and max,
including a fully custom curve option. When used together with
power falloff, the two curves are multiplied together.

While the true power option allows creating more physically
correct forces, the custom curves aid artistic effects.

Differential Revision: https://developer.blender.org/D8075

----------------------------------------
9 Paths Changed]]>
Sun, 26 Dec 2021 15:10:09 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/f0ac641c6fa9b8c33dd7c80ed159578169c8dfb0Alexander Gavrilov
<![CDATA[[2d0ff55] : Animation: support filtering for curves that have cycle issues...]]> http://www.miikahweb.com/en/blender/git-logs/commit/2d0ff550958fe539cd36dce4b132dbf1711a55cd 2d0ff55
Author : Alexander Gavrilov (angavrilov)
----------------------------------------
Animation: support filtering for curves that have cycle issues.

It is possible to have curves with cyclic extrapolation that
have a mismatch in their end keyframes, causing a jump.

Also, since the looping behavior is defined per curve rather than at
action level, it is possible for curve loop periods to get out of
sync with each other. This commit adds an option to compare curves
against the manual frame range specified in the action, and treat
any mismatches as errors for the purpose of F-Curve filtering.

When enabled, the check verifies that end values of cyclic curves
match, curves within a cyclic action have valid cyclic extrapolation,
and the action period evenly divides by the curve period (since
a curve looping at e.g. half of the action period length still
repeats in sync with the action).

Ref: D11803

Differential Revision: https://developer.blender.org/D13349

----------------------------------------
6 Paths Changed]]>
Sun, 26 Dec 2021 15:10:08 +0000 http://www.miikahweb.com/en/blender/git-logs/commit/2d0ff550958fe539cd36dce4b132dbf1711a55cdAlexander Gavrilov