[Bf-extensions-cvs] SVN commit: /data/svn/bf-extensions [2283] trunk/py/scripts/addons/ io_shape_mdd/import_mdd.py: patch [#28311] Fix MDD import for blender 2.59
Campbell Barton
ideasman42 at gmail.com
Mon Aug 29 02:11:39 CEST 2011
Revision: 2283
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-extensions&revision=2283
Author: campbellbarton
Date: 2011-08-29 00:11:36 +0000 (Mon, 29 Aug 2011)
Log Message:
-----------
patch [#28311] Fix MDD import for blender 2.59
by Nick Keeline (nrk)
Modified Paths:
--------------
trunk/py/scripts/addons/io_shape_mdd/import_mdd.py
Modified: trunk/py/scripts/addons/io_shape_mdd/import_mdd.py
===================================================================
--- trunk/py/scripts/addons/io_shape_mdd/import_mdd.py 2011-08-27 20:47:21 UTC (rev 2282)
+++ trunk/py/scripts/addons/io_shape_mdd/import_mdd.py 2011-08-29 00:11:36 UTC (rev 2283)
@@ -50,6 +50,7 @@
time = unpack((">%df" % frames), file.read(frames * 4))
print('\tpoints:%d frames:%d' % (points, frames))
+ print('\tstart frame:%d step:%d' % (frame_start, frame_step))
# If target object doesn't have Basis shape key, create it.
if not obj.data.shape_keys:
@@ -59,41 +60,42 @@
scene.frame_current = frame_start
- def UpdateMesh(ob, fr):
+ def UpdateMesh(ob, fr, step):
# Insert new shape key
new_shapekey = obj.shape_key_add()
new_shapekey.name = ("frame_%.4d" % fr)
- obj.active_shape_key_index = len(obj.data.shape_keys.keys) - 1
- index = len(obj.data.shape_keys.keys) - 1
+ obj.active_shape_key_index = len(obj.data.shape_keys.key_blocks) - 1
+ index = len(obj.data.shape_keys.key_blocks) - 1
obj.show_only_shape_key = True
- verts = obj.data.shape_keys.keys[len(obj.data.shape_keys.keys) - 1].data
+ verts = obj.data.shape_keys.key_blocks[len(obj.data.shape_keys.key_blocks) - 1].data
for v in verts: # 12 is the size of 3 floats
v.co[:] = unpack('>3f', file.read(12))
+
# me.update()
obj.show_only_shape_key = False
# insert keyframes
shape_keys = obj.data.shape_keys
- scene.frame_current -= 1
- obj.data.shape_keys.keys[index].value = 0.0
- shape_keys.keys[len(obj.data.shape_keys.keys) - 1].keyframe_insert("value")
+ scene.frame_current -= step
+ obj.data.shape_keys.key_blocks[index].value = 0.0
+ shape_keys.key_blocks[len(obj.data.shape_keys.key_blocks) - 1].keyframe_insert("value")
- scene.frame_current += 1
- obj.data.shape_keys.keys[index].value = 1.0
- shape_keys.keys[len(obj.data.shape_keys.keys) - 1].keyframe_insert("value")
+ scene.frame_current += step
+ obj.data.shape_keys.key_blocks[index].value = 1.0
+ shape_keys.key_blocks[len(obj.data.shape_keys.key_blocks) - 1].keyframe_insert("value")
- scene.frame_current += 1
- obj.data.shape_keys.keys[index].value = 0.0
- shape_keys.keys[len(obj.data.shape_keys.keys) - 1].keyframe_insert("value")
+ scene.frame_current += step
+ obj.data.shape_keys.key_blocks[index].value = 0.0
+ shape_keys.key_blocks[len(obj.data.shape_keys.key_blocks) - 1].keyframe_insert("value")
obj.data.update()
for i in range(frames):
- UpdateMesh(obj, i)
+ UpdateMesh(obj, i, frame_step)
return {'FINISHED'}
More information about the Bf-extensions-cvs
mailing list