Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript THREE.JS:对象在缩放后显示_Javascript_Three.js - Fatal编程技术网

Javascript THREE.JS:对象在缩放后显示

Javascript THREE.JS:对象在缩放后显示,javascript,three.js,Javascript,Three.js,我在THREE.JS上有一个问题,我在我的场景中添加了一个3D文本: var loader = new THREE.FontLoader(); loader.load( '3rdparty/three.js/fonts/helvetiker_regular.typeface.json',function ( font ) { var material = new THREE.MeshPhongMaterial({color: 0xff0000}); var textGeom = ne

我在THREE.JS上有一个问题,我在我的场景中添加了一个3D文本:

var loader = new THREE.FontLoader();
loader.load( '3rdparty/three.js/fonts/helvetiker_regular.typeface.json',function ( font ) {
   var material = new THREE.MeshPhongMaterial({color: 0xff0000});
   var textGeom = new THREE.TextGeometry( 'Hello World!', {font: font});
   var textMesh = new THREE.Mesh( textGeom, material );
   var bBox = new THREE.Box3().setFromObject(_object);
   textMesh.position.set((bBox.max.x - bBox.min.x) / 2 + 
   bBox.min.x,bBox.max.y + 10,(bBox.max.z - bBox.min.z) / 2 + bBox.min.z);
   scene.add(textMesh);
});
但是,只有当我在场景中缩放文本时,对象才会显示,并且我可以取消缩放对象保持可见

这里是摄像头配置(因此不存在摄像头参数问题):


如何强制文本在添加后立即显示

通过调用
Render.Render(场景,摄影机),在添加文本后再次渲染场景


感谢您的回复,我找到了从sweethome3d加载obj和mtl的原因,之后我调用render时得到:“Uncaught TypeError:无法设置未定义的属性'needsUpdate'”
new THREE.PerspectiveCamera(45,SCREEN_WIDTH/SCREEN_HEIGHT,0.1,99999999);
var loader = new THREE.FontLoader();
loader.load('3rdparty/three.js/fonts/helvetiker_regular.typeface.json', function(font) {
  var material = new THREE.MeshPhongMaterial({
    color: 0xff0000
  });
  var textGeom = new THREE.TextGeometry('Hello World!', {
    font: font
  });
  var textMesh = new THREE.Mesh(textGeom, material);
  var bBox = new THREE.Box3().setFromObject(_object);
  textMesh.position.set((bBox.max.x - bBox.min.x) / 2 +
    bBox.min.x, bBox.max.y + 10, (bBox.max.z - bBox.min.z) / 2 + bBox.min.z);
  scene.add(textMesh);
  render.render(scene, camera);
});