Blender Git Statistics -> Developers -> sybren

Sybren A. Stüvel (sybren)

Total Commits : 1 513
Master Commits : 899
Branch Commits : 614
First Commit : January 14, 2015
Latest Commit : September 17, 2020

Commits by Month

DateNumber of Commits
September, 202041
August, 202054
July, 202061
June, 202025
May, 202050
April, 202052
March, 202040
February, 202034
January, 202045
December, 2019110
November, 2019164
October, 201916
September, 201919
August, 201916
July, 201968
June, 201955
May, 20192
April, 20195
March, 20194
February, 20190
January, 20198
December, 20186
November, 20186
October, 20181
September, 20181
August, 20180
July, 201825
June, 201860
May, 201881
April, 201864
March, 20187
February, 20182
January, 201811
December, 20170
November, 20172
October, 20179
September, 20171
August, 201717
July, 201713
June, 201710
May, 201716
April, 2017128
March, 201715
February, 201746
January, 20170
December, 20169
November, 201617
October, 201614
September, 201614
August, 20163
July, 20160
June, 20160
May, 20160
April, 20161
March, 20161
February, 20160
January, 20162
December, 20150
November, 20153
October, 20151
September, 20157
August, 20153
July, 201510
June, 20154
May, 20151
April, 20154
March, 20154
February, 201516
January, 20159

Commit Distribution

PathNumber of Commits
master899
hair_object186
temp-outliner-visibility186
collada2.8183
blender2.8_snap_gizmo180
temp-ui-layout-2.8180
interactive_physics179
temp-benchmark178
benchmark178
hair_guides_grooming178
hair_guides178
tmp_hair_curves178
temp-select-axis178
temp-udim-images178
soc-2018-cycles-volumes178
soc-2018-bevel178
temp-sybren-cow-ocean176
temp-eeveelightcache172
temp-greasepencil-vfx170
temp-tab_drag_drop159
temp-dynamic-overrides150
temp-greasepencil-object-stacksplit148
TEMP-UI-DECOR143
ui_layout_gridflow137
temp-flexible-spacing137
temp-modifier-rm-cddm130
temp-keymap-changes122
tmp-CollectionsAnim105
tmp-b28-motionpath-drawing103
temp-keymap-save98
tmp-COW_InsertKeyframe_Fix95
sybren-usd95
temp-sybren-particles91
temp-unified-collections89
temp-sybren-usd-patch-0280
temp-sybren-modifier-nonmesh80
experimental_gp_weight79
topbar78
tmp-TimelineHeaderButtonsStretching78
temp-sybren-meshdeform66
temp-sybren-usd-patch-0365
blender2.8-snapping_with_occlusion65
tmp-static-override-insertion65
blender2.8-workbench63
temp-sybren-usd-patch56
id_override_static45
temp-object-multi-mode43
temp-alembic-exporter-T73363-ms238
temp-workspace-object-mode-removal37
temp-drawcontext37
temp-workspace-addons37
temp-scene-obedit-remove37
temp-render-depsgraph37
temp-sybren-poselib34
temp-workspace_mode34
temp-group-collections34
temp-workspace_active_object34
custom-manipulators30
temp-workspace-changes30
strand_editmode30
tmp-debug-filebrowser27
temp-ssr27
workspaces23
temp-lightprobe-rename23
temp-cycles-draw-manager22
temp-sybren-usd-patch-0120
asset-engine--archived13
sybren-usd-experiments13
asset-engine13
temp-fracture-modifier-2.812
fracture_modifier-master12
fracture_modifier12
blender-v2.79b-release10
temp-T50725-alembic-export-custom-properties9
blender-v2.79a-release8
blender-v2.79-release7
temp-usd-export-unittest5
temp-workspace-multi-window5
temp-depsgraph-layers5
transform-manipulators5
imm_port_wm_playanim5
temp-io-alembic-changes-up-to-D76725
id_copy_refactor5
multi_previews_id4
temp-sybren-bpy-make-local4
temp-sybren-anim-cleanup4
temp-sybren-alembic3
temp-sybren-usd3
temp-sybren-abc-groupexport3
temp-D7478-unittest-python-exe3
blender-v2.83-release3
vr_scene_inspection2
temp-lanpr-cleanup22
temp-T80320-usd-hack-removal2
temp-sybren-usd-apple2
temp-lanpr-cleanup2
temp-sybren-childof-constraint-unittest2
blender-v2.75-release2
temp-blender-2.81-release-with-wrong-merge2
temp-sybren-alembic-fix-test2
blender-v2.74-release1
blender-v2.81-release1
temp-sybren-fcurve-driver-extract1
render-layers1
temp-sybren-abc-tests-windows1
temp-sybren-vse-wave-text-toggle1
temp-mathutils-doc1
temp-fcurve-driver-extract1
temp-usd-test-cmake-install-prefix1
blender-v2.77-release1
temp-blender2.8-stable1
temp-mathutils1
temp-usd-library-update-20.051
blender-v2.82-release1
temp-usd-library-update-20.021

Favourite Files

FilenameTotal Edits
abstract_hierarchy_iterator.h93
abstract_hierarchy_iterator.cc81
alembic_capi.cc77
usd_writer_mesh.cc53
abc_mesh.cc52
abc_exporter.cc50
usd_hierarchy_iterator.cc49
usd_capi.cc47
usd_writer_abstract.cc45
abc_util.cc41

File Changes

ActionTotalPer Commit
Added6390.4
Modified4 6123.0
Deleted2710.2

Code Changes

ActionTotalPer Commit
Lines Added53 58739.2
Lines Removed27 74320.3

Latest commits Feed

Revision 0700c04 by Sybren A. Stüvel (master)
September 17, 2020, 10:02 (GMT)
Fix: re-do versioning code for FCurve extremes and Collection colors

Bump Blender subversion from 4 to 5, and re-execute some versioning code.

Because of a mistake in the versioning code (corrected in rB1a4fc6dcd67b),
some of the versioning code didn't run in certain cases. This subversion
bump ensures that this code is still run.
Revision fbdac74 by Sybren A. Stüvel (master)
September 15, 2020, 10:55 (GMT)
Cleanup: move versioning code into "until next bump" block

A bit of versioning code was not part of the "Versioning code until next
subversion bump goes here" block, making the diff of an upcoming bump
harder to read. This commit just moves the code to the appropriate spot.

No functional changes.
Revision ee97add by Sybren A. Stüvel (master)
September 14, 2020, 10:49 (GMT)
Alembic export: write custom properties

Write custom properties (aka ID properties) to Alembic, to the
`.userProperties` compound property.

Manifest Task: https://developer.blender.org/T50725

Scalar properties (so single-value/non-array properties) are written as
single-element array properties to Alembic. This is also what's done by
Houdini and Maya exporters, so it seems to be the standard way of doing
things. It also simplifies the implementation.

Two-dimensional arrays are flattened by concatenating all the numbers
into a single array. This is because ID properties have a limited type
system. This means that a 3x3 "matrix" could just as well be a list of
three 3D vectors.

Alembic has two container properties to store custom data:
- `.userProperties`, which is meant for properties that aren't
necessarily understood by other software packages, and
- `.arbGeomParams`, which can contain the same kind of data as
`.userProperties`, but can also specify that these vary per face of a
mesh. This property is mostly intended for renderers.

Most industry packages write their custom data to `.arbGeomParams`.
However, given their goals I feel that `.userProperties` is the more
appropriate one for Blender's ID Properties.

The code is a bit more involved than I would have liked. An
`ABCAbstractWriter` has a `uniqueptr` to its `CustomPropertiesExporter`,
but the `CustomPropertiesExporter` also has a pointer back to its owning
`ABCAbstractWriter`. It's the latter pointer that I'm not too happy
with, but it has a reason. Getting the aforementioned `.userProperties`
from the Alembic library will automatically create it if it doesn't
exist already. If it's not used to actually add custom properties to, it
will crash the Alembic CLI tools (and maybe others too). This is what
the pointer back to the `ABCAbstractWriter` is used for: to get the
`.userProperties` at the last moment, when it's 100% sure at least one
custom property will be written.

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

Reviewed by: sergey, dbystedt
September 10, 2020, 17:44 (GMT)
Avoid breakage when there are no custom properties to be written
September 10, 2020, 16:35 (GMT)
Tweaks and adjustments and abstractions and generalisations and tests
September 10, 2020, 15:30 (GMT)
Always flatten arrays of arrays
September 10, 2020, 15:15 (GMT)
Remove debug prints
September 10, 2020, 14:29 (GMT)
Generic int/float/double matrix support
September 10, 2020, 14:09 (GMT)
Support for matrices of type double
September 10, 2020, 11:21 (GMT)
Alembic export: write scalar custom properties

Write scalar custom properties as array properties to Alembic. This is
also what's done by Houdini and Maya exporters, so it seems to be the
standard way of doing things.

Seems to work ok'ish if I look at it via `usdcat`.

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