Javascript 如何在Three.js中单击后继续调整3DObject的大小,除了scale.set,还有其他调整大小的方法吗?

Javascript 如何在Three.js中单击后继续调整3DObject的大小,除了scale.set,还有其他调整大小的方法吗?,javascript,3d,three.js,resize,Javascript,3d,Three.js,Resize,我关于StackOverflow的第一个问题 我正在创建一个javascript交互式游戏,我希望芒果在每次发生事件时都变大/变小/颜色不同/等等。我正在测试,我在mango上安装了一个事件侦听器,它在回调中使用scale.set调整大小,但只调整了一次。还有别的办法吗?我希望它的尺寸继续增大,直到达到一定的尺寸,但尚未确定。我试着使用百分比,结果是同样的事情,再加上我的林特对我大喊大叫。这是我的相关代码: const Mango = function() { this.mesh = new

我关于StackOverflow的第一个问题

我正在创建一个javascript交互式游戏,我希望芒果在每次发生事件时都变大/变小/颜色不同/等等。我正在测试,我在mango上安装了一个事件侦听器,它在回调中使用scale.set调整大小,但只调整了一次。还有别的办法吗?我希望它的尺寸继续增大,直到达到一定的尺寸,但尚未确定。我试着使用百分比,结果是同样的事情,再加上我的林特对我大喊大叫。这是我的相关代码:

const Mango = function() {
  this.mesh = new THREE.Object3D();
  const geom = new THREE.BoxGeometry(8, 16, 5, 8, 8, 8);

  // making the box round
  for (let i = 0; i< geom.vertices.length; i++) {
    geom.vertices[i].normalize().multiplyScalar(16);
  }

  for (let i = 0; i < geom.faces.length; i ++) {
    let face = geom.faces[i];

    face.vertexNormals[0].copy( geom.vertices[face.a] ).normalize();
    face.vertexNormals[1].copy( geom.vertices[face.b] ).normalize();
    face.vertexNormals[2].copy( geom.vertices[face.c] ).normalize();
  }

  // making it oblong
  geom.applyMatrix( new THREE.Matrix4().makeScale(1.0, 1.3, 0.6));

  // adding mango skin
  const loader = new THREE.TextureLoader();
  const mangoMap = loader.load("images/mangoMap.jpg");
  const mat = new THREE.MeshPhongMaterial({
    color: 0xffd507,
    shininess: 40,
    map: mangoMap,
  });
  const mango = new THREE.Mesh(geom, mat);

  // adding eventlistener
  const domEvents = new THREEx.DomEvents(camera, renderer.domElement);
  domEvents.addEventListener(mango, 'click', function increaseMangoSize(e) {
     mango.scale.set(1.2, 1.2, 1.2);
  });

  this.mesh.add(mango);

};
const Mango=function(){
this.mesh=new THREE.Object3D();
const geom=新的三盒几何体(8,16,5,8,8,8);
//把箱子弄圆
for(设i=0;i

此外,如果您在我的代码中看到任何其他您想要评论或有益的评论,请让我知道!我今天才刚开始使用Three.js,还有很多东西要学。

我想起来了!!我曾经

mango.scale.multiplyScalar(1.2);

相反,它是有效的。呸

但如果有人有任何其他意见/建议,请告诉我!