Blender Git Statistics -> Developers -> mont29

Bastien Montagne (mont29)

Total Commits : 8 517
Master Commits : 5 278
Branch Commits : 3 239
First Commit : July 25, 2011
Latest Commit : July 30, 2021

Commits by Month

DateNumber of Commits
July, 202138
June, 202173
May, 202172
April, 202116
March, 202185
February, 202150
January, 202149
December, 202062
November, 202048
October, 202077
September, 202057
August, 202058
July, 202097
June, 202098
May, 202094
April, 202083
March, 2020139
February, 2020182
January, 202088
December, 201915
November, 201971
October, 201941
September, 201953
August, 201962
July, 201941
June, 201934
May, 201944
April, 201948
March, 201984
February, 201984
January, 201966
December, 201853
November, 201871
October, 201843
September, 201855
August, 201855
July, 201827
June, 2018181
May, 2018132
April, 201851
March, 201852
February, 201869
January, 201856
December, 201757
November, 2017135
October, 201782
September, 201752
August, 2017100
July, 201768
June, 201783
May, 201772
April, 201782
March, 201791
February, 201757
January, 201752
December, 201656
November, 201678
October, 201664
September, 2016106
August, 201666
July, 2016105
June, 2016159
May, 2016115
April, 201686
March, 201696
February, 201678
January, 2016132
December, 201587
November, 2015133
October, 2015208
September, 2015178
August, 201590
July, 201591
June, 2015106
May, 2015154
April, 2015154
March, 2015139
February, 2015142
January, 2015179
December, 2014141
November, 2014181
October, 2014152
September, 201443
August, 2014115
July, 201457
June, 201443
May, 201441
April, 201468
March, 201434
February, 201423
January, 201453
December, 201324
November, 201338
October, 201328
September, 201338
August, 201343
July, 20134
June, 201320
May, 201325
April, 201325
March, 201339
February, 201350
January, 201342
December, 201247
November, 201248
October, 201259
September, 201218
August, 20124
July, 201244
June, 201223
May, 201233
April, 201226
March, 201235
February, 201216
January, 201220
December, 201116
November, 201133
October, 201114
September, 201148
August, 20117
July, 20117

Commit Distribution

PathNumber of Commits
master5278
asset-engine--archived1516
asset-engine1516
asset-experiments1061
hair_object712
temp-outliner-visibility706
collada2.8652
blender2.8_snap_gizmo617
temp-ui-layout-2.8587
interactive_physics582
temp-select-axis535
hair_guides_grooming517
hair_guides517
soc-2018-cycles-volumes507
soc-2018-bevel498
benchmark496
temp-benchmark496
temp-udim-images489
temp-greasepencil-vfx484
tmp_hair_curves481
temp-tab_drag_drop479
temp-sybren-cow-ocean478
temp-eeveelightcache478
temp-dynamic-overrides478
temp-greasepencil-object-stacksplit436
TEMP-UI-DECOR408
ui_layout_gridflow395
temp-flexible-spacing382
temp-keymap-changes376
id_override_static375
id-remap358
tmp-CollectionsAnim358
tmp-b28-motionpath-drawing357
temp-keymap-save344
experimental_gp_weight332
tmp-COW_InsertKeyframe_Fix331
temp-unified-collections330
temp-sybren-particles326
topbar322
temp-modifier-rm-cddm321
tmp-TimelineHeaderButtonsStretching321
temp-sybren-modifier-nonmesh317
temp-sybren-meshdeform296
tmp-static-override-insertion287
blender2.8-snapping_with_occlusion287
blender2.8-workbench269
uuid-undo-experiments-swap-reread-datablocks255
temp-object-multi-mode238
temp-drawcontext221
temp-render-depsgraph221
temp-scene-obedit-remove218
temp-workspace-object-mode-removal215
temp-workspace-addons206
undo-experiments-swap-reread-datablocks197
uuid-undo-experiments197
fracture_modifier-master191
fracture_modifier191
temp-fracture-modifier-2.8191
temp-workspace_mode190
temp-workspace_active_object170
mesh-transfer-data163
undo-experiments147
temp-group-collections146
temp-workspace-changes142
custom-manipulators142
strand_editmode141
tmp-debug-filebrowser126
temp-ssr123
temp_custom_loop_normals119
workspaces119
temp-lightprobe-rename115
temp-cycles-draw-manager96
missing-libs93
soc-2017-normal-tools83
undo-experiments-idnames58
blender-v2.79b-release56
blender-v2.79a-release55
id_copy_refactor54
blender-v2.78c-release51
blender-v2.78b-release51
blender-v2.78-release49
transform-manipulators46
temp-depsgraph-layers46
imm_port_wm_playanim46
compositor-201645
ui-preview-buttons44
id-ensure-unique-memory-address42
temp-workspace-multi-window41
override-recursive-resync36
blender-v2.76a-release36
blender-v2.76-release36
experimental-build35
temp-ghash-experiments35
soc-2014-shapekey35
render-layers33
blender-v2.77-release32
temp-blender2.8-stable32
datablock_idprops32
temp-xinput-tablet31
clay-engine31
temp-layers-ui-table31
uiTable30
temp-sybren-poselib28
free-refcount-ids28
tmp-2.83-cycles-rtx3-kernels26
blender-v2.83-release26
lib-link-rework-temp26
layer-manager25
blender-v2.79-release25
layers25
readfile-rework-refcount-handling24
temp-blender2.823
pbr-viewport23
undo-experiments-remap-history23
blender-v2.72-release23
temp-lanpr-cleanup220
viewport_generic_engine19
temp_manipulators_core19
gooseberry18
temp_motionpaths18
soc-2016-pbvh-painting18
ui-align-rework18
multi_previews_id17
testbuild16
vr_scene_inspection16
temp-lanpr-cleanup16
gooseberry_farm15
uuid-id14
soc-2021-porting-modifiers-to-nodes-decimate13
lineart-shadow12
lineart-bvh12
libquery-recursive12
temp-lineart-contained12
temp-ghash-setops11
idtype-refactor11
tmp-task-foreach-pool11
blender-v2.74-release10
tmp-id-users9
unlock_task_scheduler9
soc-2021-curves9
temp-ghash-basis9
soc-2019-npr8
temp-gpencil-eval8
new-filebrowser-preview-temp8
undo-write8
blender-v2.75-release8
input_method_editor_partial_support8
override_static8
input_method_editor8
greasepencil-refactor8
temp-attribute-processor8
temp-pyapi-units8
greasepencil-object8
greasepencil-experimental7
asset-browser-poselib7
asset-uuid--archived7
asset-browser7
asset-uuid7
libquery-handle-ui-pointers7
override-refactor-tmp7
tmp-T806037
temp-pose-flipping-fix-attempt7
temp-lanpr-staging6
shapekeys-normals6
alembic6
asset-system-filelist6
ui-asset-view-template6
temp_hair_modifiers6
custom-normals-bmesh5
modifier-panels-ui5
override-refactor-tmp-25
blender-v2.73-release5
blend-thumbnail4
id_newid_optional4
soc-2020-info-editor4
readfile_factorize_common_id_processing4
fluid-mantaflow4
temp_constraint_volume3
lanpr-under-gp3
soc-2020-production-ready-light-tree-23
gsoc-2018-many-light-sampling3
soc-2020-production-ready-light-tree3
temp_lineart_contained3
cycles_unbiased_volumes3
blender-v2.80-release3
HMD_viewport3
snap_system_clip_planes2
undo-caches2
blender-v2.91-release2
temp-units-refactor2
readfile_doversions_after_linking2
soc-2013-paint1
temp-clang-format1
fcurves-simplify1
override-outliner-view1
pygpu_extensions1
sculpt-dev1
blender-v2.90-release1
temp-blender-2.81-release-with-wrong-merge1
vgroup_modifiers1
blender-v2.82-release1
tmp-buildbot-gcc-101
soc-2019-openxr1
cycles_texture_cache1

Favourite Files

FilenameTotal Edits
readfile.c440
library.c310
install_deps.sh257
filelist.c247
object.c187
wm_operators.c186
DNA_ID.h173
lib_override.c167
scene.c166
writefile.c161

File Changes

ActionTotalPer Commit
Added5220.1
Modified31 3733.7
Deleted6010.1

Code Changes

ActionTotalPer Commit
Lines Added248 38938.0
Lines Removed146 65022.4

Latest commits Feed

Revision 350d32f by Bastien Montagne / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate)
July 30, 2021, 14:56 (GMT)
install_deps: Update llvm to 12.0 (with minimal now being 11.0).

Ref T88438.
Revision db79692 by Bastien Montagne / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate)
July 30, 2021, 14:56 (GMT)
install_deps: Update OIIO to 1.1.15.1.

Ref. T88438.
Revision 6d296ff by Bastien Montagne / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate)
July 30, 2021, 14:56 (GMT)
Cleanup: OSL buildlib patch: Remove `.rej` part.

This patch contained changes for an `.rej` rejection file generated by
failed patch apply... Definitly nothing to do here.
Revision 4c97a02 by Bastien Montagne / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate)
July 30, 2021, 14:56 (GMT)
install_deps: Update OSL to 1.11.14.1.

This has been a huge pain to get working, for several reasons (new flags
needed, patching is now mandatory, etc.).

Further more, discovered that debian OIIO package is now silently
relying on OpenCV, without even proper handling of this dependency (at
least in the `-dev` package), so had to revert to force-build own OIIO
again on that distro for the time being.

Ref. T88438.
Revision ab66f1d by Bastien Montagne / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate)
July 30, 2021, 14:56 (GMT)
install_deps: update OIDN to 1.4.1, and ISPC to 1.16.0.

Ref. T88438.
Revision 53ed446 by Bastien Montagne / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate)
July 30, 2021, 14:56 (GMT)
BlenRead: Add GHash-based search for already read linked IDs.

Ths commit adds a new `IDNameLibMap` to `Main`, used during file reading
to quickly find already read linked IDs.

Without that, search would use string-based search over list of linked
data, which becomes extremely slow and inneficient in cases where a lot
of IDs are linked from a same library. See also {T89194}.

Extrem-usecase reported in T89194 is now about 4 times faster in linked
data reading (about 2 times faster for the whole .blend file loading).

More normal cases (like Sprites studio production files) have barely
measurable speed improvements, a few percents at best.

NOTE: `main_idmap` API was extended to support insertion and removal of
IDs from the mapping, avoids having to re-create the whole thing several
time during libraries expansion in readcode.

Differential Revision: https://developer.blender.org/D11757
Revision 12298a5 by Bastien Montagne / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate)
July 30, 2021, 14:56 (GMT)
Fix LibOverride crashing in some cases where reference linked data gets MIA.

When the root of an override hierarchy disapears, there is no way to do
a proper resync, just abort.

Reported by studio, thx.
Revision ffdf9fa by Bastien Montagne / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate)
July 30, 2021, 14:56 (GMT)
Fix (studio-reported) liboverride resync crash after recent changes.

Recent own rBabf3ce811f6e prevented any LayerCollection update during
the whole liboverride resync process, for both performances and feature
reasons.

However that means that the various runtime caches like the Base GHash
are not cleared anymore during ID remapping process, so we need to call
`BKE_main_collection_sync_remap` instead of `BKE_main_collection_sync`
when we finally are ready for this update.

Reported by @eyecandy (Andy Goralczyk) from Blender studio, thanks!
Revision 0f72541 by Bastien Montagne / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate)
July 30, 2021, 14:56 (GMT)
LayerCollection: Refactor of resync-with-Collection-hierarchy process.

The goal of this refactor is to improve resync of LayerCollections
hierarchy to match again Collection one.

Current code would destroy and re-create valid layers whenever a parent
collection would be removed, which leads to losing way too often
layer-related settings when editing collection hierarchies.

While this could be partially addressed from operators side, there was
no way to fix those issues from lower level, more generic ID management
code like ID remapping or library override resync processes.

The new code builds a shallow wrapper around existing (aka old) layers
hierarchy, does a set of checks to define the status of all existing
layers, and try to find the closest matching unused layer in cases where
layers and collections hierarchies do not match anymore.

The intent is to both re-use as much as possible existing layers, and
to pick the 'best' possible layer to re-use, following those heuristics:
* Prefer layers children of current one first (in old hierarchy), and only
use those from other higher-level hierarchies if no (grand-)child is found.
* Prefer to use closest layers available in the old hierarchy.

NOTE: The new code is about 12%-15% slower than the previous one, which is
expected given the increased complexity. Note that this would not be an
issue in practice if this code was not called way too often (needs to
be converted to lazy update instead, which is a long known TODO).

NOTE: The LayerCollectionResync code uses its own built-in version of
FIFO queue, as performances in this code is currently a critical point
(it can get called tens of thousands of times during a single (heavy)
ID management operation currently, in a production file e.g.).

Differential Revision: https://developer.blender.org/D12016
Revision 641dade by Bastien Montagne / Fabian Schempp (soc-2021-porting-modifiers-to-nodes-decimate)
July 30, 2021, 14:56 (GMT)
Remove the code in `BKE_collection_move` to preserve LayerCollection flags.

This code was actually buggy (forcefully re-enabling excluded layers in some
cases).

Further more, it should not be needed now that layerCollection resync code
reuses as much as possible existing layers instead of deleting and
re-creating them all the time.

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

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