Sergey Sharybin
af0e6b31a5
Depsgraph: Fix frash with iTaSC solver
...
This commit reverts part of a fix for T33275, but things are:
- I can not reproduce the original issue at all, so doesn't seem to
cause any regressions.
- It is really bad idea to do delayed initialization in the threaded
environment, it's a straight way to some nasty issues.
- We can't do things like this anyway because we go more granular,
meaning such a delayed initialization will fail in the case of
having several IK solvers (unless they properly accommodate to
changed bone head).
- Verified the fix with various files from Mango project and all of
them seems to work nice with new depednency graph now (old depsgraph
has some flickering, but it's not related on DEG itself, but on
an environment with lots of proxies and threaded evaluation and it
is not a new behavior).
2016-11-15 16:18:59 +01:00
Campbell Barton
c206b7cbb6
Correct error in non-uniform scale IK commit
...
Rename arg to avoid confusion
2016-07-08 21:13:19 +10:00
Campbell Barton
9510137d12
Cleanup: brace placement /w structs
2015-04-07 11:25:42 +10:00
Campbell Barton
023ac217dd
Cleanup: set var static
2014-09-24 14:55:01 +10:00
Campbell Barton
8489b94e07
Math Lib: rename mul_serie_m3 to mul_m3_series & reorder args
...
Importantly, reversed mul_serie_m3 argument order (so it matches the m4 function)
2014-07-21 18:57:35 +10:00
Campbell Barton
7c7b7302d3
Math Lib: use variable length args for mul_serie_m3,m4 (instead of trailing NULL's)
2014-07-20 14:01:42 +10:00
Campbell Barton
3216e4b202
API Cleanup: Use BKE_constraint prefix for constraint api
2014-04-11 11:47:07 +10:00
Campbell Barton
b3afbcab8f
ListBase API: add utility api funcs for clearing and checking empty
2014-02-08 06:24:05 +11:00
Dalai Felinto
8a8ee2c601
fix #T37894: IK constraint desactivation does not work as expected
...
patch suggested by Séverin Lemaignan (skadge)
2014-01-14 14:45:00 -02:00
Campbell Barton
24c807ffd4
Code Cleanup: unused defines & style
2013-12-30 10:58:18 +11: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
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
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
f70d2c65d8
rename api functions...
...
- minf, maxf, mini, maxi --> min_ff, max_ff, min_ii, max_ii
2012-10-23 13:28:22 +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
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
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
81829f5221
code cleanup: use const for passing vectors
2012-07-11 12:42:02 +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
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
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
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
Campbell Barton
47c373c7a9
style cleanup (mostly whitespace)
2012-02-27 10:35:39 +00:00
Brecht Van Lommel
3311164b24
Math lib: matrix multiplication order fix for two functions that were
...
inconsistent with similar functions & math notation:
mul_m4_m4m4(R, B, A) => mult_m4_m4m4(R, A, B)
mul_m3_m3m4(R, B, A) => mult_m3_m3m4(R, A, B)
For branch maintainers, it should be relatively simple to fix things manually,
it's also possible run this script after merging to do automatic replacement:
http://www.pasteall.org/27459/python
2011-12-16 19:53:12 +00:00
Brecht Van Lommel
b5a57b193d
Fix #29041 : parenting problem with tree IK for iTaSC and iksolver, where it
...
would use the wrong bone as parent on brancing. Patch by Juha Maki-Kanto.
2011-11-13 13:08:15 +00:00
Campbell Barton
96d73bfdcf
replace VECCOPY with copy_v3_v3, same for 2d copy, also added vec copy functions for int & char.
2011-11-07 01:38:32 +00:00
Campbell Barton
4a04f72069
remove $Id: tags after discussion on the mailign list: http://markmail.org/message/fp7ozcywxum3ar7n
2011-10-23 17:52:20 +00:00
Campbell Barton
b11f29c8ac
clear some c++ warnings.
2011-03-27 07:56:29 +00:00
Nathan Letwory
13a540a41d
doxygen: blender/ikplugin tagged.
2011-02-27 20:24:49 +00:00
Nathan Letwory
5b607701a7
doxygen: prevent GPL license block from being parsed as doxygen comment.
2011-02-23 10:52:22 +00:00
Campbell Barton
8f21a43535
split BKE_utildefines.h, now it only has blender specific defines like GS() MAKE_ID, FILE_MAXDIR, moved the generic defines to BLI_utildefines.h.
...
no functional changes.
2011-01-07 18:36:47 +00:00
Campbell Barton
74059891e9
option to disable ITASC IK solver, (will be enabled by default ofcourse)
...
- option only available to cmake, scons and make have this enabled always.
- without this clang/llvm can compile blender
- this was the second biggest internal lib, 192mb -> 172mb for all blenders libs (with debug flags), so gives some speedup to linking.
2010-09-12 12:27:12 +00:00
Campbell Barton
3bf2715039
apply visual transform to pose
...
So constrainted bones can have their transform applied to their loc/scale/rot, then remove the constraints
2010-02-19 15:34:26 +00:00