Threejs realizes the effect of water surface

  1. To achieve the effect of water ripples:
  2. By adding geometric shapes, the geometry of the platform can be
    const waterGeometry = new THREE.PlaneGeometry( 10000, 10000 );
  3. Introduce the water plug-in and modify the water material.
    import { Water } from 'three/addons/objects/Water.js';
    
    const water = new Water(
    	waterGeometry,
    	{
    		textureWidth: 512,
    		textureHeight: 512,
    		waterNormals: new THREE.TextureLoader().load( 'textures/waternormals.jpg', function ( texture ) {
    			texture.wrapS = texture.wrapT = THREE.RepeatWrapping;
    		} ),
    		sunDirection: new THREE.Vector3(),
    		sunColor: 0xffffff,
    		waterColor: 0x001e0f,
    		distortionScale: 3.7,
    		fog: scene.fog !== undefined
    	}
    );
    
    // 加入场景中
    scene.add( water );
  4. Texture map used on water surface

Guess you like

Origin blog.csdn.net/weixin_38441229/article/details/132304561