我将尝试使用Threejs + react-three/fiber创建3D文字。 我使用字体加载器来加载字体,代码如下:
const font = new FontLoader().parse('/Microsoft Tai Le_Regular.json');
之后我尝试在网格中使用 <component>
组件,但由于某些原因它无法工作,而其他类型的几何体则可以正常工作。
<mesh>
<textGeometry /> // this can't even be compiled ( maybe it has to do with typescript
</mesh>
遇到这个问题后,我尝试在js中创建textGeometry而不是jsx。所以我做了以下操作:
const textOptions = {
font: font,
size: props.size,
height: props.height,
curveSegments: 12,
bevelEnabled: true,
bevelThickness: 10,
bevelSize: 8,
bevelOffset: 0,
bevelSegments: 5
};
const textGeo = new TextGeometry(props.text, textOptions);
并将'textGeo'传递给网格几何属性
<mesh
geometry={textGeo}
>
仍然无法工作,并显示以下错误: 无法访问属性“yMax”,data.boundingBox未定义
谢谢您的帮助,