Dev:JA/Ref/Release Notes/2.71/Animation

提供: wiki
< Dev:JA‎ | Ref/Release Notes‎ | 2.71
2018年6月29日 (金) 06:08時点におけるYamyam (トーク | 投稿記録)による版 (1版 をインポートしました)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
移動先: 案内検索

パッチ T22084: Robert Penner Easing Equations

コミット daccaa713b6e66aは、モーショングラフィックスに便利な、多数の新しい補間タイプを導入します。これらは複数の「イージング方程式」(基本的にはあるキーフレームから別のキーフレームへの遷移する、いくつかのプリセットを定める式)を定義します。これにより、いくつかの一般的なエフェクトを行うための大量の手作業(キーフレームの挿入と調整)を軽減します。例えば、キビキビとした動きや、弾性やばねのエフェクトのようなフェイクの物理など。

2.71で利用可能になったキーフレーム補間モードオプション

このコミットで導入された新たな補間タイプは、たくさんのパッケージやツールキットなど(特に Qt や最近の Web ブラウザすべて)にもあります。詳細やライブデモが http://easings.net または http://www.robertpenner.com/easing/ にあります。

新しい補間タイプ

あまり急激でない物から最も急激な物まで、以下の遷移タイプがあります。

  1. Linear(リニア)
  2. Sinusoidal(正弦曲線)
  3. Quadratic(二次式)
  4. Cubic(三次式)
  5. Quartic(四次式)
  6. Quintic(五次式)
  7. Exponential(指数)
  8. Circular(円形)

イージングタイプに加え、物理ベースのエフェクトを模倣するためのタイプも多数あります。

  • Elastic(ゴム状): これは地面に突き刺さった硬いポールを曲げ、それが反発し、元の状態に再び安定するのを見ているような物です。
    • amplitude(振幅)プロパティは元のカーブからの振動の振れの強さをコントロールします。0.0で、振動なし(要は極端の指数遷移のように、単にB 値にスナップします)、1.0でアイコンが示すような輪郭を描きます。
    • period(期間) プロパティは振動が起こる頻度をコントロールします。高い値で振動が密になります。
  • Bounce(バウンス): 名前が示すように、ボールなどのバウンドに使用します。
  • Back(後): これは次のキーフレームを少し行き過ぎて欲しい時、または少し予備動作をしてほしい時に使用します。
    • back(後) プロパティは、行き過ぎの大きさと方向(カーブの上下)をコントロールします。

amplitude(振幅)period(期間)back(後)設定はプロパティ領域([N]キー) の▼Active Keyframe(アクティブキーフレーム)パネルにあります。

Easing(イージング)

"Easing(イージング)" プロパティは二つのキーフレームの区間の端に、イージングエフェクトを適用してコントロールします。

  • Ease In(イーズイン) - 二つめのキーフレームに向かって強めていくエフェクト
  • Ease Out(イーズアウト) - 最初のキーフレームからフェードアウトするエフェクト
  • Ease In Out(イーズイン・アウト) - 区間の両側に影響するエフェクト
  • Automatic Easing(自動イージング) (デフォルト) - 前述の最も一般的に予測される挙動を使用します。遷移系のエフェクトでは基本的に「イーズイン」、一方、物理系のエフェクトでは「イーズアウト」になります。

Fカーブ

  • パッチ T36209: Use binary search function for evaluating F-Curves(Fカーブの評価に二分探索を使用) (2aff243)。これにより、多数のキーフレームを含む長いFカーブの再生が若干スピードアップするでしょう。
  • RNA: FCurve.update() メソッドを追加。スクリプトから呼び出し、ハンドルの再計算と、すべてのキーフレームを確実に正しくソートできます。(3e26a7a59)

ドライバー

  • UI 調整: bpy.databpy.context の式内での使用について、ドライバーの UI 内ではっきりと警告を表示するように(9e881d0)。これらのドライバー式での使用は完全に未対応であり、更新の問題で共通する原因でもあります。
  • プロパティから直接ドライバー式を編集すると、その影響で自動的にドライバーを正しく再計算するように。従来は変更を反映させるのに、Graph Editor(グラフエディター)内の[Update Dependencies(依存を更新)]ボタンを手動でクリックしないといけませんでした。(49cde5d)

アーマチュア

  • パッチ T39470: Tippisum氏による、「ボーン軸+ロール」の行列への変換を改善するコード。(07f8c5c3b680c71)

コンストレイント

  • UI 調整: アーマチュアの Pose Mode(ポーズモード)中、Object Constraints(オブジェクトコンストレイント)タブにエラーメッセージを表示するボタンを追加。ユーザが代わりの正しいコンストレイントタブ(Bone Constraints(ボーンコンストレイント))タブに簡単に移動できるようにします。(0dd52d1)

Transform(トランスフォーム)コンストレイント - 後方互換性の問題

マッピング係数が正しい単位(位置は長さ、回転は角度、スケールはなし)になるよう、Transform(トランスフォーム)コンストレイントが変更されました。残念ながら、これにより古いファイル(2.70a以前)にこれらの設定をアニメーションする場合(Fカーブまたはドライバー)に互換性の問題が生じました。このような場合、手動で直接“Update Animated Transform Constraints”オペレーターを(スペースキーメニューから)一度だけ実行してください(度からラジアンに変換されるため、何度も実行すると元の角度の値が壊れてしまいます)。


アニメーションエディター

時刻表示タイプからの自動スナップの挙動の分離

このコミット (9c28a24) は、アニメーションエディターの自動スナップのクリーンアップと、動作方法に関するいくつかの問題を修正し、T39819で指摘されている問題を解決するものです。

  1. "Nearest Frame"(近接するフレーム)が秒数による時間表示時に近接する秒にスナップしなくなりました。代わりに、適した時間表示を使用しなくても必要に応じていずれかが使用できるよう、"Nearest Second"(近接する秒)オプションが付きました。
  2. "Time Step"(タイムステップ)にも同様の変更が行われました。現在、それぞれ "Frame Step"(フレームステップ)と "Second Step"(秒ステップ)になりました。

Jump to Keyframe(キーフレームにジャンプ)がデフォルトで選択中のデータのみ考慮するように

選択中のチャンネル・データのキーフレームのみ表示する TimeLine(タイムライン)オプションが、以前のように TimeLine(タイムライン)毎ではなく、(デフォルトで)シーン毎の設定になりました(c261052)。これにより、TimeLine(タイムライン)と Jump to Keyframe(キーフレームにジャンプ)オペレーターが、キーフレームのどの部分を考慮する必要があるのかを決めるのに同じ設定を使用するようになり、アニメーターは複数のボーンのあるリグの作業(特に洗練期間中)をより簡単に行えます。

2D ビュー:Lock Time to Other Windows(他のウィンドウの時間停止)オプションの復活

2.4x の2D ビューの "Lock Time to Other Windows"(他のウィンドウの時間停止)機能が復活しました。(b245d35)).


Dope Sheet Editor(ドープシートエディター)

  • 長いキーフレームの描画とSummary(概要)チャンネルの生成の最適化。まだ若干ぎくしゃくしますが、少なくとも使い物にはなっています。(d2a5ddb)
  • View Selected(選択部分を表示)が、選択中のキーフレームのある最初のチャンネルが表示されるよう、ビューの縦もセンタリングするように。(89abdb6)

Graph Editor(グラフエディター)

  • すべての新しい補間タイプに対応するため、Fカーブの描画コードが、ピクセルサイズの間隔でカーブをサンプリングするバージョンに完全に置き換えられました。この所為でいくつかのファイル、特にグラフエディターをかなり横長にしている場合では、ビューが若干遅くなっているのに気付くかもしれません。
  • アクティブキーフレームのハンドルタイプが、グラフエディターのプロパティ領域の▼Active Keyframe(アクティブキーフレーム)にて表示・編集できるように。(b339535)
  • Lasso(投げ縄)選択が、Fカーブエディター内でCtrlLMB Template-LMB.pngにより動作するように。Ctrl⇧ ShiftLMB Template-LMB.pngで選択解除です。(fa24ad1fd50cdd6)
  • バグ修正e80fbf83b75d6cで、グラフエディターのすべてのAuto Snapping(自動スナップ)モードが正しく動作するように。
  • c504b8bは、右側のハンドルのY座標を▼Active Keyframe(アクティブキーフレーム)パネルで編集中、そのハンドルの両方が選択され、両方が揃っていた場合に遭遇する、いくつかの異常を解決します。
  • 0985bb4 とフォローアップのコミット群は、ハンドルの整列をもっと予想しやすいものにする試みです。全般的にハンドルの整列は、まだ従来のバージョンでの動作に近い挙動にすべきです。

NLA Editor(NLAエディター)

UI の変更

NLA エディターのインターフェイスが洗練され、できれば「アニメーションレイヤー」ワークフローの意図がわかりやすくなるよう、いくつか調整が行われました。

最も顕著なのは「NLAアクション」チャンネルの背後で動くコードが、他のアニメーションチャンネルで使用されていたシステムを使用するようリファクタリングされたことです。その結果、以下のように変わりました。

  • アクティブアクションを NLA から[Ctrl]+クリックでリネームできるように。
  • ボタンとトグルが正しいウィジェットツールキットを使用できるため、マウスホバー時のツールチップを持てるようになりました。これにより、インターフェイスを探すのが若干楽になりました。
  • "Push Down"(アクションを変換)機能 - これはアクティブアクションを NLA スタックの一番上に新しい NLA ストリップとして追加します。(以前は雪片マークで表現されていた)新しいアイコン(下向きの山形袖章)は、この機能をより判りやすくしています。(2812e6a)
    • 注意:この機能は専用のオペレーターを持つようになり(nla.action_pushdown)、チャンネルのインデックス(チャンネルリストの一番上のチャンネルのインデックスは0)を作用するアクションラインを決める必須のパラメータとして取ります。これはインデックスが指すチャンネルが実際に NLA アクションラインにある時にのみ動作することを留意しておいてください。
  • TweakMode(調整モード)時の、NLA にマッピングされた(ピン止めされた)キーフレームと、マッピングされていない(ピン止め解除された)キーフレームの表示のトグルボタンに、その目的を示すツールチップが付きました。また、アイコンの状態も以前に比べてずっと感覚的になっています。
  • データブロック展開時に表示される Mute(ミュート)のツールチップを、以前はこれらが何のためにあるのかが明快ではなかったため修正しました。これらは NLA スタックが最終結果に寄与するか否かの切り替えに使用され、アクティブアクションが思ったとおりに動作しているかどうかをチェックするのに便利です。(35a9a7d)

ツール

  • CtrlAltPでプレビュー範囲を、選択中のストリップを元に延長できます。(b40b6bd)
  • コミット68c3b63 modifies the behaviour of the duplication tool(複製ツールの挙動の変更)。オブジェクト用と同様の、Linked Duplicate(リンク複製)との区別と、複製の完全コピーを導入します。
    • ⇧ ShiftD 新しいコピーを使用されたアクションから作成します。注意:この挙動は従来のバージョンから変わっています。
    • AltD は同じアクションを再び使用しますが、新しいストリップを作成します。注意:これは従来の挙動と同じです。
  • Make Single User(シングルユーザー化)オペレーターUの追加。選択中のどのストリップも、他のストリップとアクションを共用しないようにします。a3a3141