Мне интересно, можно ли прикрепить текст над 3D-объектом? Если да, то как бы я это сделал?Прикрепить текст выше 3D-объект
До сих пор я делал следующее ниже, чтобы загрузить сетку с ее материалом и, наконец, добавить ее к THREE.Object3D(); и добавить его на сцену. Отлично работает без проблем. Следующим шагом я хочу показать хороший текст над его объектом, который всегда фиксируется и может быть виден со всех сторон.
loader.load('assets/' + enemyUrl, function (geometry, materials) {
material = new THREE.MeshFaceMaterial(materials);
model = new THREE.SkinnedMesh(geometry, material);
var mats = model.material.materials;
for (var i = 0,length = mats.length; i < length; i++) {
var m = mats[i];
m.skinning = true;
}
ensureLoop(geometry.animations[0]);
function ensureLoop(tmp) {
for (var i = 0; i < tmp.hierarchy.length; i ++) {
var bone = tmp.hierarchy[ i ];
var first = bone.keys[ 0 ];
var last = bone.keys[ bone.keys.length - 1 ];
last.pos = first.pos;
last.rot = first.rot;
last.scl = first.scl;
}
}
model.scale.set(2.5,2.5,2.5);
// TODO: Randomize where to put it in the world
yawObject.position.y = spawnPosition.y;
yawObject.position.x = spawnPosition.x;
yawObject.position.z = spawnPosition.z;
yawObject.add(model);
scene.add(yawObject);
});
Что-то вроде этого:
Это то, что моя игра выглядит сейчас:
См http://stemkoski.github.io/Three.js/Sprite- Text-Labels.html. – WestLangley