浏览代码

EditorControls: Add duplicate pointer ID fix. (#27749)

Michael Herzog 1 年之前
父节点
当前提交
3606ee1044
共有 1 个文件被更改,包括 16 次插入0 次删除
  1. 16 0
      editor/js/EditorControls.js

+ 16 - 0
editor/js/EditorControls.js

@@ -136,6 +136,10 @@ class EditorControls extends THREE.EventDispatcher {
 
 			//
 
+			if ( isTrackingPointer( event ) ) return;
+
+			//
+
 			addPointer( event );
 
 			if ( event.pointerType === 'touch' ) {
@@ -392,6 +396,18 @@ class EditorControls extends THREE.EventDispatcher {
 
 		}
 
+		function isTrackingPointer( event ) {
+
+			for ( var i = 0; i < pointers.length; i ++ ) {
+
+				if ( pointers[ i ] == event.pointerId ) return true;
+
+			}
+
+			return false;
+
+		}
+
 		function trackPointer( event ) {
 
 			var position = pointerPositions[ event.pointerId ];