Blender Git Statistics -> Developers -> angavrilov

Alexander Gavrilov (angavrilov)

Total Commits : 394
Master Commits : 334
Branch Commits : 60
First Commit : January 20, 2016
Latest Commit : December 2, 2020 (Today)

Commits by Month

DateNumber of Commits
December, 202010
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
master334
hair_object100
temp-outliner-visibility97
collada2.866
blender2.8_snap_gizmo38
temp-ui-layout-2.823
interactive_physics16
temp-lanpr-staging6
temp-blender-2.81-release-with-wrong-merge6
temp-angavrilov-material-uniforms5
temp-angavrilov-constraints5
temp-lanpr-cleanup25
blender-v2.78c-release4
fracture_modifier-master4
blender-v2.78b-release4
fracture_modifier4
smooth-fcurves4
temp-fracture-modifier-2.84
temp-select-axis4
soc-2017-normal-tools2
blender-v2.78-release2
temp-lanpr-cleanup2
smooth-curves2
fix-489911
temp-clang-format1
blender-v2.81-release1

Favourite Files

FilenameTotal Edits
constraint.c58
rna_constraint.c36
DNA_constraint_types.h31
armature.c28
fcurve.c28
readfile.c26
properties_constraint.py26
deg_builder_relations.cc25
rna_fcurve.c24
DNA_anim_types.h24

File Changes

ActionTotalPer Commit
Added1 2513.2
Modified4 96812.6
Deleted1 2373.1

Code Changes

ActionTotalPer Commit
Lines Added30 59680.7
Lines Removed11 30829.8

Latest commits Feed

Revision 064bf63 by Alexander Gavrilov (temp-angavrilov-constraints)
3 hours 51 min ago
tweak: copy transforms
Revision 42da073 by Alexander Gavrilov (temp-angavrilov-constraints)
3 hours 51 min ago
Refactor the Custom Space patch.

Instead of modifying all the get_constraint_targets and
flush_constraint_targets callbacks, introduce wrapper API
functions and handle the new reference there.

Also, it is not needed to do all the target dance to compute
the space_obj_world_matrix.
Revision 4efa126 by Alexander Gavrilov (temp-angavrilov-constraints)
3 hours 51 min ago
Constraints: add support for a new Owner Local Space for targets.

Add a new transformation space choice for bone constraints, which
represent the local transformation of the bone in the constraint
owner's local space.

The use case for this is transferring the local (i.e. excluding the
effect of parents) transformation of one bone to another one, while
ignoring the difference between their rest pose orientations.

Owner Local Space replaces the following setup:

* A `child` bone of the `target`, rotated the same as `owner` in rest pose.
* A `sibling` bone of the `target`, positioned same as `child` in rest
pose and using Copy Transforms in World Space from `child`.
* The `owner` bone constraint uses Local Space of `sibling`.

Differential Revision: https://developer.blender.org/D9493
Revision 06f6f4a by Alexander Gavrilov (temp-angavrilov-constraints)
3 hours 51 min ago
Limit Rotation: add an Euler Order option and orthogonalize the matrix.

Since Limit Rotation is based on Euler decomposition, it should allow
specifying the order to use for the same reasons as Copy Rotation does,
namely, if the bone uses Quaternion rotation for its animation channels,
there is no way to choose the order for the constraint.

In addition, add a call to orthogonalize the matrix before processing
for the same reasons as D8915, and an early exit in case no limits are
enabled for a bit of extra efficiency.

Since the constraint goes through Euler decomposition, it would remove
shear even before the change, but the rotation won't make much sense.

Differential Revision: https://developer.blender.org/D9626
Revision 1eae309 by Alexander Gavrilov (temp-angavrilov-constraints)
3 hours 51 min ago
Copy Transforms: implement Invert, Fix Shear and more Mix options.

This constraint can be naturally viewed as a prototype for a future
4x4 matrix math node (or subset thereof), since its basic semantics
already is matrix assignment. Thus it makes sense to add math options
to this constraint to increase flexibility in the meantime.

This patch adds support for several operations that would be useful:

- An option to fix shear in the incoming target matrix.
- An option to invert the target matrix.
- More ways to combine target and owner matrix.

Shear is known to cause issues for various mathematical operations,
so an option to remove it at key points is useful. In the future node
system this would be a separate operation, but due to the limits of
the constraint stack it has to be built in for now.

Inverting a matrix is also an operation that can be useful to have.
For some uses it may be useful to invert components separately, so
implement this by checking the Mix mode setting to avoid UI options.

Finally, add two more ways to combine the matrices (multiplied by
two due to the necessity for the Before/After choice). Now there
are three combine modes:

Full implements regular matrix multiplication as the most basic option.

Split Channels combines location, rotation and scale separately.
Looking at D7547 there is demand for such a mode in some cases,
and even with nodes it's cumbersome to rig manually every time.

Finally, Aligned emulates the 'anti-shear' Aligned Inherit Scale mode,
and basically uses Full for location, and Split for rotation/scale.

Differential Revision: https://developer.blender.org/D9469
Revision 6f1e5b6 by Alexander Gavrilov
12 hours 3 min ago
tweak: copy transforms
Revision 76dece2 by Alexander Gavrilov
1 day and 2 hours ago
Refactor the Custom Space patch.

Instead of modifying all the get_constraint_targets and
flush_constraint_targets callbacks, introduce wrapper API
functions and handle the new reference there.

Also, it is not needed to do all the target dance to compute
the space_obj_world_matrix.
Revision 9b73791 by Alexander Gavrilov
1 day and 2 hours ago
Constraints: add support for a new Owner Local Space for targets.

Add a new transformation space choice for bone constraints, which
represent the local transformation of the bone in the constraint
owner's local space.

The use case for this is transferring the local (i.e. excluding the
effect of parents) transformation of one bone to another one, while
ignoring the difference between their rest pose orientations.

Owner Local Space replaces the following setup:

* A `child` bone of the `target`, rotated the same as `owner` in rest pose.
* A `sibling` bone of the `target`, positioned same as `child` in rest
pose and using Copy Transforms in World Space from `child`.
* The `owner` bone constraint uses Local Space of `sibling`.

Differential Revision: https://developer.blender.org/D9493
Revision b52d792 by Alexander Gavrilov
1 day and 2 hours ago
Limit Rotation: add an Euler Order option and orthogonalize the matrix.

Since Limit Rotation is based on Euler decomposition, it should allow
specifying the order to use for the same reasons as Copy Rotation does,
namely, if the bone uses Quaternion rotation for its animation channels,
there is no way to choose the order for the constraint.

In addition, add a call to orthogonalize the matrix before processing
for the same reasons as D8915, and an early exit in case no limits are
enabled for a bit of extra efficiency.

Since the constraint goes through Euler decomposition, it would remove
shear even before the change, but the rotation won't make much sense.

Differential Revision: https://developer.blender.org/D9626
Revision f38454b by Alexander Gavrilov
1 day and 2 hours ago
Copy Transforms: implement Invert, Fix Shear and more Mix options.

This constraint can be naturally viewed as a prototype for a future
4x4 matrix math node (or subset thereof), since its basic semantics
already is matrix assignment. Thus it makes sense to add math options
to this constraint to increase flexibility in the meantime.

This patch adds support for several operations that would be useful:

- An option to fix shear in the incoming target matrix.
- An option to invert the target matrix.
- More ways to combine target and owner matrix.

Shear is known to cause issues for various mathematical operations,
so an option to remove it at key points is useful. In the future node
system this would be a separate operation, but due to the limits of
the constraint stack it has to be built in for now.

Inverting a matrix is also an operation that can be useful to have.
For some uses it may be useful to invert components separately, so
implement this by checking the Mix mode setting to avoid UI options.

Finally, add two more ways to combine the matrices (multiplied by
two due to the necessity for the Before/After choice). Now there
are three combine modes:

Full implements regular matrix multiplication as the most basic option.

Split Channels combines location, rotation and scale separately.
Looking at D7547 there is demand for such a mode in some cases,
and even with nodes it's cumbersome to rig manually every time.

Finally, Aligned emulates the 'anti-shear' Aligned Inherit Scale mode,
and basically uses Full for location, and Split for rotation/scale.

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

MiikaHweb - Blender Git Statistics v1.06
By: Miika HämäläinenLast update: Nov-07-2014 14:18 MiikaHweb | 2003-2020