BONKURA BLOG

仕事のメモ帳ブログ。いまのところActionScriptメイン。たまにCSSとかJavaScriptとか。

イージングとバネ運動に関する公式

単純なイージング(長い形式)
var dx:Number = targetX - sprite.x;
var dy:Number = targetY - sprite.y;
vx = dx * easing;
vy = dy * easing;
sprite.x += vx;
sprite.x += vy;
単純なイージング(短縮形)
vx = (targetX - sprite.x) * easing;
vy = (targetY - sprite.y) * easing;
sprite.x += vx;
sprite.y += vy;
単純なイージング(さらに短くした形式)
sprite.x += (targetX - sprite.x) * easing;
sprite.y += (targetY - sprite.y) * easing;
単純なバネ運動(長い形式)
var ax:Number = (targetX - sprite.x) * spring;
var ay:Number = (targetY - sprite.y) * spring;
vx += ax;
vy += ay;
vx *= friction;
vy *= friction;
sprite.x += vx;
sprite.y += vy;
単純なバネ運動(短縮形)
vx += (targetX - sprite.x)* spring;
vy += (targetY - sprite.y)* spring;
vx *= friction;
vy *= friction;
sprite.x += vx;
sprite.y += vy;
単純なバネ運動(さらに短くした形式)
vx += (targetX - sprite.x) * spring;
vy += (targetY - sprite.y) * spring;
sprite.x += (vx *= friction);
sprite.y += (vy *= friction);
バネのオフセット
var dx:Number = sprite.x - fixedX;
var dy:Number = sprite.y - fixedY;
var angle:Number = Math.atan2(dy, dx);
var targetX:Number = fixedX + Math.cos(angle) * springLength;
var targetY:Number = fixedY + Math.sin(angle) * springLength;



ActionScript 3.0 アニメーション
Keith Peters
ボーンデジタル
売り上げランキング: 41253
おすすめ度の平均: 5.0
5 数学嫌いのデザイナーにオススメ
4 まるでアルゴリズム大辞典
5 初心者でもなんとか読める
5 教科書にしたいくらい素晴らしい本