田村尚希氏(シリコンスタジオ) 日本ゲーム業界最大の開発者イベント「CEDEC 2011」が開幕。このところ「最先端のテクニカルな内容」は減少気味のCEDECなのだが,シリコンスタジオは毎回とびきり先端方面の話題を紹介してくれており,今回の講演にも注目が集まるところだ。 本稿では,CEDEC初日に行われた田村尚希氏&安田 廉氏による「コンピュータグラフィックス関連の最新論文紹介 ?Shape Matching法とその周辺技術?」の概要を紹介してみたい。 Shape Matchingとは 今回紹介された「Shape Matching法」とは,物体の変形に関係した技術で,弾性体の挙動を表現するものだと思っておけばいいだろう。 ポリゴンメッシュで作られた物体というのは,基本的には固定された形状なのだが,頂点シェーダを使ってプルプル揺らしたりといった変形も広く行われている。今回紹介された手法は,そういった技術の次世代型といえるものだ。 これまで出てきている弾性体の表現は,大半が「頂点間にばね係数を適用して,動きに対してある程度の変形を行う」といったものだった。ゲーマーなら,すでに多くの実装を目にしていると思うが,これらの処理は制御点が表面しかないため風船的な挙動になりがちだったり,rmt,(局所的な変形ならともかく)オブジェクト全体で変形させると計算量が大きくなりすぎたりするという問題があった。 Shape Matchingは,これとは根本的に異なる手法となる。 基本的なアイデアは,「ポリゴンの頂点をパーティクルとして扱う」ところから始まる,DQ10 RMT。ポリゴンメッシュ単位で言うなら,「それぞれの頂点をパーティクル化しておく」のだ。 そのうえで,力学的に変形したあとのメッシュに対し,「元のメッシュを回転させたもの」を用意し,元のメッシュに戻ろうとする力を加えたうえで,メッシュの再計算を行うというアプローチのようである。 この処理では,元のメッシュの適切な回転角を求める部分がキモとなる。具体的には,移動前後の各頂点の距離の総和が最小となるような角度を求めるとのことで,計算が面倒そうな雰囲気もあるのだが,実はこれを一発で解く数式はすでに存在していたりする。 ただ,それでもここがキモになるのは,変形時には,回転以外に拡大/縮小や剪断(せんだん)といった要素が絡んでくるため,そのままでは適用できないためだ。そこで,変形から回転要素だけを取り出して処理する「極分解」という処理を行って回転行列だけを取り出す
関連トピック記事:
0 件のコメント:
コメントを投稿