我正在尝试将精灵定位在正交相机的底部中心。
这是我目前拥有的 -
物体:
function Obj() {
const texture = useLoader(THREE.TextureLoader, loadedimg);
const spriteRef = useRef();
return (
<group>
<sprite
position={[1, ???, 0]}
ref={spriteRef}
scale={[texture.image.width * 1.5, texture.image.height * 1.5, 1]}
>
<spriteMaterial
attach="material"
map={texture}
sizeAttenuation={false}
/>
</sprite>
</group>
);
}
相机渲染:
<Canvas orthographic camera>
<Suspense fallback={<React.Fragment>loading...</React.Fragment>}>
<Obj />
</Suspense>
</Canvas
我试图想出一个可以适用于所有不同精灵的计算(它们都有不同的高度,因此例如它们中的一个将通过设置定位在底部,position={[1, -128, 0]}
而对于另一个坐标只会让它浮动由于它的高度较短)。我查看了文档,center
精灵的属性似乎没有做我想要的,我看到的所有示例都将它放置在屏幕的角落或中间。谢谢你的帮助 !