english Sivu saatavilla vain englanninkielisenä.

Blender Git Statistics -> Developers -> angavrilov

Alexander Gavrilov (angavrilov)

Total Commits : 600
Master Commits : 371
Branch Commits : 229
First Commit : January 20, 2016
Latest Commit : October 20, 2021 (Today)

Commits by Month

DateNumber of Commits
October, 202117
September, 202112
August, 20212
July, 20216
June, 202137
May, 202116
April, 20217
March, 20210
February, 20211
January, 202180
December, 202038
November, 202010
October, 20208
September, 20200
August, 20205
July, 20205
June, 20203
May, 20200
April, 20200
March, 20201
February, 20201
January, 20207
December, 20194
November, 201918
October, 20192
September, 201925
August, 201913
July, 20190
June, 20192
May, 201933
April, 201928
March, 20192
February, 20190
January, 20196
December, 201831
November, 201839
October, 201825
September, 20189
August, 20184
July, 20183
June, 20180
May, 20180
April, 20181
March, 20182
February, 20180
January, 20180
December, 20170
November, 20171
October, 201710
September, 20170
August, 201711
July, 20170
June, 20170
May, 20176
April, 20172
March, 20170
February, 20170
January, 20176
December, 20161
November, 20161
October, 20162
September, 20166
August, 201624
July, 20167
June, 20163
May, 20167
April, 20160
March, 20160
February, 20161
January, 20169

Commit Distribution

PathNumber of Commits
master371
hair_object100
temp-outliner-visibility97
collada2.866
blender2.8_snap_gizmo38
temp-ui-layout-2.823
interactive_physics16
temp-angavrilov11
temp-angavrilov-constraints9
temp-blender-2.81-release-with-wrong-merge6
temp-lanpr-staging6
temp-lanpr-cleanup25
temp-angavrilov-material-uniforms5
fracture_modifier-master4
smooth-fcurves4
blender-v2.78c-release4
temp-select-axis4
fracture_modifier4
temp-fracture-modifier-2.84
blender-v2.78b-release4
soc-2021-curves3
lineart-shadow2
blender-v2.78-release2
soc-2021-porting-modifiers-to-nodes_all2
asset-browser-poselib2
temp-lineart-contained2
soc-2021-porting-modifiers-to-nodes-decimate2
temp-attribute-processor2
asset-browser2
temp-angavrilov-roll-precision2
soc-2017-normal-tools2
temp-lanpr-cleanup2
smooth-curves2
temp-pose-flipping-fix-attempt2
temp-clang-format1
cycles_texture_cache1
lineart-bvh1
blender-v2.81-release1
fix-489911

Favourite Files

FilenameTotal Edits
constraint.c138
rna_constraint.c106
DNA_constraint_types.h101
armature.c78
armature_add.c61
properties_constraint.py59
action.c55
deg_builder_relations.cc52
rna_armature.c39
BKE_armature.h38

File Changes

ActionTotalPer Commit
Added1 2672.1
Modified6 39210.7
Deleted1 2372.1

Code Changes

ActionTotalPer Commit
Lines Added55 29995.0
Lines Removed18 98532.6

Latest commits Feed

Revision dfa1c7e by Alexander Gavrilov (master)
6 hours 10 min ago
Split and extend unit tests for vec_roll_to_mat3_normalized.

Separate the huge test into huge logical parts and add more cases
to check. Also add a utility to check that the matrix is orthogonal,
with arbitrary epsilon values and calculations in double.

A couple of tests deliberately fail, to be fixed in following commits.

Ref D9551
Revision 16eafda by Alexander Gavrilov (master)
6 hours 10 min ago
Fix precision issues and a bug in vec_roll_to_mat3_normalized.

When the input vector gets close to -Y, y and theta becomes totally
unreliable. It is thus necessary to compute the result in a different
way based on x and z. The code already had a special case, but:

- The threshold for using the special case was way too low.
- The special case was not precise enough to extend the threshold.
- The special case math had a sign error, resulting in a jump.

This adds tests for the computation precision and fixes the issues
by adjusting the threshold, and replacing the special case with one
based on a quadratic Taylor expansion of sqrt instead of linear.

Replacing the special case fixes the bug and results in a compatibility
break, requiring versioning for the roll of affected bones.

Differential Revision: https://developer.blender.org/D9551
Revision a0e2370 by Alexander Gavrilov (temp-angavrilov-roll-precision)
October 15, 2021, 10:21 (GMT)
Fix precision issues and a bug in vec_roll_to_mat3_normalized.

When the input vector gets close to -Y, y and theta becomes totally
unreliable. It is thus necessary to compute the result in a different
way based on x and z. The code already had a special case, but:

- The threshold for using the special case was way too low.
- The special case was not precise enough to extend the threshold.
- The special case math had a sign error, resulting in a jump.

This adds tests for the computation precision and fixes the issues
by adjusting the threshold, and replacing the special case with one
based on a quadratic Taylor expansion of sqrt instead of linear.

Replacing the special case fixes the bug and results in a compatibility
break, requiring versioning for the roll of affected bones.

Differential Revision: https://developer.blender.org/D9551
Revision cdd80a1 by Alexander Gavrilov (temp-angavrilov-roll-precision)
October 15, 2021, 10:18 (GMT)
Split and extend unit tests for vec_roll_to_mat3_normalized.

Separate the huge test into huge logical parts and add more cases
to check. Also add a utility to check that the matrix is orthogonal,
with arbitrary epsilon values and calculations in double.

A couple of tests deliberately fail, to be fixed in following commits.

Ref D9551
Revision 1996efe by Alexander Gavrilov (master)
October 14, 2021, 16:44 (GMT)
Python API: implement `PoseBone.children` via `Bone.children`.

Currently `PoseBone.children` is implemented by a linear scan of
the list of armature bones. This is doubly inefficient, since
not only is it scanning all bones, the `obj.data.bones` list
is actually synthetic and generated from Bone children lists.

Instead, use the `Bone.children` native RNA property.

Differential Revision: https://developer.blender.org/D12727
Revision 6f6e33e by Alexander Gavrilov (temp-angavrilov)
October 6, 2021, 09:49 (GMT)
Animation: support filtering for curves that don't match the action cycle.

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 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 curves within the action
have valid cyclic extrapolation, 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),
and the end values match if the cycle is supposed to be perfect.

Differential Revision: https://developer.blender.org/D11803
Revision 1e6de47 by Alexander Gavrilov (temp-angavrilov)
October 6, 2021, 09:49 (GMT)
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
Revision 332b9ee by Alexander Gavrilov (temp-angavrilov)
October 6, 2021, 09:49 (GMT)
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
Revision 5abdc50 by Alexander Gavrilov (temp-angavrilov)
October 6, 2021, 09:49 (GMT)
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
Revision eb8cda5 by Alexander Gavrilov (temp-angavrilov)
October 6, 2021, 09:49 (GMT)
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.

MiikaHweb - Blender Git Statistics v1.06
Tehnyt: Miika HämäläinenViimeksi p?ivitetty: 07.11.2014 14:18 MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021