three实现水下波动动画效果

代码语言:html

所属分类:动画

下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">

<title> Water effect shader</title>
<style>
    body{
  margin: 0;
  padding: 0;
}

canvas{
  display: block;
}

  </style>

</head>
<body translate="no">
<div class="content-canvas"></div>
<script id="vertex-shader" type="x-shader/x-vertex">
  varying vec2 vUv;
  
  void main(){  
    vUv = uv; 
    //modelViewMatrix: es la posición y orientación de la cámara dentro de la escena
    //projectionMatrix: la proyección para la escena de la cámara incluyendo el campo de visión
    vec4 modelViewPosition = modelViewMatrix * vec4(position, 1.0);
    gl_Position = projectionMatrix * modelViewPosition;
  }
</script>
<script id="fragment-shader" type="x-shader/x-fragment">
  uniform float time;
  uniform vec2 resolution;
  uniform sampler2D texture1;
  
  varying vec2 vUv;
  
  void main() {  
    vec2 uv1 = vUv;
    // variable que contiene el eje de coordenadas
    vec2 uv = gl_FragCoord.xy/resolution.xy;
    
    float frequency = 15.;
    float amplitude = 0.015;
    
    float x = uv1.y * frequency + time * .7; 
    float y = uv1.x * frequency + time * .3;
    
    uv1.x += c.........完整代码请登录后点击上方下载按钮下载查看

网友评论0