瀏覽代碼

Fixes bug in evaluate() when interpolation type is SMOOTH, STEP or LINEAR

Kieran Cunney 14 年之前
父節點
當前提交
194470ddf8
共有 1 個文件被更改,包括 3 次插入3 次删除
  1. 3 3
      gameplay/src/Curve.cpp

+ 3 - 3
gameplay/src/Curve.cpp

@@ -216,18 +216,18 @@ void Curve::evaluate(float time, float* dst) const
         }
         }
         case LINEAR:
         case LINEAR:
         {
         {
-            interpolateLinear(t, from, to, dst);
+            // Can just break here because linear formula follows switch
             break;
             break;
         }
         }
         case SMOOTH:
         case SMOOTH:
         {
         {
             interpolateHermiteSmooth(t, index, from, to, dst);
             interpolateHermiteSmooth(t, index, from, to, dst);
-            break;
+            return;
         }
         }
         case STEP:
         case STEP:
         {
         {
             memcpy(dst, from->value, _componentSize);
             memcpy(dst, from->value, _componentSize);
-            break;
+            return;
         }
         }
         case QUADRATIC_IN:
         case QUADRATIC_IN:
         {
         {