pmndrs/use-cannon

Can't pass instanced bodies to useConstraint

オープン

#50 opened on 2020/03/28

 (0 件のコメント) (1 件のリアクション) (0 人の担当者)TypeScript (164 件のフォーク)github user discovery
enhancementhelp wanted

Repository metrics

Stars
 (2,950 個のスター)
PR merge metrics
 (30d に merged PR はありません)

説明

Creating constraints between instanced meshes isn't possible at the moment.

From #48 @drcmda

we could maybe learn from react-springs playbook here, esp useSprings: https://www.react-spring.io/docs/hooks/use-springs

const [refs, api] = useDistanceConstraints(10000, () => ({ ... }))
return data.map((id, index) => <mesh key={id} ref={refs[index]} ... />

I think this would be a good pattern for constraints on instanced bodies. An iterator function that returns an array of two indexes could attach a standard mesh to instanced meshes or instanced mesh to instanced mesh.

const [bodyA] = useBox({...})
const [bodyB] = useSphere({...}) // ref for instancedMesh

useDistanceConstraints(count, bodyA, bodyB, fn: (i) => [0, i], options, deps]) // where fn returns [bodyAIndex, bodyBIndex]

コントリビューターガイド