<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<TITLE>Message</TITLE>

<META content="MSHTML 6.00.2900.5726" name=GENERATOR></HEAD>
<BODY>
<DIV><FONT face=Arial size=2><SPAN 
class=343385320-23012009>Hi,</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=343385320-23012009></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN class=343385320-23012009>The new IK 
algorithms developed at the KUL use the uBLAS template library from boost for 
matrix definition and operation.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=343385320-23012009>In order to minimize 
code change when porting to Blender, I&nbsp;am asking if it would be acceptable 
to add that library in blender/extern.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=343385320-23012009></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN class=343385320-23012009>It is a template 
library, so it will not increase the size of the executable more than necessary. 
</SPAN></FONT><FONT face=Arial size=2><SPAN class=343385320-23012009>It allows 
high level abstraction and yet it is almost as fast as an add-hoc C 
implementation because it&nbsp;uses&nbsp;the advanced technique of template 
expressions. The drawback is that it requires a modern C compiler: gcc 3.2.3 and 
above, MSVC 7.1 and above, ICC 8.0 and above (older compiler are supported with 
an earlier version of the library). I guess&nbsp;this is not a limiting 
factor?</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=343385320-23012009>In terms of number 
of files,&nbsp;I extracted a subset of boost that contains all the necessary 
files to compile uBLAS:&nbsp;10Mb in 1650 files.&nbsp;</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=343385320-23012009></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN class=343385320-23012009>The alternative is 
to implement add-hoc C functions&nbsp;or reuse the TNT template library that 
is&nbsp;used by&nbsp;IK_Solver (intern/iksolver/intern/TNT). This library is 
much smaller and provide similar&nbsp;functionality but it is not as 
fast.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=343385320-23012009></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN class=343385320-23012009>For the interested 
ones, I've started a wiki on the IK project: <A 
href="http://wiki.blender.org/index.php/GameEngineDev/RobotIKSolver">http://wiki.blender.org/index.php/GameEngineDev/RobotIKSolver</A></SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=343385320-23012009></SPAN></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=343385320-23012009>/benoit</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN 
class=343385320-23012009></SPAN></FONT>&nbsp;</DIV></BODY></HTML>