修士論文発表 - 早稲田大学

Download Report

Transcript 修士論文発表 - 早稲田大学

制約に基づくアニメーションツール
Grifonにおける制約の階層化
早稲田大学大学院
理工学研究科 情報・ネットワーク専攻
修士課程2年 3603U102-3
中村 好一
研究の目的
• 制約に基づくアニメーションツールGrifonに
おいて、ハイブリッド並行制約と幾何制約
が矛盾し合う制約過多な状況でも適切な
最適解得られるようにする。そのために、
ハイブリッド並行制約と幾何制約に優先度
を付随させ、制約階層を実現することであ
る。
研究のメリット
• 既存のGrifonでは、ハイブリッド並行制約より幾
何制約が優先されるため、ユーザが意図しない
アニメーションになってしまう恐れがある。
それを避けるために、ハイブリッド並行制約と幾
何制約に優先度を付随させ、アニメーションの幅
を広げる。
• 幾何制約は図形配置のために、ハイブリッド並
行制約はアニメーション作成のためという棲み分
けが可能になる。
制約に基づくアニメーションツール
Grifon
• 論理的な概念や関係を表すようなアニメーション
を柔軟に表現することを目的としたアニメーショ
ン作成システムである。
• アニメーション中の時間的変化をハイブリッド並
行制約によって、グラフィックオブジェクトの空間
的な関係を幾何制約によって表現する。
• 制約処理系において、ハイブリッド並行制約より
幾何制約が優先的に処理される。
アニメーション例
ハイブリッド並行制約
・黄色 MoveBall: 右方向に動く
・黄色 MoveBall1: 左方向に動く
・黄色 MoveBall2: 下方向に動く
・黄色 MoveBall3: 上方向に動く
・赤色 StayBall: T字型の上を動く
幾何制約
・赤色のボールと周囲の4つのボー
ルの距離が等しい
・正方形内の中心に赤色の円を配
置する
アニメーション例
(幾何制約優先の場合)
• 幾何制約優先アニメーション
制約の優先度の設計と実装
• ハイブリッド並行制約と幾何制約の優先度を切り替えるた
めの重み付けを付随した。hcc=0が幾何制約優先、hcc=1
がハイブリッド並行制約優先とした。
• hcc=1(ハイブリッド並行制約優先)の場合に、幾何制約充
足系を無視するように実装した。
• ハイブリッド並行制約における優先度は、required、strong、
medium、weakと定義づける。
• それぞれの優先度の重み付けはrequired=4、strong=3、
medium=2、weak=1という実数値で設定する。
優先度を付随させた制約データ
<?xml version="1.0" encoding="Shift_JIS" ?>
<grifon xmlns="http://www.ueda.info.waseda.ac.jp/grifon">
<constraint name=“制約の名前”
hcc=“優先度の重み付け”
strength=“制約の強さ”
weight=“重み付け”>
<script type="text/hcc">
<![CDATA[
Hybrid CCのスクリプト
/*
]]>
</script>
</constraint>
</grifon>
制約処理のアルゴリズム
(ハイブリッド並行制約優先の場合)
キャンバス上でかけられた全てのハイブリッド並行制約の
スクリプトを生成する。制約処理系において、ハイブリッド
制行制約、幾何制約のどちらを優先するかを比較する。
生成されたスクリプトをインタプリタに渡し、サンプリング
データを作成する。
2. 制約処理系はサンプリングデータを元にアニメーションを
試行する。
3. ステップ1で「Constraint Error」になった場合、ハイブリッド
並行制約の優先度を比較して、優先度の一番低い制約
以外の制約をインタプリタに渡す。
4. 制約充足後、サンプリングデータを生成し、アニメーション
を実行する。
1.
制約処理アルゴリズム
(幾何制約優先の場合)
1. キャンバス上でかけられた全てのハイブリッド並行制約のス
クリプトを生成する。制約処理系において、ハイブリッド並行
制約、幾何制約のどちらを優先するかを比較する。
生成されたスクリプトをインタプリタに渡し、サンプリングデー
タを作成する。
2. サンプリングデータを元に、アニメーションを試行する。
3. 途中で幾何制約が充たされない状態が生じた場合、
ハイブリッド並行制約インタプリタへ知らせる。インタプリタは
サンプリングデータを生成し直す。
4. アニメーションに必要な制約を充たしたサンプリングデータ
が全て生成されたならば終了する。
アニメーション例
(ハイブリッド並行制約優先の場合)
• ハイブリッド並行制約優先アニメーション
まとめ
• 矛盾し合う制約過多な状況でも適切な解を得られるよう
にハイブリッド並行制約と幾何制約に優先度を付随させ、
アニメーションの拡張性を実現した。
• 幾何制約は図形配置のために、ハイブリッド並行制約は
アニメーション作成のためという棲み分けが可能になり、
ユーザが制約の矛盾性を気にすることなく制約を扱える
ようになった。
• ハイブリッド並行制約優先、幾何制約優先のアニメーショ
ンを表現した。
今後の課題
• ハイブリッド並行制約、幾何制約が持つそれぞ
れの優先度に互換性を持たせることで一層アニ
メーションの幅が広がる。
• ハイブリッド並行制約と幾何制約の優先度が時
間によって自動的に切り替えられると望ましい。
アニメーション例
ハイブリッド並行制約
・黄色 MoveBall 速度40
・青色 MoveBall 速度50
・黒色 MoveBall 速度100
・緑色 MoveBall 速度100
・赤色 StayBall
幾何制約
・赤色のボールと周囲の4つの
ボールの距離が等しい
・正方形内の中心に赤色の円を
置く