在一些对象上添加three.js中的文本

时间:2016-05-19 05:53:59

标签: three.js

我在为three.js脚本添加文本方面遇到了困难。我搜索了很多,但无论我在哪里找到工作模型,它都使用以前版本的three.js,因此我无法使用它。文本几何也似乎不起作用。我想添加3d文本,而不是2d。

1 个答案:

答案 0 :(得分:1)

你应该经常检查three.js的官方例子。最新的three.js有很多提示。

首先,您需要加载new THREE.FontLoader的字体文件。字体文件应该在JS文件中,如http://threejs.org/examples/fonts/optimer_bold.typeface.js。您可以使用http://gero3.github.io/facetype.js/

将字体转换为JS
var font;
var loader = new THREE.FontLoader();
loader.load( 'path/to/fontfile.js', function ( response ) {
    font = response;
} );

然后使用字体使用new THREE.TextGeometry类创建文本几何体。

var textGeo = new THREE.TextGeometry( text, {
    font: font,
    size: size,
    height: height,
    curveSegments: curveSegments,
    bevelThickness: bevelThickness,
    bevelSize: bevelSize,
    bevelEnabled: bevelEnabled,
    material: 0,
    extrudeMaterial: 1
});

然后,制作一个网格

new THREE.Mesh( textGeo, material );