Babylon.jsのチュートリアルをやってみるその10
これは
昨日に引き続きBabylon.jsのチュートリアルをやっていく記事です。
自分であとで思い返す用のメモでもあります。
今日の参照
animation
引き続きanimationについてです。
Animation weights
UnityでいうところのAnimationStateに近いのものになるのかな。
モデルのインポートをみていないのでわからないのだけれど、
↓のように書くと指定したFPSごとにanimationをきりかえることができるらしい。
// scene.beginWeightedAnimation(アニメーションさせるターゲット, スタート, 終了, 重さ1.0, ループの有無); var idleAnim = scene.beginWeightedAnimation(skeleton, 0, 89, 1.0, true); var walkAnim = scene.beginWeightedAnimation(skeleton, 90, 124, 0, true); var runAnim = scene.beginWeightedAnimation(skeleton, 125, 146, 0, true);
サンプルではボタンを用意してボタンが押されたら指定のパラメータを上げ下げして切り替えるようになっている。
イージング
アニメーションを定義済みの方法で動かすのではなく、
イージングという機能を使って変化を加えて再生させることもできるらしい。
MSDNでは色々定義されているようだけれどBabylon.jsとしては以下を使える。
- BABYLON.CircleEase()
- BABYLON.BackEase(amplitude)
- BABYLON.BounceEase(bounces, bounciness)
- BABYLON.CubicEase()
- BABYLON.ElasticEase(oscillations, springiness)
- BABYLON.ExponentialEase(exponent)
- BABYLON.PowerEase(power)
- BABYLON.QuadraticEase()
- BABYLON.QuarticEase()
- BABYLON.QuinticEase()
- BABYLON.SineEase()
- BABYLON.BezierCurveEase()
なんだかよくわからなかったけれど、公式でも紹介されていた以下のサイトを見て少しイメージがついた
あとこちらも
きょうはここまで。
animationまたやりたいことができたら戻ってくる感じになりそう。
明日はcollisionをやります。