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
2017-01-16Cleanup/refactor: move BKE_deform_flip_side_name & co to BLI_string_utilsBastien Montagne
Functions like that do not have anything to do in BKE really, even less when actually more used for bones than vgroups!
2017-01-16Cleanup/refactor: get rid of fixed name limit in BKE_deform_flip_side_name & co.Bastien Montagne
Those were forcing to use vgroup name define in bones area, or even mixing with maxbonename... ugly, and totally avoidable.
2016-07-13Fix T48839: Selection from pose mode gives wrong snap resultsCampbell Barton
Current code changes the selection then then runs ED_armature_sync_selection to copy to the bones rootsel flag from the parents tipsel. Use this logic for entering edit-mode too.
2016-05-29Fix T48507: Symmetrize doesn't work properly on Bendy BonesJoshua Leung
2016-05-17Bendy Bones: Advanced B-Bones for Easier + Simple RiggingJoshua Leung
This commit/patch/branch brings a bunch of powerful new options for B-Bones and for working with B-Bones, making it easier for animators to create their own rigs, using fewer bones (which also means hopefully lighter + faster rigs ;) This functionality was first demoed by Daniel at BConf15 Some highlights from this patch include: * You can now directly control the shape of B-Bones using a series of properties instead of being restricted to trying to indirectly control them through the neighbouring bones. See the "Bendy Bones" panel... * B-Bones can be shaped in EditMode to define a "curved rest pose" for the bone. This is useful for things like eyebrows and mouths/eyelids * You can now make B-Bones use custom bones as their reference bone handles, instead of only using the parent/child bones. To do so, enable the "Use Custom Reference Handles" toggle. If none are specified, then the BBone will only use the Bendy Bone properties. * Constraints Head/Tail option can now slide along the B-Bone shape, instead of just linearly interpolating between the endpoints of the bone. For more details, see: * http://aligorith.blogspot.co.nz/2016/05/bendy-bones-dev-update.html * http://aligorith.blogspot.co.nz/2016/05/an-in-depth-look-at-how-b-bones-work.html -- Credits -- Original Idea: Daniel M Lara (pepeland) Original Patch/Research: Jose Molina Additional Development + Polish: Joshua Leung (aligorith) Testing/Feedback: Daniel M Lara (pepeland), Juan Pablo Bouza (jpbouza)
2016-05-06Cleanup: warningsCampbell Barton
Values set but not used
2015-09-18Use squared length where possibleCampbell Barton
2015-09-13Cleanup: spellingCampbell Barton
2015-09-04Fix T46010: Bone offset between Rest Pose and Edit mode.Bastien Montagne
That one was hairy... To summarize: * We were setting Bone.head/tail (aka **local** rest location of bone) from EditBone data, using **EditBone's parent computed armature space**. * We use those local head/tail to define Bone's restpose (in `BKE_armature_where_is_bone()`), using **Bone's parent armature space** (aka parent's arm_mat). * Because of bone's roll nightmare, the two above parent's matrices will often not be the same. In an ideal world, this should not affect locations (head/tail), but in real world of float it does - noticeably, in some extreme cases. So! This commit cleans up things a bit (`fix_bonelist_roll()` was already doing much more than just fixing roll mess, has been renamed to `armature_finalize_restpose()`), and ensures we do use (final!) parent's arm_mat local space to compute children's local head/tail as well. This allows us to avoid too much imprecision here. Checked the patch also with a complete Victor's rig from Gooseberry, seems to have no nasty side effects - fingers crossed!
2015-09-04Armature: Cheap edit-to-object mode speedup.Bastien Montagne
`fix_bonelist_roll()` is already recursive, and was calling recursive `BKE_armature_where_is_bone()` twice! Changed `BKE_armature_where_is_bone()` to controll whether we recurse over children or not. With full Victor's rig, we gain 16% in `ED_armature_from_edit()` (from 31ms to 26ms). With a dummy test-case 100 bones chain, we gain 80% in `ED_armature_from_edit()` (from 1.25ms to 0.25ms). Not crucial, but still worth it. ;)
2015-06-12Armature: add armature dissolveCampbell Barton
Works like mesh dissolve (access from delete or Ctrl+X)
2015-03-28Use union for EditBone'sCampbell Barton
Avoids complicated casts accessing as int
2014-05-07Style cleanupCampbell Barton
2014-05-05Make bpy.types.EditBone.matrix writeable.Bastien Montagne
Makes importing armatures from matrices (FBX...) *much* easier.
2014-02-07ListBase API: add utility api funcs for clearing and checking emptyCampbell Barton
2013-12-17'Transform' Python Function for armature, curve and lattice.Campbell Barton
patch by Paolo Acampora with some edits.
2013-11-22fix for active bone not saving in editmode.Campbell Barton
2013-11-22Armature Editing: select shortest path (Ctrl+RMB matching mesh operator)Campbell Barton
Patch originally from Terry Struven, modified to use more generic functions.
2013-11-16code cleanup: armature functionsCampbell Barton
- added BKE_pose_channel_get_mirrored (matching editmode function ED_armature_bone_get_mirrored) - editbone_name_exists -> ED_armature_bone_find_name
2013-11-16code cleanup: rename flip_side_name to BKE_deform_flip_side_nameCampbell Barton
2013-10-31code cleanup: spellingCampbell Barton
2013-09-09Fix #36663, Bone properties sometimes vanish when mousing into properties ↵Lukas Toenne
window. Active edit bone was cleared from armature after each file save, even though the edit data is not actually freed then. Without the active edit bone the poll functions for bone panels fail.
2013-07-25adjust createSpaceNormalTangent so it can take values from a matrix without ↵Campbell Barton
having to negate the plane first. also add ED_armature_ebone_to_mat3/4 since there were quite a few places that did this inline.
2013-07-16move ED_armature_edit_bone_select() into a more general utility function so ↵Campbell Barton
view3d-select bone operators can use it and get matching selection behavior when entering editmode. - specifically - write to the connected parents tipsel flag when setting the rootsel flag.
2013-07-16fix for the tip of the bones without connected children de-selecting when ↵Campbell Barton
entering editmode.
2013-07-11fix [#36099] Undo crashes on an armature with ID-PropertiesCampbell Barton
armatures undo state now stores ID-properties.
2013-03-11code cleanup:Campbell Barton
- move recursive bone/parent check into ED_armature.h - remove unused vars - use const for paint vector args.
2013-02-28code cleanup: includesCampbell Barton
2013-02-28fix for linking with recent armature refactor, was also missing file from ↵Campbell Barton
CMakeLists.txt.
2013-02-28Code Maintenance - Splitting up Armature/Pose Editing FilesJoshua Leung
This commit splits editarmature.c and poseobject.c into several files, such that certain types of functionality are (mostly) self-contained within particular files (instead of being mixed in with other functionality in a large file). In particular, this was done so that: 1) Armature EditMode tools are now in the armature_*.c files only, and Pose Mode tools in pose_*.c files only. - In one or two cases, this hasn't been possible as the two modes rely on much of the same shared infrastructure. 2) The "clear loc/rot/scale" operators and pose show/hide are no longer housed in editarmature.c 3) Selection operators, Transform operators, structural (add/delete) operators, and supporting utilities for the modes (enter/exit/roll-calculations) are not all interleaved in an ad-hoc manner Notes: * I've tried to ensure that the history of the new files has been maintained by doing svn copy {editarmature.c/poseobject.c} {armature_*.c/pose_*.c} Unfortunately, this means that the diffs are a bit messy. * There should be no functional/logic changes here. Just code moving around and cosmetic comment tweaks where needed. * #includes have largely been untouched for now, but could be cleaned up later * CMake changes untested, but should work in theory.