Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-04-17ClangFormat: apply to source, most of internCampbell Barton
Apply clang format as proposed in T53211. For details on usage and instructions for migrating branches without conflicts, see: https://wiki.blender.org/wiki/Tools/ClangFormat
2019-04-16Cleanup: trailing commasCampbell Barton
2019-04-14Cleanup: doxy commentsCampbell Barton
Use doxy references to function and enums, also correct some names which became out of sync.
2019-04-10Keyframing: add operators that use keying-set ID'sCampbell Barton
Unfortunately we can't use insert/delete_keyframe operators in keymaps because the enums aren't known at the time of keymap registration and the keying sets are dynamic and use a poll function. Add a version of insert/delete operators that takes a string instead of an enum. Needed for D4626. Also extract int to keying-set into a utility function.
2019-03-29Fix T62908: Missing update when inserting keyframe from dopesheetSergey Sharybin
2019-03-20Fix T62750: Deleted Keyframe Still Affects SceneSergey Sharybin
Missing ID recalc tag.
2019-03-13Fix T58721: Keyframing one transform option reset other transformsSergey Sharybin
Use dedicated flag to tag animation just for copy-on-write synchronization, which makes it so copies of the original data blocks gets in sync with the original ID. This will not flush the animation update to all objects which depend on that animation. If such flush is required, use ID_RECALC_ANIMATION. Reviewers: brecht Reviewed By: brecht Differential Revision: https://developer.blender.org/D4508
2019-02-28Fix T62012: Non-animated property, stuck in previously keyframed valuesSergey Sharybin
Was missing ID recalc tag.
2019-02-18doxygen: add newline after \fileCampbell Barton
While \file doesn't need an argument, it can't have another doxy command after it.
2019-02-06Cleanup: remove redundant doxygen \file argumentCampbell Barton
Move \ingroup onto same line to be more compact and make it clear the file is in the group.
2019-02-01Cleanup: remove redundant, invalid info from headersCampbell Barton
BF-admins agree to remove header information that isn't useful, to reduce noise. - BEGIN/END license blocks Developers should add non license comments as separate comment blocks. No need for separator text. - Contributors This is often invalid, outdated or misleading especially when splitting files. It's more useful to git-blame to find out who has developed the code. See P901 for script to perform these edits.
2019-01-15Cleanup: comment line length (editors)Campbell Barton
Prevents clang-format wrapping text before comments.
2019-01-14Keyframing: refactor insertion code to allow property-global NLA tweaks.Alexander Gavrilov
Supporting a strip blending type that treats quaternions as a unit also means being able to adjust all sub-channels as a unit when inserting keyframes. This requires refactoring keyframe insertion code to retrieve array property values for all channels at once, before iterating over the indices being inserted.
2018-12-24Fix/cleanup another bunch of UI messages issues.Bastien Montagne
Also (mostly in comments): behaviour -> behavior (we use American English).
2018-12-14NLA: insert keyframes correctly for strips with non-Replace mode.Alexander Gavrilov
NLA strips support using the keyframe values in a variety of ways: adding, subtracting, multiplying, linearly mixing with the result of strips located below in the stack. This is intended for layering tweaks on top of a base animation. However, when inserting keyframes into such strips, it simply inserts the final value of the property, irrespective of these settings. This in fact makes the feature nearly useless. To fix this it is necessary to evaluate the NLA stack below the edited strip and correctly compute the raw key that would produce the intended final value, according to the mode and influence. Differential Revision: https://developer.blender.org/D3927
2018-12-08User Interface: Add button color for indicating that the value differs from ↵Lukas Stockner
the interpolated one One issue that especially newer users often run into is that they accidentally reset changes to the scene by switching frame without creating a keyframe first. Therefore, this commit adds a new color that is used to draw properties if their current value differs from the one that would be set when switching to this frame. This works both for existing keyframes as well as for currently interpolated frames. Unfortunately the flags in but->flag are full, so I had to move the new flag to but->drawflag and pass that to all relevant functions. I went with orange for the color since afaics it fits with the green and yellow that are currently used for keyframe states and since it's somewhat reddish to signify that there might be something to look out for here. Reviewers: campbellbarton, #user_interface, brecht Reviewed By: campbellbarton Subscribers: brecht, predoe Differential Revision: https://developer.blender.org/D3949
2018-12-07Depsgraph: Remove duplicated sets of recalc/update flagsSergey Sharybin
There were at least three copies of those: - OB_RECALC* family of flags, which are rudiment of an old dependency graph system. - PSYS_RECALC* which were used by old dependency graph system as a separate set since the graph itself did not handle particle systems. - DEG_TAG_* which was used to tag IDs. Now there is a single set, which defines what can be tagged and queried for an update. It also has some aggregate flags to make queries simpler. Lets once and for all solve the madness of those flags, stick to a single set, which will not overlap with anything or require any extra conversion. Technically, shouldn't be measurable user difference, but some of the agregate flags for few dependency graph components did change. Fixes T58632: Particle don't update rotation settings
2018-12-04Fix T58117: Crash with keyframing, take twoSergey Sharybin
More operators need to become aware of action possibly being gone.
2018-12-04Fix T58117: Crash with keyframingSergey Sharybin
2018-11-14Merge branch 'master' into blender2.8Campbell Barton
2018-11-14Cleanup: comment block tabsCampbell Barton
2018-11-06Implement an Armature constraint that mimics the modifier.Alexander Gavrilov
The main use one can imagine for this is adding tweak controls to parts of a model that are already deformed by multiple other major bones. It is natural to expect such locations to deform as if the tweaks aren't there by default; however currently there is no easy way to make a bone follow multiple other bones. This adds a new constraint that implements the math behind the Armature modifier, with support for explicit weights, bone envelopes, and dual quaternion blending. It can also access bones from multiple armatures at the same time (mainly because it's easier to code it that way.) This also fixes dquat_to_mat4, which wasn't used anywhere before. Differential Revision: https://developer.blender.org/D3664
2018-10-31Cleanup: styleCampbell Barton
2018-10-31Add an option to do keyframe insertion in a cycle-aware fashion.Alexander Gavrilov
When enabled, inserting keyframes into F-Curves with simple cyclic extrapolation (the same conditions as required for cycle-aware auto handle smoothing to activate) will take the cycle into account: - Keyframes that are being inserted outside of the cycle bounds are remapped to be inside the cycle. Thus it is not necessary to be within the main iteration of the cycle when tweaking. This becomes especially useful in the final animation tweaking phase when the channel keys may be staggered for overlap, so the actual master period is different for different channels. - Modifying one of the end points of a cycle also changes the other end point when appropriate, to preserve smooth transition. This feature applies to both manual keyframe insertion using 'I', and auto-keyframing. Differential Revision: https://developer.blender.org/D3140
2018-10-22Followup to previous change, reduce number of relations updatesSergey Sharybin
Only tag relations update when new f-curve was allocated. This solves possible too slow keyframe insertion when doing character animation, but still does proper relation update when new ID component became animated.
2018-10-22Depsgraph: Fix missing relation updateSergey Sharybin
The issue was happening when adding animation to properties which affects different components of IDs. Reported by Philipp Oeser as part of T56636.
2018-10-22Mark TODO/XXX as solvedSergey Sharybin
We do have proper access to bmain now.
2018-09-27Merge branch 'master' into blender2.8Brecht Van Lommel
2018-09-27Spelling fixes in comments and descriptions, patch by luzpaz.Brecht Van Lommel
Differential Revision: https://developer.blender.org/D3732
2018-07-03Fix T55709: Pose Library - Add New Pose crashesSybren A. Stüvel
2018-07-02Merge branch 'master' into blender2.8Campbell Barton
2018-07-02Cleanup: use bool for poll functionsCampbell Barton
2018-06-11Drivers: ensure Python expressions are cached with copy-on-write.Brecht Van Lommel
Store the compiled expressions on the original driver. Ref T55442.
2018-06-08Fix T55404: Auto key with only-available doesn't workSergey Sharybin
2018-06-07Merge branch 'master' into blender2.8Bastien Montagne
Conflicts: source/blender/editors/animation/anim_deps.c source/blender/editors/animation/keyframing.c source/blender/editors/animation/keyingsets.c source/blender/editors/armature/pose_edit.c source/blender/editors/armature/pose_transform.c source/blender/editors/gpencil/gpencil_convert.c source/blender/editors/include/ED_anim_api.h source/blender/editors/include/ED_keyframing.h source/blender/editors/interface/interface_anim.c source/blender/editors/space_action/action_edit.c source/blender/editors/space_graph/graph_edit.c source/blender/editors/space_outliner/outliner_draw.c source/blender/editors/transform/transform_conversions.c source/blender/makesrna/intern/rna_armature.c source/blender/makesrna/intern/rna_pose.c source/blender/python/intern/bpy_rna_anim.c source/blenderplayer/bad_level_call_stubs/stubs.c source/gameengine/Converter/KX_BlenderSceneConverter.cpp
2018-06-07Cleanup: remove moar G.main usages.Bastien Montagne
Notes: * Really need to address RNA setters case, end up adding way too much G.main here these days... :/ * Added Main pointer into bAnimContext, helps a lot in anim code ;)
2018-06-06Fix broken auto-keying after copy/paste of poses.Bastien Montagne
That bug was also likely affecting other cases - basically it was making auto-keying always key from evaluated ('visual') values, never base, data values... Added a flag, in some cases we do want evaluated values here, obviously.
2018-06-04Merge branch 'master' into blender2.8Campbell Barton
2018-06-04Cleanup: strip trailing space in editorsCampbell Barton
2018-06-01Merge branch 'master' into blender2.8Campbell Barton
2018-06-01Cleanup: trailing whitespace (comment blocks)Campbell Barton
Strip unindented comment blocks - mainly headers to avoid conflicts.
2018-05-30Cleanup: quiet warningCampbell Barton
2018-05-30Tweak for previous commit: Just group all bone properties under the bone nameJoshua Leung
After more testing, I realised that bendy bone properties should also be grouped, but probably all other per-bone settings too. Now, just group all of them, since it's easier for everyone this way.
2018-05-30Insert Keyframe: Change default behaviour for how F-Curves get groupedJoshua Leung
For many years, animators have been complaining about how keyframing a (transform) property directly would leave them ungrouped, while keyframing them using a Keying Set would put them into a group based on the name of the keyingset. This commit attempts to improve (unify + make consistent) the default behaviour: * All object transforms now get added to an "Object Transforms" group, regardless of whether they were added individually via buttons or keyingset * All bone transforms now get added to a group corresponding to the name of the bone instead of only the ones added via keyingset
2018-05-19WIP COW Fix: Insert keyframe operators/api now queries depsgraph for ↵Joshua Leung
evaluated data When using copy on write, insert keyframe operators were reading from old bmain data instead of COW data. This meant that inserting keyframes would often read old/stale data, resulting in invalid keyframes getting created (e.g. from last transform operation, instead of actual current state). This commit makes it so that keyframing operators will ask depsgraph for the evaluated copy of the data, so that it can read values from that. It introduces a new function - `DEG_get_evaluated_rna_pointer()`, which when working correctly/fully, should work just like the other `DEG_get_evaluated_*()` functions, except it lets you pass in an RNA Pointer. However, currently, this is only done for Pose Bones (as a dirty hack, since this is an important/pivotal requirement for production) and/or datablock properties directly (since we can just use the DEG_get_evaluated_id() directly). on the datablock. Committing to a branch for now as this all needs more testing. More work to come later at a more sane time of day!
2018-05-02Depsgraph: Make bAction a part of dependency graphSergey Sharybin
There are various values which depends on context in there, for example current driver value and original DNA value f-curve is applied for. This partially fixes issue with not being able to tweak keyed values when material preview is open. The material preview is not being currently updated against non-keyed changes since every tweak of material property does full preview scene depsgraph evaluation.
2018-04-20Merge remote-tracking branch 'origin/master' into blender2.8Gaia Clary
2018-04-20Fix: D3160 Propose to use proper typedefs to avoid confusionGaia Clary
Differential Revision: https://developer.blender.org/D3160
2018-04-05Remove workspace object mode, reverts changes w/ 2.8Campbell Barton
This caused too many problems syncing object modes with multiple objects/windows/workspaces, see: D3130 for details.
2018-03-02Merge branch 'master' into blender2.8Campbell Barton