three.js: vertices update of loaded glb model

32 Views Asked by At

rows of vertices should rise and fall row after row ,but failed without a movement. why?

  

    const scene = new THREE.Scene();
    const camera = new THREE.PerspectiveCamera(75, window.innerWidth / window.innerHeight, 0.1, 1000);
    let renderer = new THREE.WebGLRenderer({ antialias: true });
    renderer.setSize(window.innerWidth, window.innerHeight);
    document.body.appendChild(renderer.domElement);
    hemiLight = new THREE.HemisphereLight(0xffffff, 0xFFFFff, 0.99);
    hemiLight.position.set(0, 20, 0); 
    scene.add(hemiLight);
    const axesHelper = new THREE.AxesHelper(10);
    scene.add(axesHelper);
    var controls = new THREE.OrbitControls(camera, renderer.domElement);
    camera.position.set(0, 5, 10);

    let model;
    let positionAttribute;
    let oldData;
    // Animation variables
    const raiseAmount = 0.5;
    const widthSegments = 11;
    const heightSegments = 11;
    const numRows = heightSegments + 1;
    const numCols = widthSegments + 1;
    
    const loader = new THREE.GLTFLoader();
    loader.load('/models6/plane test-2.glb', (gltf) => {
      model = gltf.scene;
      scene.add(model);

      // Assuming the geometry is the first child of the loaded model
      const geometry = model.children[0].geometry;

      // Assuming the geometry is a PlaneGeometry or similar
      const vertices = geometry.attributes.position.array; // Array of vertices
      positionAttribute = geometry.getAttribute('position');

      oldData = positionAttribute.clone();
      console.log('oldData');
      console.log(oldData);

      if (oldData) {
        setTimeout(() => {
            loop();
        }, 1000);
      }

    });

    // Animation loop
    function animate() {
      requestAnimationFrame(animate);
      renderer.render(scene, camera);
    }

    animate();
    function loop() {
    
      // Update vertices based on animation progress
      for (let row = 0; row = 180) {
            done1 = true;
            //inc=0;
          }
          console.log('row=============================', row);
        }
        // Update geometry and render scene
        //positionAttribute.needsUpdate = true;
      }
          console.log('*********************done****************');   
    }
  
0

There are 0 best solutions below