diff --git a/package-lock.json b/package-lock.json
index 89f73fe4c6e6fbecf2d06e51f2c27b72284ae991..7f4a7c708ef3d3420cd61f72aaa6293616df428a 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -8957,7 +8957,7 @@
       "dev": true
     },
     "networked-aframe": {
-      "version": "github:mozillareality/networked-aframe#b0ece8ba80479fa6912969fa03bc4cf3f30c4026",
+      "version": "github:mozillareality/networked-aframe#1dd7e0aa62bd119c214fec7e9137d4447f40cba0",
       "from": "github:mozillareality/networked-aframe#master",
       "requires": {
         "buffered-interpolation": "^0.2.4",
diff --git a/src/network-schemas.js b/src/network-schemas.js
index e639aa899a1e931df1b97b25761a4c7080d55a83..8cef8df1653e06a89e25b5ecf046748606a7eeb2 100644
--- a/src/network-schemas.js
+++ b/src/network-schemas.js
@@ -1,15 +1,19 @@
 function registerNetworkSchemas() {
   const vectorRequiresUpdate = epsilon => {
-    let prev = null;
-    return curr => {
-      if (prev === null) {
-        prev = new THREE.Vector3(curr.x, curr.y, curr.z);
-        return true;
-      } else if (!NAF.utils.almostEqualVec3(prev, curr, epsilon)) {
-        prev.copy(curr);
-        return true;
-      }
-      return false;
+    return () => {
+      let prev = null;
+
+      return curr => {
+        if (prev === null) {
+          prev = new THREE.Vector3(curr.x, curr.y, curr.z);
+          return true;
+        } else if (!NAF.utils.almostEqualVec3(prev, curr, epsilon)) {
+          prev.copy(curr);
+          return true;
+        }
+
+        return false;
+      };
     };
   };