我试图根据它们的速度画出翅膀振荡的鸟类。简单地说,我的鸟飞得越快,它们的翅膀应该越快振荡。
我的完整代码如下,并没有按我的意愿行事。我创建振荡的过程是kCLAuthorizationStatusAuthorized
根据flyingFactor
函数中velocity
的大小而变化。但是当我displayAndMoveWings
发现所有内容时,因为draw
一直在变化(即由velocity
函数中的随机acceleration
力触发),{{1}也是如此并且意味着我的鸟的翅膀根本不会振动并且看起来非常多。
任何使其有效的方法?我希望我的鸟的翅膀看起来像是自然振荡,只有当我的鸟加速或减速时才会越来越快。
提前非常感谢你!
draw
答案 0 :(得分:0)
我想我可能已经找到了一个hack ...在我的displayAndMoveWings
函数之前,我创建了一个名为whatIsVelocity
的新全局变量。然后在displayAndMoveWings
我写了以下内容:
if (frameCount % 60 === 0){
whatIsVelocity = this.velocity.mag();
}
this.flyingFactor=cos(360+frameCount*whatIsVelocity*10)*20;
实际上,它的作用是每60帧(大约2秒)拉动速度并将该速度引入flyingFactor
,这意味着它不会像我之前的代码那样每帧重新计算。不是很漂亮,但它实现了我的目的。