Javascript 有没有办法让树叶更有机地飘落?

Javascript 有没有办法让树叶更有机地飘落?,javascript,object,vector,physics,gravity,Javascript,Object,Vector,Physics,Gravity,所以,目前我正在这样做,但是我的叶子掉落的方式很奇怪,它们都粘在同一个模式上,就像它们仍然粘在一起一样,我知道我可以把它们做成一个类,给它们随机的大小,这样它们中的每一个都会以自己的速度沿着自己的路径移动,但我对编码还不太熟悉,也不知道怎么做,有没有更简单的方法???提前谢谢你(如果有办法在叶子发芽和落下之间增加一些时间也很好) var-leaves=[]; var计数=0; 函数设置(){ createCanvas(窗口宽度、窗口高度); var a=createVector(宽度/2,高度)

所以,目前我正在这样做,但是我的叶子掉落的方式很奇怪,它们都粘在同一个模式上,就像它们仍然粘在一起一样,我知道我可以把它们做成一个类,给它们随机的大小,这样它们中的每一个都会以自己的速度沿着自己的路径移动,但我对编码还不太熟悉,也不知道怎么做,有没有更简单的方法???提前谢谢你(如果有办法在叶子发芽和落下之间增加一些时间也很好)

var-leaves=[];
var计数=0;
函数设置(){
createCanvas(窗口宽度、窗口高度);
var a=createVector(宽度/2,高度);
var b=createVector(宽度/2,高度*3/4);
树[0]=根;
}
函数mousePressed(){
计数++;
如果(计数%3==0){
对于(var i=0;i
请制作一个可复制的示例!我想现在应该更好地理解它了!谢谢你的建议。我仍然无法运行你的代码。有语法错误,
tree
root
的定义缺失。你使用的是Processing或p5.js这样的框架吗?理想情况下,请提供一个到在线playgro的链接我不知道发生了什么,但由于某些原因,我无法将其上传到web编辑器,我的文件没有在那里打开,我可以给你一个指向github中代码的链接,所以,最后,它现在应该可以工作了,我只想提前感谢你所做的,你甚至还没有回答我的问题b但是,这让我学到了很多关于代码文本文件的知识,呵呵,这就是:所以,我想知道是否有一种方法可以让这些叶子正确地落下,而不是沿着一条直线落下,也许可以在它们发芽和落下之间加一个计时器,顺便说一句,如果仍然很难理解的话,请告诉我请,我会尽我所能把它弄清楚。请做一个可复制的例子!我想现在应该更好地理解它了!谢谢你的建议。我仍然无法运行你的代码。有语法错误,
tree
root
的定义缺失。你使用的是Processing或p5.js这样的框架吗?理想情况下,请提供一个链接到可以轻松运行代码的在线游乐场。我不知道发生了什么,但由于某些原因,我无法将其上载到web编辑器,我的文件无法在那里打开,我可以给你一个指向github中代码的链接,所以,最后,它现在应该可以工作了,我只想提前感谢你所做的工作,你会发现我甚至还没开始问我的问题,但这让我学到了很多关于代码文本文件的知识。呵呵,这里是:所以,我想知道是否有一种方法可以让这些叶子正确地落下,而不是沿着一条直线对角线落下,或者可以在它们发芽和落下之间加入一个计时器,顺便说一句,如果仍然存在的话很难理解,请告诉我,我会尽力把它弄干净的。
var leaves = [];

var count = 0;

function setup() {
  createCanvas(windowWidth, windowHeight);
  var a = createVector (width / 2, height);
  var b = createVector (width / 2, height*3/4);

  tree[0] = root;
}

function mousePressed() {
  count++;

  if (count % 3 === 0) {
    for (var i = 0; i < tree.length; i++) {
      if (!tree[i].finished) {
        var leaf = tree[i].end.copy();
        leaves.push(leaf);
      }

}



function draw() {
  background(51);

  for (var i = 0; i < leaves.length; i++) {
    fill(255, 204, 100);
    noStroke();
    ellipse(leaves[i].x, leaves[i].y, 2.7, 5);
    leaves[i].x += random (0, 1.7);
    leaves[i].y += random (0, 1.5);
  }

}