pmndrs/use-cannon

Can't pass instanced bodies to useConstraint

开放

#50 创建于 2020年3月28日

 (0 条评论) (1 个反应) (0 位负责人)TypeScript (164 个派生)github user discovery
enhancementhelp wanted

仓库指标

星标
 (2,950 个星标)
PR 合并指标
 (30 天内没有已合并 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]

贡献者指南