diff --git a/SDK/Python/blender_script.py b/SDK/Python/blender_script.py
index cc250c9307b60b1991272a5912e573757c47c5be..1a567e429af02eec04e2746398ebe6c5ab8830f8 100644
--- a/SDK/Python/blender_script.py
+++ b/SDK/Python/blender_script.py
@@ -253,7 +253,7 @@ ftlImageWrite.argtypes = [c_void_p, c_int, c_int, c_int, c_int, c_void_p]
 
 ftlPoseWrite = ftl.ftlPoseWrite
 ftlPoseWrite.restype = c_int
-ftlPoseWrite.argtypes = [c_void_p, c_void_p]
+ftlPoseWrite.argtypes = [c_void_p, c_int, c_void_p]
 
 ftlDestroyStream = ftl.ftlDestroyStream
 ftlDestroyStream.restype = c_int
@@ -282,7 +282,11 @@ def render_and_save(filename, cameras):
             ftlCheck(ftlIntrinsicsWriteRight(c_void_p(stream), c_int(i), c_int(int(image.intrinsics.width)), c_int(int(image.intrinsics.height)), c_float(image.intrinsics.fx), c_float(image.intrinsics.cx), c_float(image.intrinsics.cy), c_float(image.intrinsics.baseline), c_float(image.intrinsics.min_depth), c_float(image.intrinsics.max_depth)))
             
             # This line needs fixing
-            ftlCheck(ftlPoseWrite(stream, image.pose.astype(np.float32).ctypes.data_as(c_void_p)))
+            M = np.identity(4,dtype=np.float32)
+            M[0:3,0:4] = image.pose
+            M = np.transpose(M)
+            M = np.linalg.inv(M)
+            ftlCheck(ftlPoseWrite(stream, c_int(i), M.ctypes.data_as(c_void_p)))
 
             ftlCheck(ftlImageWrite(stream, c_int(i), 0, 5, 0, image.imL.ctypes.data_as(c_void_p)))
             ftlCheck(ftlImageWrite(stream, c_int(i), 2, 5, 0, image.imR.ctypes.data_as(c_void_p)))