前段时间,我写过一个threejs旧版本(56)的字体加载(http://blog.csdn.net/qq_29026209/article/details/73431442),但是因为更新需要,所以重新更博。
其实也很简单,导入的变成JSON格式的字体。
var loader1 = new THREE.FontLoader();
loader1.load( 'fonts/FangSong_Regular.typeface.json', function (font) {
text = createText(new THREE.TextGeometry( "电梯1", {
font: font,
size: 2,
height: 1,
curveSegments: 1
}));
text.rotation.x =0.5*Math.PI;
text.position.x = 20;
text.position.y = -76;
text.position.z = 5;
scene.add(text);
});
function createText( geom ) {
geom.computeBoundingBox();
var materials = [
new THREE.MeshBasicMaterial( { color: Math.random() * 0xffffff, overdraw: 0.5 } ),
new THREE.MeshBasicMaterial( { color: 0x000000, overdraw: 0.5 } )
];
var mesh = new THREE.Mesh( geom, materials );
return mesh;
}
注意:
其实也很简单,导入的变成JSON格式的字体。
var loader1 = new THREE.FontLoader();
loader1.load( 'fonts/FangSong_Regular.typeface.json', function (font) {
text = createText(new THREE.TextGeometry( "电梯1", {
font: font,
size: 2,
height: 1,
curveSegments: 1
}));
text.rotation.x =0.5*Math.PI;
text.position.x = 20;
text.position.y = -76;
text.position.z = 5;
scene.add(text);
});
function createText( geom ) {
geom.computeBoundingBox();
var materials = [
new THREE.MeshBasicMaterial( { color: Math.random() * 0xffffff, overdraw: 0.5 } ),
new THREE.MeshBasicMaterial( { color: 0x000000, overdraw: 0.5 } )
];
var mesh = new THREE.Mesh( geom, materials );
return mesh;
}
注意:
1.将字体文件转化成js的,请使用facetype.js(请去github搜索下载),由于转化结果是js的,咱们需要转成如下的JSON格式:
下面这张是js格式的,红线已经标出:只要将这段代码,以及最后面的)去掉并保存为json,例如:FangSong_Regular.typeface.json即可。