Commit Graph

92 Commits

Author SHA1 Message Date
Campbell Barton d1f4827a40 IK plugin range check was wrong, could do out of bounds reads. 2013-06-27 19:52:50 +00:00
Campbell Barton ec8d277c64 BLI_math rename functions:
- mult_m4_m4m4 -> mul_m4_m4m4
- mult_m3_m3m4 -> mul_m3_m3m4

these temporary names were used to avoid problems when argument order was switched.
2013-05-26 18:36:25 +00:00
Campbell Barton 6de829cb7a code cleanup: split scons includes onto multiple lines, reduce chance of include conflicts later on. 2013-05-20 18:42:28 +00:00
Campbell Barton ddddb7bab1 code cleanup: favor braces when blocks have mixed brace use. 2013-03-09 03:46:30 +00:00
Campbell Barton 0ac07404ba style cleanup: braces with multi-line statements, also add some comments. 2013-03-01 14:47:06 +00:00
Benoit Bolsee 0028418fe8 fix bug #33275: iTaSC ignores location of disconnected bones when they are changed in pose mode.
Disconnected bones can be translated in pose mode but this translation
cannot be applied to the iTaSC representation of the armature because
there is no joint associated with it. As a result, moving disconnected
bones had no effect. The bug fix is in two parts:
1) manual or rna change in the armature pose will cause automatic
   rebuilding of the iTaSC scene
2) the iTaSC scene is now built from the current pose instead of
   armature rest pose
2012-12-29 19:43:08 +00:00
Campbell Barton 857df8065f style cleanup 2012-12-28 14:19:05 +00:00
Bastien Montagne ba14beb000 Code cleanup: add usual 'BKE_' prefix to 'public' constraint functions from blenkernel... 2012-12-23 11:31:15 +00:00
Bastien Montagne ab2c273b12 Added GPL header to sconscripts!
Also changed shebang to '#!/usr/bin/env python', this is more portable across unixes...
2012-12-17 08:01:43 +00:00
Campbell Barton 7c699a217a define the size of matrix args for both rows/cols. 2012-12-11 14:29:01 +00:00
Benoit Bolsee d261d65bda Fix bug #33176: Deactivating both position and rotation target from iTaSC IK-Solver crashes Blender. No constraint is created for target in that case, just needed to add a check. 2012-12-06 22:23:58 +00:00
Campbell Barton 0b9be70591 typo's and some style cleanup, also added asserts into BLI_vsnprintf and BLI_sprintfN when invalid args are given. 2012-11-28 06:43:04 +00:00
Brecht Van Lommel d8c257faa7 IK Solver:
* Rename Legacy to Standard, it's not being deprecated as far as I know.
* Make option to toggle off Location solving work with Standard.
* Make it converge a bit better in some cases by enforcing a minimum number of
  iterations before giving up.
* Move IK solver choice out of bone panel, it's an armature level setting and
  should be set there.
2012-11-24 00:18:34 +00:00
Jason Wilkins 9a5cc8235a Last fix to get_plugin in ikplugin_api.c was off by one in the wrong direction. 2012-11-13 11:31:54 +00:00
Jason Wilkins 2243ab514a 2012-11-13 00:54:57 +00:00
Jason Wilkins d0570c3e39 fix syntax error when disabling both IK solvers 2012-11-12 08:39:27 +00:00
Campbell Barton f70d2c65d8 rename api functions...
- minf, maxf, mini, maxi --> min_ff, max_ff, min_ii, max_ii
2012-10-23 13:28:22 +00:00
Campbell Barton f3ece5a108 style cleanup: trailing tabs & expand some non prefix tabs into spaces. 2012-10-21 05:46:41 +00:00
Campbell Barton 3a947cf537 code cleanup: remove redundant casts 2012-10-14 08:49:01 +00:00
Campbell Barton 97d4fb4161 code cleanup: make header defines more consistent, JOYSENSOR header guard had a typo too. 2012-10-09 13:36:42 +00:00
Brecht Van Lommel 72da7722dd Fix #32770: iTaSC IK solver not working correct with bones that have stretch with
have all rotation axes disabled.
2012-10-05 13:11:16 +00:00
Campbell Barton d724d0adfe code cleanup: quiet warnings for gcc's -Wundef, -Wmissing-declarations 2012-09-16 00:26:36 +00:00
Campbell Barton d75a66674d code cleanup: remove deprecated defines and some struct members 2012-09-06 00:33:59 +00:00
Campbell Barton aaafa0c2fe code cleanup: move file string defines into BLI_path_utils.h, BKE_utildefines is now unused but keep incase we want to add defines there later. 2012-09-03 22:04:14 +00:00
Brecht Van Lommel fa6a8b8090 Fix #32389: scons was compiling without iksolver and only itasc since a few days,
which gave performance issues.
2012-08-23 10:56:14 +00:00
Campbell Barton 47e313ec0c cmake option to build without iksolver 2012-08-18 13:36:29 +00:00
Thomas Dinges 3151a9f145 Fix compile error, IK_STRETCH_STIFF_EPS was undefined. 2012-07-29 19:50:03 +00:00
Campbell Barton f608b3c444 code cleanup:
- building without python works again
- rename maxi/mini to i_max/i_min (so thay are available for function names)
- some minor edits to IK stretch setting (no functional changes).
2012-07-29 17:49:14 +00:00
Campbell Barton c41e1e434a code cleanup: replace MIN2/MAX2 with minf/maxf 2012-07-29 16:59:51 +00:00
Campbell Barton 2cd0b3f064 defines to make it easier to manage ik stretch constants (these may need to be tweaked to fix [#32174]) 2012-07-27 23:16:33 +00:00
Campbell Barton 81829f5221 code cleanup: use const for passing vectors 2012-07-11 12:42:02 +00:00
Campbell Barton cfb7aee017 style cleanup 2012-07-07 22:51:57 +00:00
Bastien Montagne 468ef74ed7 More spell and typo fixes (mostly visualise->visualize, grey->gray, normalise->normalize). 2012-07-03 19:09:07 +00:00
Campbell Barton 1597ad9377 style cleanup 2012-07-01 09:54:44 +00:00
Benoit Bolsee 2b889eea8d Fix [#31430] part 2: crash in iTaSC when end effector is a fixed bone. This situation was causing access to invalid index in the joint angle array although the end effector doesn't need any joint angle to compute its pause. Fixed this by changing the internal API of joint array: return pointer instead of reference so that NULL pointer can be returned instead of crashing when the index is invalid. 2012-06-07 08:16:41 +00:00
Benoit Bolsee ef850d75f5 Fix unaligned array crash in Eigen3 because of compilation option. The EIGEN_DONT_ALIGN_STATICALLY compilation option was added for Win32 only in revision 41283 because of some compilation problem. But this option is causing alignment problem for Eigen3 local variables when SSE optimization is enabled. I do not have any compilation problem when the option is not defined, so I just remove it as it should. 2012-06-07 08:04:58 +00:00
Benoit Bolsee e063ea222c Fix bug [#31588]: iTaSC does not handle armature scaling correctly. iTaSC solver operates in world reference, therefore armature scale is used to build the ik scene. But the scaling was not taken out when applying the pose at the end of the simulation. 2012-06-03 12:06:42 +00:00
Campbell Barton 57c292daf0 style cleanup 2012-05-25 09:51:53 +00:00
Brecht Van Lommel 29a1a05aa5 Fix #31430: itasc solver assertion failure with debug builds. 2012-05-18 15:06:23 +00:00
Campbell Barton 1dccd4c98a code cleanup: naming - pose/armature/image
also use ..._find_name(..., name) rather then ..._find_named(..., name) --- both were used.
2012-05-05 16:03:57 +00:00
Campbell Barton e701f9b670 style cleanup: whitespace / commas 2012-04-29 15:47:02 +00:00
Campbell Barton b340f930ec style cleanup: changes to brace placement / newlines - for/while/if/switch 2012-04-28 06:31:57 +00:00
Bastien Montagne 3dcd5a196d Fix [#31008] IK armature resize goes ugly (Pose mode resize).
This affected legacy solver. Note that even if I don't expect any, this fix *may* break some other IK setups, so animators, please check your IK rigs using legacy solver. ;) Easy to revert if needed, anyway.

Note that iTaSC solver is also buggy with some scaled parent, but here IK'ed bones just can’t get scaled in any way (either from parent or from there own transformation)... Will try to find what's happenning, though the code is even harder than legacy solver to follow :/
2012-04-20 17:26:40 +00:00
Campbell Barton 07065b27b8 style cleanup 2012-03-28 05:03:24 +00:00
Campbell Barton b8a71efeba style cleanup: follow style guide for/with/if spacing 2012-03-24 07:52:14 +00:00
Campbell Barton 81d8f17843 style cleanup: pep8, indentation 2012-03-24 07:36:32 +00:00
Campbell Barton 5a90ea77bc style cleanup: follow style guide for formatting of if/for/while loops, and else if's 2012-03-24 06:24:53 +00:00
Campbell Barton 89a963fb7f style cleanup: comment blocks 2012-03-09 18:28:30 +00:00
Campbell Barton 7bbf4b7831 style cleanup
- spelling - turns out we had tessellation spelt wrong all over.
- use \directive for doxy (not @directive)
- remove BLI_sparsemap.h - was from bmesh merge IIRC but entire file commented and not used.
2012-03-02 16:05:54 +00:00
Campbell Barton e6c5ff95be patch [#30331] Support clang-3.0
from Yasuhiro Fujii (y-fujii)

only small part of the patch for now.
2012-02-28 05:19:54 +00:00