2016-11-11 5 views
-2

웹 작업자에서 일부 작업을 수행하려고하는 객체, Three.js로 만든 메쉬에 배열이 있습니다. 따라서 질문은 어떻게 그들을 근로자에게 게시합니까?자바 스크립트를 사용하여 웹 작업자에게 Three.js 메시 보내기

나는 무언가를 ArrayBuffer이라는 것을 사용하는 객체를 전달할 수있는 것으로 알고 있지만 내 객체 배열을 변환하는 방법에 대한 정보는 찾을 수 없습니다. 아니면 이것이 가능하지 않을까요?

+0

읽기 MDN 기사 주제, 그들은 꽤 분명하다. transferable 및 ArrayBuffer가 무엇인지 확실하지 않은 것 같습니다. MDN은 귀하의 불확실성을 해결할 것입니다. –

답변

1

개체가 이미 이진 버퍼 형식으로되어 있지 않으면 해당 형식으로 변환하여 되돌릴 때 성능상의 이점이 없습니다. 웬일인지, 이것은 대부분의 Web Socket 사용자가 이해하지 못하는 것입니다. 이런 질문은 항상 묻습니다. 내 대답은 항상 동일합니다 - 당신의 관심사는 성능이 경우, 아무것도 변환하지 않습니다 : (

worker.postMessage :

그냥 '일반 좋은 똑똑한를 사용을 myArray);

당신은 어떤 이유로 나는이 대답에 대화 형 조각을 사용하여 내 주장을 사실은 확인해 주시기 성능에 대한 틀렸다 생각한다면 다음에

+0

감사합니다! 작업자의 메쉬 개체를 재생성하는 JSON 구조로 메쉬를 변환합니다. – arpo

+0

@arpo 변환하지 마십시오. 브라우저가 처리하게하면 괜찮을 것입니다. 배열을'postMessage'에 직접 놓기 만하면 작업자가 그것을 받게됩니다. –

+0

그게 내가 시도한 첫 번째 일 이었어. 그것은 나 에게이 오류를 준다 : "잡히지 DOMException : '작업자'에 'postMessage'를 실행하지 못했습니다 : 개체를 복제 할 수 없습니다." – arpo