[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [21587] branches/itasc/source/blender/ ikplugin/intern/itasc_plugin.cpp: iTaSC: handle negative frame number.
Benoit Bolsee
benoit.bolsee at online.be
Tue Jul 14 23:00:24 CEST 2009
Revision: 21587
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=21587
Author: ben2610
Date: 2009-07-14 23:00:15 +0200 (Tue, 14 Jul 2009)
Log Message:
-----------
iTaSC: handle negative frame number. Shift time line by 2^31 (in ms) internally to make all frame look positive. Only drawback is that rest pose takes a whole 8K buffer by itself, to be fixed later.
Modified Paths:
--------------
branches/itasc/source/blender/ikplugin/intern/itasc_plugin.cpp
Modified: branches/itasc/source/blender/ikplugin/intern/itasc_plugin.cpp
===================================================================
--- branches/itasc/source/blender/ikplugin/intern/itasc_plugin.cpp 2009-07-14 20:49:45 UTC (rev 21586)
+++ branches/itasc/source/blender/ikplugin/intern/itasc_plugin.cpp 2009-07-14 21:00:15 UTC (rev 21587)
@@ -885,12 +885,12 @@
for (i=0; i<ikscene->numchan; i++) {
ikscene->channels[i].pchan->flag |= POSE_DONE;
}
- double timestamp = ctime * frtime;
+ double timestamp = ctime * frtime + 2147483.648;
double timestep = frtime;
bool reiterate = false;
if (ikscene->cache) {
iTaSC::CacheTS sts, cts, dts;
- sts = cts = (iTaSC::CacheTS)(timestamp*1000.0);
+ sts = cts = (iTaSC::CacheTS)(timestamp*1000.0+0.5);
if (ikscene->cache->getPreviousCacheItem(ikscene->armature, 0, &cts) == NULL || cts == 0) {
// the cache is empty before this time, reiterate
reiterate = true;
More information about the Bf-blender-cvs
mailing list