2014-12-05 3 views
1

내 행동을 추가 한 후 일정 acceration '제거하는 방법 :PhysicsJs - 세계 행동 "다음과 같이 추가되는 초기화에

world.add([ 
    Physics.behavior('interactive', { el: renderer.el }), 
    Physics.behavior('constant-acceleration'), 
    Physics.behavior('body-impulse-response'), 
    Physics.behavior('sweep-prune'), 
    edgeBounce 
]); 

내가 나중에 제거하고 싶습니다를 .은 "일정한 가속"행동을 내가 제거() 메서드를 사용하여 말했다 게시물의 몇 가지를 읽을 수 있지만 난 아무것도 그것을 좋아하여 일어날받지 못했습니다 다음과

world.remove(Physics.behavior('constant-acceleration')); 

사람이 조언을 할 수있는 방법 내가 할 수있는 세계가 추가 된 후 특정 행동을 제거하는 것을 달성합니까?

+1

필자는 PhysicsJS 경험이 없지만''Physics.behavior' (http://bit.ly/1G0cBqX) 문서는''Physics.behavior'를 호출 할 때'Behavior' 객체가 반환됨을 나타냅니다. (왜냐하면 새로운 것이 생성되기 때문이다). 따라서'world.add' 배열에 넣은 호출로부터 돌아 오는'Behavior' 객체에 대한 참조를 유지하고 그 참조를 ['world.remove']에 전달해야합니다 (http : /bit.ly/12sjySu) 나중에. 지금과 같이, 당신은 새로운'Behavior' (처음 만든 것과는 별도)를 만들고, 바로 그 새로운 객체를'world.remove'에 즉시 넘깁니다. 이것은 기본적으로 아무것도하지 않을 것입니다. – ajp15243

+0

그게 전부 였어! 감사! 답변으로 의견을 변환하면 동의 할 것입니다. – Ribs

+0

완료! 그것이 기쁜 것입니다. – ajp15243

답변

0

Physics.behavior 문서는 Physics.behavior을 호출 할 때 Behavior 개체가 반환된다는 것을 나타냅니다 (새 개체를 구성하기 때문에). 따라서 world.add 배열에 넣은 호출에서 다시 얻으려는 Behavior 객체에 대한 참조를 유지해야하며 나중에 해당 참조를 world.remove에 전달해야합니다. 지금은 처음으로 만든 것과 완전히 다른 Behavior을 만들고 바로 새 객체를 world.remove으로 전달합니다. 기본적으로 아무 것도 수행하지 않습니다.