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