瀏覽代碼

Fix Animation::subtract_variant for affine transforms

kleonc 2 年之前
父節點
當前提交
87935ca837
共有 1 個文件被更改,包括 2 次插入2 次删除
  1. 2 2
      scene/resources/animation.cpp

+ 2 - 2
scene/resources/animation.cpp

@@ -5554,10 +5554,10 @@ Variant Animation::subtract_variant(const Variant &a, const Variant &b) {
 			return (b.operator Quaternion()).inverse() * (a.operator Quaternion());
 			return (b.operator Quaternion()).inverse() * (a.operator Quaternion());
 		}
 		}
 		case Variant::TRANSFORM2D: {
 		case Variant::TRANSFORM2D: {
-			return (b.operator Transform2D()).inverse() * (a.operator Transform2D());
+			return (b.operator Transform2D()).affine_inverse() * (a.operator Transform2D());
 		}
 		}
 		case Variant::TRANSFORM3D: {
 		case Variant::TRANSFORM3D: {
-			return (b.operator Transform3D()).inverse() * (a.operator Transform3D());
+			return (b.operator Transform3D()).affine_inverse() * (a.operator Transform3D());
 		}
 		}
 		default: {
 		default: {
 			return Variant::evaluate(Variant::OP_SUBTRACT, a, b);
 			return Variant::evaluate(Variant::OP_SUBTRACT, a, b);