生长背景动画效果

代码语言:html

所属分类:背景

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

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

<title> substrate travel</title>

<style>
      canvas, body{
  padding: 0;
  margin: 0;
  overflow: hidden;
}
    </style>

</head>
<body translate="no">

<script src='http://repo.bfw.wiki/bfwrepo/js/dat.gui.min.js'></script>
<script>
      var width, height;
var step = 0;
var canvas = document.createElement('canvas');
var ctx = canvas.getContext('2d');

var bg = [256, 256, 256];

document.getElementsByTagName('body')[0].appendChild(canvas);


ctrl = {
  // spring: 0.35,
  // ease: 0.84,
  // strokeMax: 10,
  chanceToSplit: 0.2,
  num: 50,
  max: 1500,
  // alpha: 1,
  fade: 0.3,
  draw: true,
  clear: function () {removeTravelers(), clear(ctx);} };


var numAngles = 6;
var angles = [];
for (var i = 0; i < numAngles; i++) {
  angles.push(Math.PI * 2 / numAngles * i - Math.PI / 2);
}

document.onmousedown = function (e) {
  // var a = Math.random() * Math.PI * 2
  var a = angles[Math.floor(Math.random() * angles.length)];
  var s = 3;
  var vx = Math.cos(a) * s;
  var vy = Math.sin(a) * s;
  addTraveler(e.pageX, e.pageY, vx, vy);
};

var gui = new dat.GUI();
gui.add(ctrl, 'num', 0, 150).step(1);
gui.add(ctrl, 'max', 1, 3000).step(1);
gui.add(ctrl, 'chanceToSplit', 0, 1);
// gui.add(ctrl, 'ease', 0, 1);
// gui.add(ctrl, 'alpha', 0, 1);
// gui.add(ctrl, 'strokeMax', 1, 50).step(1);
// gui.add(ctrl, 'strokeMin'.........完整代码请登录后点击上方下载按钮下载查看

网友评论0