Hybrid並行制約プログラミング における アニメーションライブラリの 作成

Hybrid並行制約プログラミング
における
アニメーションライブラリの
作成と評価
上田研究室
発表者:
1G00P022-6 大野 太郎
1
研究の目的
Hybrid並行制約プログラミング
のアニメーションライブラリを作成
し、HCCがどのようなアニメーション
を作成することに最適な言語かとい
うことを評価していく。
2
Hybrid並行制約
プログラミングの特徴
・離散的変化(point phase)と連続的変
化( interval phase)での処理を記述す
る。
また、x‘のように、変数の時間による
微分方程式を記述することができる。
3
階段を跳ね落ちていく
ボールのアニメーション
1 if x < 10 then {
2 if y > 5 || (y=5 && prev(y') >0)
3 then
4
y'' = -9.8
5
else if prev(y') < 0 then
6
y' = -0.5 * prev(y')
7
else always y'=0
8
}
Interval phaseの処理
Point phaseの処理
4
作成したアニメーション
具体例
•
加速度と速度を伴う
アニメーション例
–
–
•
階段を跳ね落ちていくボールのアニ
メーション
弓矢が風に煽られて軌道を変えるア
ニメーション
多数のオブジェクトの動作を
同時に処理するアニメーション例
–
–
加速していく四角形のアニメーション
ボーリングのアニメーション
5
階段を跳ね落ちていく
ボールのアニメーション
6
ボーリングのアニメーション
(1)
7
ボーリングのアニメーション
(2)
8
ボーリングのアニメーション
(3)
9
結果と考察
Hccでは、最初から微分方
程式を解決するアルゴリズム
が実装されているため、特に
速度・加速度の変化を伴うアニ
メーションにおいて非常に直感
的に書けた。
10
HCCの問題点
・三つ以上のオブジェクトに同時
にCollisionが起こった場合、
constraint errorが発生し止まる。
>直感的にアニメーションを
描けない
・三角関数が呼び出せない。
・for文等の、基本的な構文のうち
無いものがある。
11
今後の課題
・オブジェクト間での制約が2つ
同時に別々の解を導き出そうとす
るためにconstraint error が起こっ
ていると考えられる
>HCCの根本的な問題であり解
決する必要がある。
・HCCで計算したデータサンプル
を、よりGraphicalなツールで表
示する(Grifon)
12