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
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)
2015-07-10DNA: replace GCC poison with ifdef for enumsCampbell Barton
2015-03-04Fix for snap to cursor /w parents (object/pose)Campbell Barton
Also don't use pose-bone transform unless the user is in pose-mode.
2013-12-10DNA Deprecation: add DNA_DEPRECATED_GCC_POISON for enum/structs.Campbell Barton
also fully remove freestyle raycasting_algorithm
2013-11-22fix for active bone not saving in editmode.Campbell Barton
2013-06-16replace strcat with BLI_strcpy_rlen in draw_selected_name(), view3d function.Campbell Barton
also fix for incorrect flag checking for shape key pin.
2012-12-21Armature bone feature:Ton Roosendaal
New Bone option: "Relative Parenting". This makes Child-Objects of Bones transform similar to how deformations of bones are calculated. Allows to move bones in editmode to set pivot. The option is in Bone Panel, with clear label. It is ON now by default when you add new bones Requested by Kjartan, our famous robot designer :) For "hard body rigs" it's very useful.
2012-10-21style cleanup: trailing tabs & expand some non prefix tabs into spaces.Campbell Barton
2012-09-27incorrect spelling in commentsCampbell Barton
2012-07-03More spell and typo fixes (mostly visualise->visualize, grey->gray, ↵Bastien Montagne
normalise->normalize).
2012-06-15Ensure enums in DNA files has got explicit valuesSergey Sharybin
See http://wiki.blender.org/index.php/Dev:Doc/CodeStyle#Macros.2C_Enums.2C_Inline_functions
2012-06-03Part-Bugfix, Part-Feature Completion: 'Armature' Option for Mask ModifierJoshua Leung
finally works This commit finally hooks up the Mask Modifier's "Armature" option with the relevant depsgraph updates on bone selection. Hence, this feature finally works as it was originally intended - that is, bone selections can be used to control which parts of the mesh that the mask modifier is applied to are displayed, giving riggers more freedom to experiment with rigs that don't necessarily feature overbearing/cluttering widgets. Regarding the implementation ("has_viz_deps" flag): This feature is just the "tip of the iceberg" of a number of related set of rigging/visual animation tools I've had in mind for a while now (dating back to the introduction of this modifier). Key considerations - Not all rigs will use this, so we don't want an extra (depsgraph-flush + search) recalc cost for those that don't use this. - There are some planned features which will also use this
2012-04-12fix [#30907] Inset tool with Select Outer disabled does not allow ↵Campbell Barton
translation of new faces inset with select-inner faces gave invalid selection. also correct spelling in some comments.
2012-03-18spelling cleanupCampbell Barton
2012-03-09style cleanup: comment blocksCampbell Barton
2012-02-17unify include guard defines, __$FILENAME__Campbell Barton
without the underscores these clogged up the namespace for autocompleation which was annoying.
2012-01-11Longer names support for all ID and other object namesSergey Sharybin
This commit extends limit of ID and objects to 64 (it means 63 meaning characters and 1 for zero-terminator). CustomData layers names are also extended. Changed DNA structures and all places where length constants were hardcoded. All names which are "generating" from ID block should be limited by MAX_ID_NAME-2, all non-id names now has got own define called MAX_NAME which should be used all over for non-id names to make further name migration stuff easier. All name fields in DNA now have comment with constant which corresponds to hardcoded numeric value which should make it easier to further update this limits or even switch to non-hardcoded values in DNA. Special thanks to Campbell who helped figuring out some issues and helped a lot in finding all cases where hardcoded valued were still used in code. Both of forwards and backwards compatibility is stored with blender versions newer than January 5, 2011. Older versions had issue with placing null-terminator to DNA strings on file load which will lead to some unpredictable behavior or even crashes.
2011-12-30minor dna header cleanupCampbell Barton
2011-08-12Bye bye vile relics of extinct version control systems,Joshua Leung
Causing a flurry of refresh file prompts post-commit, Confusing local diffs and causing merge conflicts, Stating the obvious; redundant and useless... We shall not miss thou, blasted expand $keywords$
2011-07-26BGE Animations: Adding a new choice for vertex deformation for armatures, ↵Mitchell Stokes
which can be found in the Armature's Skeleton panel by the Deform options. Before only Blender's armature_deform_verts() was used. Now users can choose a vertex deformation function that is optimized for the BGE. At the moment it is mostly a copy of armature_deform_verts() with various chunks of code removed, and the BLI_math code was replaced with Eigen2. In my test scene, the new function offered about a 40% improvement over armature_deform_verts() (17~19ms rasterizer to 11~12ms). The only current limitation that I'm aware of if that B-Bone segments are not supported in the BGE version, and I will probably leave it out. I would like to also limit the BGE version to 4 weights to make things easier for a GPU version, but this may just make things slower (sorting weights to find the top 4).
2011-05-26New experimental drawtype for armatures: "Wire"Joshua Leung
This is equivalent to using B-Bones which are all scaled to have xwidth=zwidth=0, which can be useful to see how some limbs will bend, without the overhead of blocks blocking the view or having to scale down bone sizes first.
2011-02-17DNA header files are now grouped under the same module. No further ↵Nathan Letwory
documentation done.
2011-02-13enforce string limits (reported by pedantic checking tools & some developers).Campbell Barton
mostly replace strcpy with BLI_strncpy and multiple strcat's with a BLI_snprintf(). also fix possible crash if CWD isnt available.
2011-02-05Fix bones moving when changing between editmode and posemode.Brecht Van Lommel
Patch #25901 by Tobias Oelgarte. Bone transformations would be converted back and forth between different representations when changing modes, which due to numerical errors could lead to bone transformations slowly changing as you edit the armature. Now the editmode head, tail and roll values are stored in bones and used directly when entering edit mode. Head and tail were already there but now we ensure they are the exact same value, roll was not yet there, so we have a version patch for it. The sub version was incremented to 1 for the version patch.
2010-12-12Bugfix #25179Ton Roosendaal
Armature properties: layer buttons now show which ones are in use, like object layers.
2010-12-08Changed armature active bone so it is separate from selection this is ↵Campbell Barton
consistent with active object, mesh editmode, curves & metaballs. - active is no longer assumed to be selected. this fixes a simple bug - eg: Adding a new armature, entering pose mode and toggling selection failed. - outliner editbone selection now works like object and pose mode. - mouse selection sets the bone active even when the tip is selected. - active, unselected bones draw as wire color with a 15% tint of the selected color.
2010-12-03- added GCC warning -Wstrict-prototypesCampbell Barton
- fixed bug in paste material, exposed by stricter warnings. - removed/renamed various shadowed vars. - removed BGE lamp.colour, only allow lamp.color attribute.
2010-12-03fix for some pedantic warnings.Campbell Barton
2010-10-19use unsigned int for all layers.Campbell Barton
2010-07-122.5: remove armature "B-Bone Rest" option, this was only added to keepBrecht Van Lommel
broken behavior for backwards compatibility, it's been there long enough now to be removed.
2010-02-12correct fsf addressCampbell Barton
2010-01-08Animation Visualisation Cleanups - Part 2:Joshua Leung
* Finished baking code for motion paths, generalising it so that it works for both Objects and Bones. It is based on the old code for baking bones, although I have modified the updating code to use a more 'correct' method of updating dependencies. However, this may turn out to be too slow, and another API method should be added for that... * Moved some of the old version-patching code for animviz settings out of the drawing functions, instead doing this on the version patching proper. * Added RNA support for the new AnimViz types, and included RNA access via their users too. The old settings have still been left in for now, since there are still some things not ready to use yet. ---- * F-Curve's with sample points (i.e. sounds to F-Curves) now perform linear interpolation between sample points instead of using constant interpolation.
2010-01-01Cleanup of MotionPaths+Ghosts (AnimViz) - Part 1Joshua Leung
This commit sets up some of the groundwork necessary to extend the animation visualisation capabilities, previously only available for bones in PoseMode, to Objects as well. Also, some of the other goals of this refactor is to make future visualisation goodies (i.e. editable paths) more feasible... (There's really nothing to see here yet. The following log notes are really just for my own reference to keep track of things.) Currently, the following things have been done: * New datastructures + settings have been tidied up, ready for usage * Added these new types into the Object and PoseBone code as necessary, with freeing/adding/copying accounted for * File IO code for the new data, including version patching to convert the old system to the new one. * Set up the drawing system for motionpaths based on the old armature path drawing code. Armatures still draw using the old system, since the two systems use different storage systems. * Started setting up the motionpath 'baking' code, but the core of this still needs to be coded... Next Steps (after some semi-urgent Durian Driver changes): * Port the ghosting/onionskinning code over too * Finish motionpath baking code * RNA wrapping for the new types * Hooking up all the new code into the operators, etc.
2009-11-28Durian Rigging Requests: (Armature Layers + Rotation Locking Tweaks)Joshua Leung
* Increased the number of Armature and Bone Layers from 16 to 32. Please note that older versions of Blender may not correctly resolve the layers that bones are on when loading new files. * Newly added objects are now made by default to allow locking of 4-component rotations using 4 separate locks (i.e. one by component) instead of requiring the obscure 'W' toggle (renamed '4L' now) to be enabled first. The objects in the default scene need modifying manually though.
2009-11-25Pose Bone "Local Location" option. This is enabled by default, disabling itBrecht Van Lommel
puts the bone location in pose space rather than local bone space.
2009-11-10use armature active bone as a pointer rather then a flag for each bone that ↵Campbell Barton
needs looking up. - rna vars arm.bones.active & rna.edit_bones.active - needed special undo support. - readfile.c loads. - duplicate and copy_armature support. - keep the draw flag, renamed to BONE_DRAW_ACTIVE, only use for openGL drawing. Note: it may be better to allow active/unselected as with objects.
2009-11-01Rigging Goodies: Spline IK ConstraintJoshua Leung
At last, this commit introduces the Spline IK Constraint to Blender. Spline IK is a constraint that makes n bones follow the shape of a specified curve. Simply add a chain of bones, add a curve, add a Spline IK Constraint to the tip bone and set the number of bones in the chain to make it work. Or, try the following test file: http://download.blender.org/ftp/incoming/250_splineik_spine01.blend Screenshots of this in action (as proof): http://download.blender.org/ftp/incoming/b250_splineik_001_before.png http://download.blender.org/ftp/incoming/b250_splineik_001_after.png I've implemented this in a similar way to how standard IK solvers are done. However, this code is currently not an IK plugin, since I imagine that it would be useful to be able to combine the 2 types of IK. This can be easily changed though :) Finally, a few notes on what to expect still: * Constraint blending currently doesn't affect this. Getting that to work correctly will take a bit more work still. * Options for not affecting the root joint (to make it easier to attach the chain to a stump or whatever), and non-uniform scaling options have yet to be added. I've marked the places where they can be added though * Control over the twisting of the chain still needs investigation. Have fun!
2009-10-28Added support for custom RNA properties on Bones, only worked forBrecht Van Lommel
PoseChannel previously.
2009-09-21* Added AnimData for Armature data, for animating armature/bone settings.Matt Ebb
This allows you to do funky things like animating the number of segments in a b-bone.
2009-07-19Store sketch in armature instead of ugly global.Martin Poirier
Like edit data, this isn't saved, just a temp pointer used during work session. Also bring back sketching panel for 3d view.
2009-01-022.5Ton Roosendaal
From the anti-globalization department: G.obedit terminated! Wherever possible, use CTX_data_edit_object(C) to get this now. It's stored in scene now, and the screen context has it defined.
2008-12-192.5Joshua Leung
Merged 'backend' changes from AnimSys2. Many of these changes are necessary for the Dopesheet and other changes I'm currently still stabilising. Those will come in due course.
2008-11-11Chain rotations for objects and pose bones (for teamto)Martin Poirier
This commit adds an exception for rotations (standard rotation and tracball) to still work on children of transformed objects and bones in an expected fashion. That is, you can select a chain of finger bones and rotate to flex them all at once. Notes: [1] This could be expended to other transformations if needed. [2] Center of transformation is determined using the same principle as hinge bones (transformed children aren't taken into account)
2008-07-27Patch #17336: Lock bones in edit modeJoshua Leung
Submitted by: Lorenzo Pierfederici (lento) This patch adds the ability to lock transformation on bones in edit mode, to protect them from accidental editing. Bones can be locked from the editing buttons, the transform property panel, the specials popup menu or the python api.
2008-04-17Patch from GSR that a) fixes a whole bunch of GPL/BL licenseChris Want
blocks that were previously missed; and b) greatly increase my ohloh stats!
2008-03-25Two constraints related fixesJoshua Leung
* Bugfix #8599d: When using the ChildOf constraint on bones without parents, with cyclic-offset in action the effect of the cyclic-offset was applied twice. Added a bone option to make the effect of cyclic-offset not be applied to rootbones which have the option 'enabled'. In the UI, this is presented in the opposite way. It is represented by the 'Offs' button beside the parent-bone selector in the Armature Bones panel when in EditMode. * Head/Tail setting and Constraint Channels: Added back in checks to see if the head/tail IPO-curves for Constraint Channels can get applied for the target constraint. I had removed these when applying the patch, but I'd overlooked the fact that users could add an IPO-curve for this from the IPO-editor, potentially mucking up the behaviour of some constraints.
2008-02-06Bugfixes:Joshua Leung
* Action Editor "Open/Close Level" now works with Action Groups. Groups have priority over Action Channels for collapsing/expanding. * Custom bone shapes using the new 'wire' option, were drawing with the wrong wireframe colour at times (i.e. when out of posemode, this happened quite often). * Fixed/added a few comments in various places
2008-01-30== Custom Bone Shape Drawing - 'Wireframe' Option ==Joshua Leung
In production rigs, such as those for Peach and Plumiferos, custom bone shapes are often simple wireframe shapes (formed with a single line). These are only visible when the armature's drawtype is Wire, which means that this drawtype must be used for the display of those bones. On the other hand, 'normal' bones must also be drawn as wireframes. I've added a small toggle beside the field for the name of the object to use. This is marked 'W' (this is not great, but it'll have to do for now). When activated, that bone's custom bone shape will always draw as a wireframe. As a result, the armature's drawtype doesn't have to be set to 'Wire' to see these bones.
2007-12-09== Armature - Ghosting Feature (Cessen request) ==Joshua Leung
Added a new option for Armature Ghosting: Only draw ghosts for selected bones. This is activated by toggling the "Sel" button beside the GStep: field. Note: this does not give any speed increases, as the whole pose must be recalculated for each ghost. In fact, it might even cause minor performance decreases, due to the need to tag and un-tag bones before/after drawing the set of ghosts.
2007-12-09== Armature Visualisation - A few additions ==Joshua Leung
* Added an option to make frame numbers of keyframes draw on bone-paths even when frame numbers for other points are not shown. * Added a new ghosting method, which only shows the keyframes within a range.