three+webgl实现红丝带布料吹动波动动画效果代码

代码语言:html

所属分类:动画

代码描述:three+webgl实现红丝带布料吹动波动动画效果代码

代码标签: three webgl 红丝带 布料 吹动 波动 动画

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

<!DOCTYPE html>
<html lang="en" >

<head>
  <meta charset="UTF-8">

  
<style>
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    overflow: hidden;
    background: #eeeeee;
}

.full-screen-3d-example {
    opacity: 0;
    transition: opacity 1s ease-out;
}

.full-screen-3d-example.-loaded {
    opacity: 1;
}
</style>

  
</head>

<body>
  <div id='root' class='full-screen-3d-example'></div>

<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/three.146.js"></script>
<script type="text/javascript" src="//repo.bfw.wiki/bfwrepo/js/OrbitControls.146.js"></script>
  
      <script >
const { THREE } = window;

const FLAGS = Object.freeze({
    ENABLE_ORBIT_CONTROLS: false,
});

const COLOR_PALETTE = Object.freeze({
    black: 0x010101,
    white: 0xeeeeee,
    wave: 0xe63946,
});

const GLSL_UTILS = Object.freeze({
    rand: `
        float crand(vec2 seed) {
            return fract(sin(dot(seed, vec2(12.9898,78.233))) * 43758.5453123);
        }
    `,
    noise: `
        float noise(vec2 position) {
            vec2 p = floor(position);
            float tl = crand(p);
            float tr = crand(p + vec2(1.0, 0.0));
            float bl = crand(p + vec2(0.0, 1.0));
            float br = crand(p + vec2(1.0, 1.0));
            vec2 v = smoothstep(0.0, 1.0, fract(position));

            return mix(tl, tr, v.x)
                + (bl - t.........完整代码请登录后点击上方下载按钮下载查看

网友评论0