TOP > 国内特許検索 > 描画制御装置 > 明細書

明細書 :描画制御装置

発行国 日本国特許庁(JP)
公報種別 特許公報(B2)
特許番号 特許第4701395号 (P4701395)
公開番号 特開2007-109069 (P2007-109069A)
登録日 平成23年3月18日(2011.3.18)
発行日 平成23年6月15日(2011.6.15)
公開日 平成19年4月26日(2007.4.26)
発明の名称または考案の名称 描画制御装置
国際特許分類 G06T  13/00        (2011.01)
G06T  13/80        (2011.01)
FI G06T 13/00 B
請求項の数または発明の数 4
全頁数 18
出願番号 特願2005-300325 (P2005-300325)
出願日 平成17年10月14日(2005.10.14)
新規性喪失の例外の表示 特許法第30条第1項適用 2005年9月15日 インターネットアドレス(http://www3.interscience.wiley.com/cgi-bin/jhome/106562739)にて発表
審査請求日 平成20年10月8日(2008.10.8)
特許権者または実用新案権者 【識別番号】504174135
【氏名又は名称】国立大学法人九州工業大学
発明者または考案者 【氏名】尾下 真樹
個別代理人の代理人 【識別番号】100099634、【弁理士】、【氏名又は名称】平井 安雄
審査官 【審査官】真木 健彦
参考文献・文献 特開2002-197489(JP,A)
特開2004-102719(JP,A)
特開平10-188026(JP,A)
調査した分野 G06T 13/80
G06T 13/40
特許請求の範囲 【請求項1】
マウス等の入力機器からストロークの始点座標及び終点座標を取り込む入力部と、
画面上に表示され、前記入力部で取り込まれた始点座標を含むオブジェクトを、操作対象物の動作を決定するための操作対象オブジェクトとして特定する操作対象オブジェクト特定部と、
画面上に表示され、前記入力部で取り込まれた終点座標を含むオブジェクトを、操作対象物の動作を決定するための操作目標オブジェクトとして特定する操作目標オブジェクト特定部と、
前記操作対象オブジェクトと前記操作目標オブジェクトとの組み合わせに応じて、当該組み合わせの各要素に関連付いた前記操作対象物の動作の内容を記憶する動作条件ファイルと、
前記操作対象オブジェクト特定部が特定した操作対象オブジェクトと前記操作目標オブジェクト特定部が特定した操作目標オブジェクトとの組み合わせに基づいて、前記動作条件ファイルから該当する動作の内容を決定する動作決定部と、
前記動作の内容に応じた複数動作データを記録する動作データ記憶手段と、
前記動作決定部で決定された動作の内容に基づき、前記動作データ記憶手段から対応する動作データを読み出して、前記動作決定部が決定した動作の内容に対応する前記操作対象物の動作データを生成する動作データ生成部と、
前記動作データ生成部で生成された動作データを描画する動作描画部とを備える描画制御装置。

【請求項2】
請求項1に記載の描画制御装置において、
前記入力部が前記ストロークの軌跡及び/又は速度を取り込み、
前記動作条件ファイルが前記操作対象オブジェクトと前記操作目標オブジェクトとの組み合わせ、並びに前記ストロークの軌跡及び/又は速度に応じて、前記組み合わせの各要素、並びにストロークの軌跡及び/又は速度に関連付いた前記操作対象物の動作の内容を記憶し、
前記動作決定部が前記操作対象オブジェクトと前記操作目標オブジェクトとの組み合わせ、並びに前記ストロークの軌跡及び/又は速度に基づいて、前記動作条件ファイルから該当する動作の内容を決定することを特徴とする描画制御装置。

【請求項3】
コンピュータを、
マウス等の入力機器からストロークの始点座標及び終点座標を取り込む入力部と、
画面上に表示され、前記入力部で取り込まれた始点座標を含むオブジェクトを、操作対象物の動作を決定するための操作対象オブジェクトとして特定する操作対象オブジェクト特定部と、
画面上に表示され、前記入力部で取り込まれた終点座標を含むオブジェクトを、操作対象物の動作を決定するための操作目標オブジェクトとして特定する操作目標オブジェクト特定部と、
前記操作対象オブジェクトと前記操作目標オブジェクトとの組み合わせに応じて、当該組み合わせの各要素に関連付いた前記操作対象物の動作の内容が記憶された動作条件ファイルと、
前記操作対象オブジェクト特定部が特定した操作対象オブジェクトと前記操作目標オブジェクト特定部が特定した操作目標オブジェクトとの組み合わせに基づいて、前記動作条件ファイルから該当する動作の内容を決定する動作決定部と、
前記動作の内容に応じた複数動作データを記録する動作データ記憶手段と、
前記動作決定部で決定された動作の内容に基づき、前記動作データ記憶手段から対応する動作データを読み出して、前記動作決定部が決定した動作の内容に対応する前記操作対象物の動作データを生成する動作データ生成部と、
前記動作データ生成部で生成された動作データを描画する動作描画部として機能させるための描画制御プログラム。

【請求項4】
マウス等の入力機器からストロークの始点座標及び終点座標を取り込む入力ステップと、
画面上に表示され、前記入力ステップで取り込まれた始点座標を含むオブジェクトを、操作対象物の動作を決定するための操作対象オブジェクトとして特定する操作対象オブジェクト特定ステップと、
画面上に表示され、前記入力ステップで取り込まれた終点座標を含むオブジェクトを、操作対象物の動作を決定するための操作目標オブジェクトとして特定する操作目標オブジェクト特定ステップと、
前記操作対象オブジェクトと前記操作目標オブジェクトとの組み合わせに応じて、当該組み合わせの各要素に関連付いた前記操作対象物の動作の内容が記憶された動作条件ファイルから、前記操作対象オブジェクト特定ステップで特定された操作対象オブジェクトと前記操作目標オブジェクト特定ステップで特定された操作目標オブジェクトとの組み合わせに基づいて、該当する動作の内容を決定する動作決定ステップと、
前記動作の内容に応じた複数動作データを記録する動作データ記憶手段から、前記動作決定ステップで決定された動作の内容に基づき、対応する動作データを読み出して、前記動作決定ステップが決定した動作の内容に対応する前記操作対象物の動作データを生成する動作データ生成ステップと、
前記動作データ生成ステップで生成された動作データを描画する動作描画ステップとを含む描画制御方法。
発明の詳細な説明 【技術分野】
【0001】
本発明は、入力機器から取得可能な情報に基づきキャラクタ等のオブジェクトの動作を描画制御する描画制御装置に関する。
【背景技術】
【0002】
背景技術となる情報処理装置が、特開2004-102719号公報に開示されている。以下、この背景技術の情報処理装置について説明する。
【0003】
背景技術の情報処理装置は、使用者の入力位置及び入力距離を検出する二次元入力手段と、ディスプレイに表示されている操作対象となるキャラクタの現在の表示位置を記録する表示位置記憶手段と、この表示位置記憶手段に記録されているキャラクタの現在位置と、二次元入力手段で検出した入力位置及び入力距離に基づいて決定したディスプレイ上の表示位置にキャラクタを表示制御する制御手段とを備える構成である。
【0004】
この情報処理装置によれば、二次元入力手段で検出した入力位置及び入力距離に基づき使用者の入力に合致するようにキャラクタを動かすことができる。

【特許文献1】特開2004-102719号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
前記背景技術の情報処理装置は、以上のように構成され、固定的に決定されている操作対象となるキャラクタを使用者の入力に応じて動かすことができ、実世界の使用者の操作に沿ってキャラクタを動かすことができる。ここで、背景技術の情報処理装置は、操作対象となるキャラクタ以外のオブジェクトに関係なく、キャラクタが自己の体を動かす場合、キャラクタが仮想空間内を動く場合には、有効な手段である。しかしながら、キャラクタが他のオブジェクトと連携して動作する場合には、キャラクタと他のオブジェクトとの固定的な動作を除き、使用者が意図した通りにキャラクタと他のオブジェクトを連携させて動かすことができないという課題を有する。
【0006】
より具体的な説明としては、現実世界で人間とジュース缶との間で生じる動作としては、人間がジュース缶内のジュースを飲む動作、人間がジュース缶を手に持つ動作、人間がジュース缶を蹴る動作、人間がジュース缶を投げる動作等の様々な動作が生じる可能性がある。しかし、ある男性のキャラクタとジュース缶が仮想空間上に用意されている場合に、ジュース缶を選択してキャラクタ側に入力手段をストロークさせたときに、検出した入力位置及び入力距離に基づいてキャラクタとジュース缶を表示制御すると、入力位置により対象オブジェクトがジュース缶であることは判明するものの、入力距離だけではキャラクタとジュース缶にどのような動作をさせればいいかを判断することは極めて難しいという課題を有する。無理に、短い入力距離でジュース缶を飲むという動作、普通の入力距離でジュース缶を持つという動作、長い入力距離でジュース缶を投げるという動作を割り当てた場合には、あまりにも使用者の操作感覚とかけ離れ現実的ではない。
【0007】
本発明は前記課題を解決するためになされたものであり、使用者の操作感覚と合致した入力手段の操作に基づいて、操作対象オブジェクトと操作目標オブジェクトとの動作が使用者の意図通りに描画制御できる描画制御装置を提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明によれば使用者は複数のやり方で操作対象オブジェクトが操作目標オブジェクトと相互作用する動作を制御することができる。従来であれば、使用者が階層型メニューからポインタで所望の動作を選択する必要があり、または、ゲームパッドを入力機器とした場合には複数のボタンやキーの組み合わせ(コマンド)を習得する必要があった。
【0009】
この発明によるインタフェースは、対話的で且つ直感的に動作を制御するものである。ペンタブレットやマウスでストロークを描画すると、人体モデルに様々な動作を行わせることができる。
【0010】
ストロークの最も重要な特徴は始点と終点を有することである。人の動作にも起点と目標がある。この見識に立って、一本のストローク(一筆書き)で同時に動作の起点と目標を使用者が指定することができる。そして、一本のストローク及び内容に基づいて適切な動作が決定される。さらに、ストロークの速度及びストロークの軌道といったストロークの中間属性に基づいて、動作の種類やスタイルを変化させることもできる。
本発明によれば、有益且つ高い利便性を有する。このインタフェースによれば、多くの種類の動作を対話式のアプリケーションにおいて操作可能となる。
【0011】
発明に係る描画制御装置は、マウス等の入力機器からストロークの始点座標及び終点座標を取り込む入力部と、画面上に表示され、前記入力部で取り込まれた始点座標を含むオブジェクトを、操作対象物の動作を決定するための操作対象オブジェクトとして特定する操作対象オブジェクト特定部と、画面上に表示され、前記入力部で取り込まれた終点座標を含むオブジェクトを、操作対象物の動作を決定するための操作目標オブジェクトとして特定する操作目標オブジェクト特定部と、前記操作対象オブジェクトと前記操作目標オブジェクトとの組み合わせに応じて、当該組み合わせの各要素に関連付いた前記操作対象物の動作の内容を記憶する動作条件ファイルと、前記操作対象オブジェクト特定部が特定した操作対象オブジェクトと前記操作目標オブジェクト特定部が特定した操作目標オブジェクトとの組み合わせに基づいて、前記動作条件ファイルから該当する動作の内容を決定する動作決定部と、前記動作の内容に応じた複数動作データを記録する動作データ記憶手段と、前記動作決定部で決定された動作の内容に基づき、前記動作データ記憶手段から対応する動作データを読み出して、前記動作決定部が決定した動作の内容に対応する前記操作対象物の動作データを生成する動作データ生成部と、前記動作データ生成部で生成された動作データを描画する動作描画部とを備えるものである。

【0012】
したがって、ストロークの始点座標と終点座標に位置するオブジェクトに基づき動作が決定され、決定された動作が描画されるので、使用者はマウス、ペンタブレッド等の入力機器でストロークを描くだけで、直感的に操作対象のオブジェクト及び操作目標のオブジェクトを相互作用的に動作させるために操作することができる。
【0013】
動作決定部は、操作対象オブジェクト、操作目標オブジェクト及び動作からなる動作条件データを予め記憶手段に有し、動作条件データを参照して動作を決定する構成で実装できる。この他、特定される操作対象オブジェクト、操作目標オブジェクトを入力すると動作を静的に特定する作用を有する動作決定部として実装することもできる。すなわち、前者は設定データを参照して動作する実装方式であり、後者は固定的に作用を実装した実装方式である。
【0014】
動作データ生成部は、決定された動作に従って適切な動作を選択または生成する。すなわち、後記するモーションブレンディングやインバースキネマティックスなどの手法を適用して実装し、必要に応じて動作を変形処理する構成にすることもできる。これらの手法を適用した場合には、記憶手段に動作データ以外の付加的な情報を必要に応じて記録する必要がある。
【0015】
発明に係る描画制御装置は、前記入力部が前記ストロークの軌跡及び/又は速度を取り込み、前記動作条件ファイルが前記操作対象オブジェクトと前記操作目標オブジェクトとの組み合わせ、並びに前記ストロークの軌跡及び/又は速度に応じて、前記組み合わせの各要素、並びにストロークの軌跡及び/又は速度に関連付いた前記操作対象物の動作の内容を記憶し、前記動作決定部が前記操作対象オブジェクトと前記操作目標オブジェクトとの組み合わせ、並びに前記ストロークの軌跡及び/又は速度に基づいて、前記動作条件ファイルから該当する動作の内容を決定するものである。

【0016】
したがって、操作対象オブジェクト及び操作目標オブジェクトだけでなく、ストロークの軌道及び/又はストロークの速度も用い、動作を決定して動作が描画されるので、使用者が入力機器を動かす軌跡、使用者が入力機器を動かす速度によっても、描画される動作を異ならせることもでき、より細やかに操作することができる。
【0017】
発明に係る描画制御プログラムは、コンピュータを、マウス等の入力機器からストロークの始点座標及び終点座標を取り込む入力部と、画面上に表示され、前記入力部で取り込まれた始点座標を含むオブジェクトを、操作対象物の動作を決定するための操作対象オブジェクトとして特定する操作対象オブジェクト特定部と、画面上に表示され、前記入力部で取り込まれた終点座標を含むオブジェクトを、操作対象物の動作を決定するための操作目標オブジェクトとして特定する操作目標オブジェクト特定部と、前記操作対象オブジェクトと前記操作目標オブジェクトとの組み合わせに応じて、当該組み合わせの各要素に関連付いた前記操作対象物の動作の内容が記憶された動作条件ファイルと、前記操作対象オブジェクト特定部が特定した操作対象オブジェクトと前記操作目標オブジェクト特定部が特定した操作目標オブジェクトとの組み合わせに基づいて、前記動作条件ファイルから該当する動作の内容を決定する動作決定部と、前記動作の内容に応じた複数動作データを記録する動作データ記憶手段と、前記動作決定部で決定された動作の内容に基づき、前記動作データ記憶手段から対応する動作データを読み出して、前記動作決定部が決定した動作の内容に対応する前記操作対象物の動作データを生成する動作データ生成部と、前記動作データ生成部で生成された動作データを描画する動作描画部として機能させるためのものである。

【0018】
発明に係る描画制御方法は、マウス等の入力機器からストロークの始点座標及び終点座標を取り込む入力ステップと、画面上に表示され、前記入力ステップで取り込まれた始点座標を含むオブジェクトを、操作対象物の動作を決定するための操作対象オブジェクトとして特定する操作対象オブジェクト特定ステップと、画面上に表示され、前記入力ステップで取り込まれた終点座標を含むオブジェクトを、操作対象物の動作を決定するための操作目標オブジェクトとして特定する操作目標オブジェクト特定ステップと、前記操作対象オブジェクトと前記操作目標オブジェクトとの組み合わせに応じて、当該組み合わせの各要素に関連付いた前記操作対象物の動作の内容が記憶された動作条件ファイルから、前記操作対象オブジェクト特定ステップで特定された操作対象オブジェクトと前記操作目標オブジェクト特定ステップで特定された操作目標オブジェクトとの組み合わせに基づいて、該当する動作の内容を決定する動作決定ステップと、前記動作の内容に応じた複数動作データを記録する動作データ記憶手段から、前記動作決定ステップで決定された動作の内容に基づき、対応する動作データを読み出して、前記動作決定ステップが決定した動作の内容に対応する前記操作対象物の動作データを生成する動作データ生成ステップと、前記動作データ生成ステップで生成された動作データを描画する動作描画ステップとを含むものである。
これら前記の発明の概要は、本発明に必須となる特徴を列挙したものではなく、これら複数の特徴のサブコンビネーションも発明となり得る。
【発明を実施するための最良の形態】
【0019】
ここで、本発明は多くの異なる形態で実施可能である。したがって、下記の実施形態の記載内容のみで解釈すべきではない。また、実施形態の全体を通して同じ要素には同じ符号を付けている。
実施形態では、主に装置について説明するが、所謂当業者であれば明らかな通り、本発明はコンピュータで使用可能なプログラム、システム、方法としても実施できる。また、本発明は、ハードウェア、ソフトウェア、または、ソフトウェア及びハードウェアの実施形態で実施可能である。プログラムは、ハードディスク、CD-ROM、DVD-ROM、光記憶装置または磁気記憶装置等の任意のコンピュータ可読媒体に記録できる。さらに、プログラムはネットワークを介した他のコンピュータに記録することができる。
【0020】
(本発明の第1の実施形態)
本発明の第1の実施形態に係る描画制御装置について、図に基づき説明する。
[1.描画制御装置の概要]
ストロークは動作の起点と目標を指定する。同時に1本のストロークで動作の起点と目標を指定することができることから、使用者が直感的に様々な種類の動作を直感的に指定することができる。
【0021】
[1.1 ストローク]
ストロークとは使用者がペンタブレットやマウスで描くことができる点の連続によって表される。マウスであれば所定サンプリング周期で受光素子の出力信号をコンピュータの入出力インタフェースが受け取り、基本ソフトによってマウスの移動が継続的に算出される。ストロークは動作の起点と目標を指定するのに用いる始点と終点を有する。
ストロークは動作の型や種類の詳細を変更するために補助的に用いるストロークの速度、ストロークの軌道等の中間属性も有している。
【0022】
[1.2 オブジェクト選択(Taget Selection)]
本実施形態では、選択可能なオブジェクトを6つの種類に分類する。
・[BODY]は操作を行う人体モデルの一部である。
・[SOMEONE]は他の人体モデルの一部である。
・[PROP]は人体モデルが取り扱う小道具、物、対象物である。
・[HELD PROP]は人体モデルが保持している小道具、物、対象物である。
・[GROUND]は地面である
・[PLACE]は人体モデルが移動できる場所、地点、または、何かを置く場所、地点 である。例えば、テーブルや椅子が該当する。
【0023】
ストロークはスクリーン座標においては2次元の点からなる。したがって、ワールド座標内で選択されたオブジェクト又は3次元の点を演算する必要がある。このような場合には所謂ピッキングの技術が用いられる。スクリーン上の2次元の点を通る3次元空間内の半直線を演算し、この半直線と交差するすべてのオブジェクト、人体モデル、地面を検出することで、選択された目標及び目標オブジェクトにおける指定された3次元の位置が特定される。本実施形態に係る一本のストロークベースのインタフェースにおいては、原則として、始点のオブジェクト及び終点のオブジェクトのみを特定する必要がある。ただし、ストロークが移動の道筋を指定する場合には、ストロークの中間の3次元の点を演算する必要がある。
【0024】
[1.3 動作決定(Action Determination)]
図4及び図5に示すように、動作の種類は一本のストロークで決定される。
・[Locomotion]は歩行、走行を含む移動を示す。[BODY]から[GRO UND]又は[PLACE]までのストロークは使用者が人体モデルを動かしたい位置 を指定していると推定できるため、[Locomotion]とした。ストロークの軌 道が移動の道筋に用いられる。[Locomotion]は、座る、立ち上がるといっ た動作も含まれる。この動作は、同一[PLACE]のストロークで指定される。
【0025】
・[Contact motion]は接触動作である。[BODY]から[PROP] 又は[SOMEONE]までのストロークは指定された人体モデルの部位と目標との相 互作用を指定するものだと推定される。この動作の型は選択された体の部位及び目標に よる。例えば、あるストロークは打撃、小道具の扱い、小道具への接触を指定する。
【0026】
・[Taking prop]は小道具を取る動作である。[PROP]から[BODY ]までのストロークは取る動作であると推定される。
・[Using prop]は小道具を使う動作である。[HELD PROP]から[SOMEONE]、[PROP]又は[BODY]までのストロークはある目的をもっ て使う動作であると推定される。例えば、手に持っているピッチャーから水を目標の コップに注ぐ動作、他の人体モデルに対して武器を用いる動作、キャラクタから目標物 が遠く離れている場合には小道具を目標物に投げる動作が該当する。
【0027】
・[Putting prop]は小道具を置く動作である。[HELD PROP]か ら[GROUND]又は[PLACE]までのストロークは人体モデルが小道具を選択 した目標に置く動作であると推定される。
・[Moving prop]は小道具を動かす動作である。[PROP]から[GRO UND]又は[PLACE]までのストロークは小道具を直接動かす動作であると推定 される。
【0028】
・[Gestures]は身ぶりである。[BODY]から[BODY]までのストロー クはいくつかの身ぶりを指定するときに用いる。例えば、人体モデルの一方の手から他 方の手へのストロークは拍手の動作を指定し、人体モデルの一方の手から人体モデルの 頭までのストロークは困惑、頭をかきむしる等の動作を指定する。
・[Changing Orientation]は方向転換である。[GROUND] から[GROUND]までのストロークは人体の移動の動作を指定するときに用いる。
【0029】
前記目標位置を指定する[BODY]から[GROND]までのストロークと比較して 本ストロークは関連動作又は方向の指定だと推定される。したがって、人体モデルが動 くことなしに方向を転換するときに用いることとする。
【0030】
図3に示すように、起点オブジェクトと目標オブジェクトから動作を決定することができる。同図をみると分かるように、ストロークの方向によっては起点オブジェクトと目標オブジェクトは逆となり結果的に決定される動作が異なるので、ストロークの方向は非常に重要である。ただし、図3に示す起点と目標による動作決定の表はいかようにでも設計することができる。より使用者が直感的に操作可能に設定することが望ましい。したがって、使用する環境によってかかる表の対応は相違する。
【0031】
[1.4 中間属性による動作変化]
ストロークの中間属性により動作の型を変化させることができる。例えば、人体モデルの手から他の人体モデルの手へゆっくりと描いたストロークであれば握手の動作を指定し、同様に人体モデルの手から他の人体モデルの手へストロークを描いた場合でもそのストロークが早く描かれた場合にはパンチの動作を指定することも可能である。つまり、ストロークの描く速度に基づいて動作の型を決定した例である。この他、ストロークの軌道を用いることもできる。例えば、同じパンチを指定するストロークであったとしても、ストロークが下方向か上方向に向かう場合には通常のストレートパンチでなく、アッパーカットを指定する構成にすることもできる。
【0032】
[1.5 実装]
本発明のストロークを用いたインタフェースは、どのようなモーション生成技術とも組み合わせて適用することができる。このインタフェースを用いて使用者は動作の目標位置を制御することができる。したがって、目標位置などの与えられたパラメータに基づき動的にモーションを生成することができるモーション生成技術を使用することが望ましい。例えば、モーショングラフ(motion graphs)、モーションブレンディング(motion blending)、逆運動学(inverse kinematics)はこれらの目的に適している。ゲームの分野で一般的に用いられる動作遷移木(Motion tree)を適用することもできる。
【0033】
モーショングラフについては、(J. Lee and K. H. Lee. Precomputing Avatar Behavior from Human Motion Data, Proc. of Eurographics / ACMSIGGRAPH Symposium on Computer Animation 2004.)、(L. Kovar, M. Gleicher, and F. Pighin.Motion Graphs. ACM Transactions of Graphics (Proc. of SIGGRAPH 2002), 31,3, 473-482, 2002.)、(J. Lee, J. Chai, P. Reistma, J. Hodgins,and N. Pollard. Interactive Control of Avatars Animated with Human Motion Data. ACM Transactions of Graphics(Proc. of SIGGRAPH 2002), 22, 3, 491-500, 2002.)に詳述されている。
【0034】
モーションブレンディングについては、(L. Kovar and M. Gleicher, M. Automated Extraction and Parameterization of Motions in Large Data Sets. ACM Transactions on Graphics (Proceedings ofSIGGRAPH 2004), pp. 559-568, 2004.)、(S. I. Park, H. J. Shin, and S. Y. Shin. Online Locomotion Generation Based on Motion Blending. Computer Animation and Virtual Worlds, 15, pp. 125-138,2004.)、(C. Rose, M. F. Cohen, and B.Bodenheimer. Verbs and Adverbs:Multidimensional Motion Interpolation.IEEE Computer Graphics andApplications, 18, 5, 32-40, 1998.)、(D. J. Wiley and J. k. Hahn. Interpolation Synthesis of Articulated Figure Motion.IEEE Computer Graphics and Applications, 17, 6, 39-45, 1999.)に詳述されている。
【0035】
与えられたパラメータに基づいて動的変化が要求される、歩く、走る、向きを変える、ステップといった動作にはモーションブレンディングを用いることができる。
他のオブジェクトとの相互作用を含む動作には、逆運動学を用いることが望ましい。これは多くの型のモーションに対して、モーションブレンディングのように十分なモーション例を用意することが難しいからである。
【0036】
到達可能範囲外にあるようなモーションの場合に接触動作の前に歩み寄るモーションを実行する自動ステップ生成機構を実装することも望ましい。これによれば使用者は目標が範囲に入っているか否かを苦慮することなく操作することができる。
【0037】
ある動作から次の動作に移るときにキャラクタの姿勢が不自然に変化することを防ぐために、動作の繋ぎ目でキャラクタのそれぞれの関節の回転を混合する単純ポーズブレンディング手法(a simple posture blending method)を用いることもできる。より円滑な変遷を提供することができる手法を適用することもできる。
【0038】
テンプレートに基づく技術は入力したストロークに対する動作決定に適している。それぞれの動作に対して、どのような実行状況のときにその動作を実行するかを記載したテンプレートを予め用意し、テンプレートと実際の状況を比較することで適切な動作を選択することができる。この技術の長所は拡張性にあり、設計者が適時に新たな設定を加えることができる。
【0039】
スマートオブジェクト手法(smart object approaches)を、オブジェクトを取り扱う動作の選択のために用いることができる。それぞれのオブジェクトごとに、そのオブジェクトを保持したり置いたりするための適切な動作をテンプレートとして用意しておくことで、それぞれのオブジェクトの特徴を反映した動作を選択することができる。また、特定のオブジェクトに依存した動作を行わせることもできる。
【0040】
[2.モジュール構成]
図1は本実施形態に係る描画制御装置のブロック構成図である。
マウス等の入力機器から始点座標及び終点座標を入力部21が取り込む。オブジェクト特定部22は取り込まれた始点座標に存在する操作対象オブジェクトを特定する。また、オブジェクト特定部22は取り込まれた終点座標に存在する操作目標オブジェクトを特定する。動作決定部23は特定された操作対象オブジェクト及び操作目標オブジェクトに基づき動作条件ファイルから動作を決定する。動作データ生成部24は決定された動作に基づき動作データ記憶手段26から動作データを読み出す。動作描画部25は読み出された動作データを描画する。
【0041】
[3.ハードウェア構成図]
図2は本実施形態に係る描画制御装置の構成要素のハードウェア構成図である。オペレータ端末10は汎用的なコンピュータであり、ハードウェアの構成としてはCPU(Central Processing Unit)11、DRAM(Dynamic Random Access Memory)12等のメインメモリ、外部記憶装置であるHD(hard disk)13、表示装置であるディスプレイ14、入力装置であるキーボード15及びマウス16、ネットワークに接続するための拡張カードであるLANカード17、CD-ROMドライブ18等からなる。
例えば、CD-ROMに格納されている描画制御プログラムがHD13上に複製(インストール)され、必要に応じて描画制御プログラムがメインメモリ12に読み出され、CPU11がかかるプログラムを実行することで描画制御装置を構成する。
【0042】
[4.動作条件ファイル]
図3は本実施形態に係る描画制御装置の動作条件ファイルの一例である。
1列目は操作対象オブジェクト(始点に係るオブジェクト)であり、1行目は操作目標オブジェクト(終点に係るオブジェクト)であり、操作対象オブジェクトと操作目標オブジェクトを指定することで動作が定まる。
操作対象オブジェクトの具体例は、操作を行う人体モデルの一部[BODY]、他の人体モデルの一部[SOMEONE]、小道具(物、対象物)[PROP]、操作を行う人体モデルが保持中の小道具[HELD PROP]、地面[GROUND]及び場所(地点)[PLACE]である。操作目標オブジェクトの具体例も本実施形態では同じであるが、当然異なっていてもよい。
【0043】
動作の具体例は、身ぶり[gesture]、接触動作(例:打つ[hitting]、扱う[manipulate]、触れる[touch])[contact motion]、歩行や走行[locomotion]、取る[taking]、小道具を使う(例:小道具で打つ[hitting with the prop]、[applying the prop])[using the prop]、移動[moving]、小道具を置く[putting the prop]、向きを変える[changing orientation]である。なお、n/aは有効でないことを示す。
したがって、例えば、[BODY]と[BODY]であれば[gesture]の動作に決定され、[PROP]と[BODY]であれば[taking]の動作に決定される。
【0044】
[5.具体的操作指示及び描画結果の説明]
図4及び図5は本実施形態に係る描画制御装置の描画例である。
[5.1 punch]
操作を行う人体モデルの右手を始点とし、他の人体モデルの腹を終点としたストローク(図4(a)上)をマウス16で指定した場合には、動作条件ファイルから[punch]と決定され、操作を行う人体モデルの[punch]の動作データがHD13から読み出され、他の人体モデルの腹への[punch]の描画がなされる(図4(a)下)。
【0045】
[5.2 take]
操作を行う人体モデルの右手を始点とし、小道具である瓶を終点としたストローク(図4(b)上)をマウス16で指定した場合には、動作条件ファイルから[take]と決定され、操作を行う人体モデルの[take]の動作データ及び人体モデルの動作に伴う小道具の動作データがHD13から読み出され、瓶を[take]する描画がなされる(図4(b)下)。
【0046】
[5.3 drink]
操作を行う人体モデルが保持中の小道具を始点とし、操作を行う人体モデルの顔を終点としたストローク(図4(c)上)をマウス16で指定した場合には、動作条件ファイルから[drink]と決定され、操作を行う人体モデルの[drink]の動作データ及び人体モデルの動作に伴う小道具の動作データがHD13から読み出され、手に持っている瓶の中身を[drink]する描画がなされる(図4(c)下)。
【0047】
[5.4 locomotion]
操作を行う人体モデルの左足を始点とし、地面を終点としたストローク(図4(d)上)をマウス16で指定した場合には、動作条件ファイルから[locomotion]と決定され、操作を行う人体モデルの[locomotion]の動作データがHD13から読み出され、ストロークのラインに沿った終点までの[locomotion]の描画がなされる(図4(d)下)。ここで、ストロークの中間属性であるストロークの軌道を用いている。
【0048】
[5.5 put]
操作を行う人体モデルが保持中の小道具を始点とし、地面を終点としたストローク(図5(e)上)をマウス16で指定した場合には、動作条件ファイルから[putting the prop]と決定され、操作を行う人体モデルの[putting the prop]の動作データ及び人体モデルの動作に伴う小道具の動作データがHD13から読み出され、瓶の[put]の描画がなされる(図5(e)下)。
【0049】
[5.6 kick]
操作を行う人体モデルの右足を始点とし、小道具を終点としたストローク(図5(f)上)をマウス16で指定した場合には、動作条件ファイルから[kick]と決定され、操作を行う人体モデルの[kick]の動作データ及び人体モデルの動作に伴う小道具の動作データがHD13から読み出され、瓶への[kick]の描画がなされる(図5(f)下)。
【0050】
[5.7 gesture]
操作を行う人体モデルの左手を始点とし、操作を行う人体モデルの頭を終点としたストローク(図5(g)上)をマウス16で指定した場合には、動作条件ファイルから[gesture]と決定され、操作を行う人体モデルの[gesture]の動作データがHD13から読み出され、[gesture]の描画がなされる(図5(g)下)。
【0051】
[5.8 changing orientation]
地面を始点とし、地面を終点としたストローク(図5(h)上)をマウス16で指定した場合には、動作条件ファイルから[changing orientation]と決定され、操作を行う人体モデルの[changing orientation]の動作データがHD13から読み出され、[changing orientation]の描画がなされる(図5(h)下)。
【0052】
[6.ユーザインターフェース]
[6.1 従来の階層型メニュー選択による操作]
図6及び図7は従来の階層型メニューのユーザインタフェースである。
図6の底部に複数の矩形のメニューが表示されている。より具体的には、最下層のメニューを選択することで、下位概念の動作メニューが表示され、利用者はポインタで動作を選択する。動作決定後に、操作を行う人体モデルの動作対象となる他の人体モデルを利用者が図7に示すようにポインタで選択する。
【0053】
[6.2 本発明のストロークによる操作]
図8及び図9は本実施形態に係るストロークによるユーザインタフェースの一例である。
図8に示すように利用者は操作を行う人体モデルの右足をポインタで指定し、図9に示すようにそのままドラッグしたまま他の人体モデルの腹をポインタで指定する。ここで、選択された人体モデルの部位に対してこのエクステントとなる長方体の辺が表示される。
【0054】
[7.使用動作]
図10は本実施形態に係る描画制御装置の動作フローチャートである。
入力部21、オブジェクト特定部22、動作決定部23、動作データ生成部24、動作描画部25は、描画制御プログラムの各モジュールをCPU11が実行することで実現される。
CPU11(入力部21)がマウス16からの入力を受け、ストロークの開始座標及び終了座標を取得する(ステップ101)。
CPU11(オブジェクト特定部22)が開始座標に基づき操作対象オブジェクトを特定する(ステップ111)。
CPU11(オブジェクト特定部22)が終了座標に基づき操作目標オブジェクトを特定する(ステップ112)。
CPU11(動作決定部23)が特定した操作対象オブジェクト及び操作目標オブジェクトに基づき動作設定ファイルから動作を決定する(ステップ131)。
CPU11(動作データ生成部24)が決定した動作に必要な動作データを動作データ記憶手段26から読み出す(ステップ141)。
CPU11(動作描画部25)が読み出した動作データを描画する(ステップ151)。ここで、動作データとしているが、CPU11(動作描画部25)は必要に応じて特定したオブジェクト等動作に必要な情報を用いることができる。
【0055】
[8.実施形態の効果]
このように本実施形態に係る描画制御装置によれば、ワンストロークで操作対象オブジェクト及び操作目標オブジェクトを特定でき、かかる特定した2つのオブジェクトから動作までも決定して描画がなされるので、使用者は簡易且つ直感的に操作できる。
【0056】
(その他の実施形態)
[ポインタでの指定] 前記第1の実施形態においては、ストロークの軌道、ストロークの速度といったストロークの中間属性によっても、追加的に動作が決定されるとしたが、決定される動作が閾値付近では曖昧となり、使用者の意図する動作と異なる動作を行う可能性もあるので、閾値付近での動作決定においてはかかる閾値に該当する動作を階層型メニューで表示させて使用者が選択できる構成にすることもできる。閾値付近とは、例えば、ストロークの速度12.5[cm/s]を閾値とすると、12.0[cm/s]、13[cm/s]が該当する。ストロークの速度が明らかに遅ければ例えば握手であり、ストロークの速度が明らかに早ければ例えばパンチとすることができるが、ストロークの速度がそのどちらでもない場合には使用者の意図を判断し難く、使用者に判断を委ねることが望ましい。
【0057】
そうすることで、使用者が意図に合致した動作を正確に行わせることができる。
また、それぞれの動作の使用回数を使用の度にカウントし、閾値付近での動作決定においては最も使用回数の多い動作に決定する構成にすることもできる。
さらにまた、使用者が使用回数の多い動作を行うのではなく、動作を階層型メニューで選択した場合にはストロークの入力と同時に例えば右クリックを押下することで表示する構成にすることもできる。
【0058】
[3つ以上のオブジェクトの指定] 前記第1の実施形態においては、ストローク上の始点座標と終点座標上の2つのオブジェクトを対象として動作を決定していたが、かかる2つのオブジェクト以外にストローク上のオブジェクトも特定し、これら計3つ以上のオブジェクトから動作を決定し動作データを読み出して描画させる構成にすることもできる。
そうすることで、より複雑な動作を使用者が指定することができる。
アプリケーションの実装においては、予め選択可能なオブジェクトと選択不可能なオブジェクトとが区別され、ストローク上のオブジェクトとして特定されるオブジェクトは選択可能なオブジェクトとすることもできる。
【0059】
[ビュー依存による課題の回避] 前記第1の実施形態においては、オブジェクトが重複している場合、オブジェクトが近接している場合には、使用者がオブジェクトをストロークで指定することが難しい場合がある。そこで、適応ビュー制御(an adaptive view control)、自動的カメラ制御(Automatic camera control)を適用することが望ましい。ただし、自動的カメラ制御の場合には、使用者がオブジェクトを選択しようとしているときにビューが移り変わると選択が難しいといった状況に陥る場合もある。そこで、例えば、オブジェクト上にポインタがある場合にはビューの移り変わりを遅くし、ポインタがオブジェクト上にない場合にはビューの移り変わりを早くする構成にすることもできる。また、ペンタブレットの傾きや別のマウスやキー入力によって、使用者が自分で視点を操作できるようなインターフェースを組み込む方法もある。
【0060】
利用者のオブジェクト選択操作を助けるために、現在ポインタが指しているオブジェクトを強調表示して描画することが有効である。また、非常に小さなオブジェクトの選択操作を助けるために、ポインタがどのオブジェクトも指していないときには(地面を指しているときには)、ポインタ付近のオブジェクトを自動的に探索するような処理を追加することもできる。
【0061】
[動いているキャラクタに対するストロークによる操作] 使用者が動いているキャラクタをストロークの操作対象とする場合には、キャラクタの動きが止まってから操作を行う方が操作を行い易い。ゲームパッドを用いた手法に比べストロークを用いたインタフェースはこのような操作の場合には時間を要する。そのため、クリックのみで動作を決定できる手法を組み合わせることが望ましい。動作の目標オブジェクトがクリックされると自動的に動作の対象オブジェクトを決定するような処理を組み込むことで、利用者はキャラクタを素早く操作することができる。これによれば、使用者が動作に必要となる手足を指定することなくキャラクタはパンチやキックを適切な手足を用いて実行することができる。
【0062】
[動作データ(モーションデータ)の構成例] 前記第1の実施形態においては、モーションデータ自体については、本発明の当業者であれば当然実装可能な技術であるため、詳述しなかったが、例えば、図11に示すデータの構成を有する。人体モデルを多関節体として表現することで、人体モデルの姿勢は、腰の位置・向き及び全関節の回転角度によって表すことができる。この姿勢の情報を各時刻ごとに持つことによって、人体モデルの動作を表現することができる。
【0063】
以上の前記各実施形態により本発明を説明したが、本発明の技術的範囲は実施形態に記載の範囲には限定されず、これら各実施形態に多様な変更又は改良を加えることが可能である。そして、かような変更又は改良を加えた実施の形態も本発明の技術的範囲に含まれる。このことは、特許請求の範囲及び課題を解決する手段からも明らかなことである。
【図面の簡単な説明】
【0064】
【図1】本発明の第1の実施形態に係る描画制御装置のブロック構成図である。
【図2】本発明の第1の実施形態に係る描画制御装置の構成要素のハードウェア構成図である。
【図3】本発明の第1の実施形態に係る描画制御装置の動作条件ファイルの一例である。
【図4】本発明の第1の実施形態に係る描画制御装置の描画例である。
【図5】本発明の第1の実施形態に係る描画制御装置の描画例である。
【図6】従来の階層型メニューのユーザインタフェースである。
【図7】従来の階層型メニューのユーザインタフェースである。
【図8】本発明の第1の実施形態に係るストロークによるユーザインタフェースの一例である。
【図9】本発明の第1の実施形態に係るストロークによるユーザインタフェースの一例である。
【図10】本発明の第1の実施形態に係る描画制御装置の動作フローチャートである。
【図11】本発明のその他の実施形態に係る描画制御装置の動作フローチャートである。
【符号の説明】
【0065】
10 コンピュータ
11 CPU
12 DRAM
13 HD
14 ディスプレイ
15 キーボード
16 マウス
17 LANカード
18 CD-ROMドライブ
21 入力部
22 オブジェクト特定部
23 動作決定部
24 動作データ生成部
25 動作描画部
26 動作データ記憶手段

図面
【図1】
0
【図2】
1
【図3】
2
【図4】
3
【図5】
4
【図6】
5
【図7】
6
【図8】
7
【図9】
8
【図10】
9
【図11】
10