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
2015-09-21Armature drawing: custom shape scale optionsCampbell Barton
- Custom scale: Avoids having multiple custom-shapes at different sizes. - Option not to use bones length: So changes in edit-mode don't resize the custom-shape.
2015-09-21Fix view-selected w/ custom bone shapesCampbell Barton
Was ignoring bone-length, also check that drawing shapes is enabled.
2015-09-04Cleanup: Better to assert over bad condition (which shall never happen ↵Bastien Montagne
anyway), than just return with un-initialized mat...
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-09-03View-Selected: use custom bones boundboxCampbell Barton
Support using custom pose-bone transform and object when calculating view bounds.
2015-09-01Assert vec_roll_to_mat3_normalized's gets a normalized vectorCampbell Barton
2015-08-13Add real boundbox support to lattice, and update armature one.Philipp Oeser
* draw lattice boundingboxes in 3dView [if "show_bounds" is used -- an option previously pretty useless for lattices] * give proper values for lattice objects ".bound_box" in bpy * give proper values for armature objects ".bound_box" in bpy * lets users use "Dimensions" [in 3dView Transform panel] on lattices and armatures * remove redundant calculations in "boundbox_armature()" Armatures boundingboxes were already drawn in 3dView, if "show_bounds" was used. Based on report T45735: Lattice's bounding_box doesn't update, and a comment in code by @campbellbarton ("later we may want to add dimensions for lattice, armature etc too"). Revision: https://developer.blender.org/D1460
2015-05-12Cleanup: styleCampbell Barton
2015-05-12Depsgraph: Add evaluation callbacks for granular nodes updateSergey Sharybin
This commit only adds callbacks which then later be used with major dependency graph commit, keeping the upcoming commit more clean to follow. Should be no functional changes so far still.
2015-05-12Depsgraph: Move update-related functions into own filesSergey Sharybin
Currently it is just moving existing functions into a new file, but in the future those new files will be grown much more due to upcoming more granular scene updates. Should be no functional changes.
2015-04-04Cleanup: use float math funcsCampbell Barton
2015-04-04Cleanup: use BKE_animdata_* prefixCampbell Barton
2015-03-30Cleanup: use const for typeinfoCampbell 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.
2015-01-31Compiler warning: double-promotionCampbell Barton
2015-01-26Cleanup: strcmp/strncmp -> STREQ/STREQLEN (in boolean usage).Bastien Montagne
Makes usage of those funcs much more clear, we even had mixed '!strcmp(foo, bar)' and 'strcmp(foo, bar) == 0' in several places...
2015-01-15Bugfix: Wrong flags used in Spline IK eval for bounds limitsJoshua Leung
2015-01-13Fixes for SplineIK:Joshua Leung
* Ensure that when new constraints are created, the new settings have sensible default values. TODO: we need to version-patch old files * Fix problem with variable shadowing (which wasn't causing problems AFAIK)
2015-01-13Bugfix: The "bulge_min" setting for the Stretch To constraint prevented ↵Joshua Leung
bones from shrinking below 1.0 scale From the looks of things, this was a typo. The result was that if you had a bone with the minimum volume restriction in place, the bone would not get any thinner when it was stretched out.
2015-01-13Pataz-Gooseberry Request: Limits on Volume Preservation for Spline IKJoshua Leung
This commit adds a new type of volume preservation mode to Spline IK which makes it possible to set limits on the minimum and maximum scaling of bone "fatness". * The old volume preseving mode has been kept but renamed, to avoid breaking old rigs. "Volume Presevation" uses the new method, while "Inverse Preservation" is the old one. * The code and settings for this new xz scale mode are directly lifted from the improved Stretch To constraint
2015-01-09Fix T43159: Copying of linked datablocks using relpath leads to invalid ↵Bastien Montagne
paths in new copies. Propper fix reverting most of rB60e70c0c6014e5, which was only partial specific fix. This code uses generic `BKE_id_lib_local_paths()` func to handle all possible paths. Reviewers: sergey, campbellbarton Differential Revision: https://developer.blender.org/D977
2014-12-08Fix T42824: Proxy bone custom-shape lost on undoCampbell Barton
2014-11-16Cleanup: use BLI_listbase_*** prefix for count,sort,sort_rCampbell Barton
2014-11-04Fix-for-fix ik-spline clamp existing files tooCampbell Barton
2014-10-29Cleanup: warnings, typosCampbell Barton
2014-10-23Fix T42367: Spline-ik offset evaluating curveCampbell Barton
2014-10-23Spline IK: use malloc, arrays are filled instantlyCampbell Barton
2014-09-24Cleanup: use float versions of functions when in/output are floatsCampbell Barton
2014-07-21Math Lib: rename mul_serie_m3 to mul_m3_series & reorder argsCampbell Barton
Importantly, reversed mul_serie_m3 argument order (so it matches the m4 function)
2014-07-20Math Lib: use variable length args for mul_serie_m3,m4 (instead of trailing ↵Campbell Barton
NULL's)
2014-07-19Defines: replace ELEM3-16 with ELEM(...), that can take varargsCampbell Barton
2014-05-21Fix T40271: recalculation of the bone roll does not work correctly.Bastien Montagne
Check that up_axis is not aligned with bone was wrong in at least two aspects (not working against negative alignement case, and since ages it seems, using Z axis when bones are along Y axis...). Also optimized a bit here, better to have a normalized version of vec_roll_to_mat3(), since it needs normalized vector anyway, and we have to normalize it for the tests before calling it anyway (so now, we only do that twice in Transform code, instead of three times). And we can perform aling test *before* calling vec_roll_to_mat3!
2014-05-03Fix T40001: Opening a 2.66 blend file in 2.7, a bone appear "rolled but not ↵Bastien Montagne
rolled". Looks like some sign was lost in that complex matrix algebra (always be wary of squared values!).
2014-04-30Code cleanup: remove unused includesCampbell Barton
Opted to keep includes if they are used indirectly (even if removing is possible).
2014-04-29Code cleanup: remove redundant matrix initializationCampbell Barton
2014-04-17Fix T39766: bone calculation from edit mode goes wrongBastien Montagne
Own logic error in previous commit...
2014-04-16Fix T39750: Bones disappearing with strange transforms.Bastien Montagne
Fixed this issue and another similar one, and some minor optimizations.
2014-04-11API Cleanup: Use BKE_constraint prefix for constraint apiCampbell Barton
2014-04-06Better code for (bone axis + roll) to matBastien Montagne
See T39470 and D436. Code by @tippisum, with some minor edits by @mont29. Tested with various rigs, including Rigify, CGcookie flex rig, and gooseberry/pataz caterpillar. Riggers, please test it, no change expected in behaviour. Reviewers: aligorith CC: tippisum Differential Revision: https://developer.blender.org/D436
2014-04-01Code cleanup: remove TRUE/FALSE & WITH_BOOL_COMPAT defineCampbell Barton
2014-03-29Code cleanup: replace dot with len_squared and is_zero checksCampbell Barton
2014-03-05Fix for invalid custom data checks in armature and lattice functions.Lukas Tönne
Testing for custom data availability with getVertData and index 0 fails on assert for empty meshes (the index must be in valid range). Better use getVertDataArray which has no requirement for specific index.
2014-02-24Fix T38755: Crash when having cyclic dependency and curve deformSergey Sharybin
Issue was caused by undefined object update order and in some cases NULL pointer will be de-referenced. Added on-demand curve path calculation, just the same creepy call of BKE_displist_make_curveTypes(). This violates DAG and might end up in a difficult to troubleshoot race condition if there'll be some issues with how dependencies are calculated in DAG, but this is the easiest and safest way to solve the bug at this stage,
2014-02-07ListBase API: add utility api funcs for clearing and checking emptyCampbell Barton
2014-02-02Code cleanup: suffix vars to make obvious they are squaredCampbell Barton
2014-02-01Math lib: simplify size_to_mat4 and use in b_bone_spline_setupCampbell Barton
2014-01-15Python/Depsgraph: bpy.data.*.is_updated now detects add/remove of any datablock.Tom Edwards
Previously this only worked for some datablocks relevant to rendering, now it can be used to detect if any type of datablock was added or removed (but not yet to detect if it was modified, we need many more depsgraph tags for that). Most of the changes are some function parameter changes, the important parts are the DAG_id_type_tag calls. Reviewed By: sergey, brecht Differential Revision: https://developer.blender.org/D195
2014-01-13Remove direct displist creation from curve deformSergey Sharybin
This solves threading conflict which happens when having multiple objects using Curve Deform modifier with the same curve datablock. This conflict was caused by the fact that curve_deform_verts() used to temporary override curve's flags to make it path is there. Actually, it was setting CU_FOLLOW flag temporary which was only used where_on_path() (only in terms that this temporary assignment only affected this function) but it is now commented out for a while, so no reason to set this flag temporary, If it's ever to be done, we'll need to pass flags as an additional function argument. For the path creation i've extended DegNode structure which now holds extra bits which indicates what additional data depending on the graph topology is to be evaluated. Currently this is only used to indicate that curve needs path to be evaluated regardless to cu->flag state. This is so Curve Deform modifier is always happy. In the future this flag might also be used to indicate whether bmesh verts are to update (see recent commit to 3-vertex parent crash fix) or to indicate that the object is the motherball etc.
2013-11-25Code Cleanup: rename vars for detecting change to be more consistentCampbell Barton
rename change/is_change/is_changed/modified -> changed also use bools over int/short/char and once accidental float.
2013-11-10replace IS_EQ -> IS_EQF for use with floats.Campbell Barton