JP4199764B2 - スキンの制御点の位置の計算装置、計算方法、ならびに、プログラム - Google Patents

スキンの制御点の位置の計算装置、計算方法、ならびに、プログラム Download PDF

Info

Publication number
JP4199764B2
JP4199764B2 JP2005343318A JP2005343318A JP4199764B2 JP 4199764 B2 JP4199764 B2 JP 4199764B2 JP 2005343318 A JP2005343318 A JP 2005343318A JP 2005343318 A JP2005343318 A JP 2005343318A JP 4199764 B2 JP4199764 B2 JP 4199764B2
Authority
JP
Japan
Prior art keywords
posture
point
line segment
bone
change
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2005343318A
Other languages
English (en)
Other versions
JP2007148856A (ja
Inventor
伸介 向井
豪 渡邊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Konami Digital Entertainment Co Ltd
Original Assignee
Konami Digital Entertainment Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Konami Digital Entertainment Co Ltd filed Critical Konami Digital Entertainment Co Ltd
Priority to JP2005343318A priority Critical patent/JP4199764B2/ja
Publication of JP2007148856A publication Critical patent/JP2007148856A/ja
Application granted granted Critical
Publication of JP4199764B2 publication Critical patent/JP4199764B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、連結される2つのボーン(bone)の連結点付近のスキン(skin)の形状をできるだけ自然に変化させるのに好適な、スキンの制御点の位置の計算装置、計算方法、ならびに、これらをコンピュータにて実現するプログラムに関する。
従来から、コンピュータグラフィックスにおいて人物や動物などのキャラクターを表現する際に、その骨格をボーンという線分状オブジェクトで抽象化し、各ボーンの回りにボーンに対して位置が固定される点の位置によって、皮膚の形状を抽象化したスキンという面形状を求める技術が提案されている。
ここで、ボーンやスキンは、3次元グラフィックスのモデリング技法で用いられる概念である。ボーンは、位置と姿勢が定まるリンク(線分状オブジェクト)であって、手足の間接のような部分で回転移動できる回転軸や回転角に制限を設けたものをいう。このように、回転移動に制限を設けた線分状オブジェクトは、「リンク」とも呼ばれる。
また、3次元空間内に配置される面形状の断面図(リブ)を並べ、これらをつなぎ合わせて複雑な曲面からなる形状が作られるが、この面形状をスキンと呼ぶ。
一般に、リブはボーンに固定されているので、ボーンが位置や姿勢を変更すると、これとともにリブの位置や姿勢も変更される。したがって、リブの形状を決める頂点(リブが多角形の場合)や、各種の制御点(リブが曲線による形状の場合)も、ボーンに固定されている。
このような、ボーンとスキンを用いる技術は、以下の文献に開示されている。
Mark Deloura編、川西裕幸監訳、狩野智英飜訳、GAME PROGRAMMING GEMS、458頁〜465頁、株式会社ボーンデジタル、2001年7月25日発行 Tim Coleman,Sherri Sheridan著、デジタル・スタジオ飜訳、目指せプロアニメータ Mayaキャラクタアニメーション、127頁〜132頁および178頁〜180頁、株式会社ボーンデジタル、2002年4月25日発行
[非特許文献1]では、ボーンに対して取り付けられた連続的なメッシュによりスキンの形状を求める技術が開示されており、メッシュの頂点の位置を、複数のボーンのそれぞれに固定された点の位置の重み付き平均とすることによって、人間の腕が肘で曲げられる様子をできるだけ自然に見せる技術が開示されている。
[非特許文献2]では、同様な状況において、メッシュの頂点の位置をユーザが明示的に変化させることによって、人間の足が膝で曲げられる様子をできるだけ自然に見せる技術が開示されている。
これらの技術では、肘や膝を曲げる際の皮膚形状の変化が自然に見えるような工夫がされているのである。
しかしながら、人間や動物の骨格においては、肘や膝を捻ることもできる。このような場合、上記の文献開示の技術をそのまま適用すると、肘や膝付近のスキンが不自然に細くなってしまい、場合によっては、太さが0になってしまうことが生ずる。
また、肘や膝などの曲げのほかに捻りなども含めたボーンの姿勢の変化に対するスキンの形状の変化を、できるだけ簡単な計算で、できるだけ自然に見えるようにしたい、という要望は大きい。
本発明は、連結される2つのボーンの連結点付近のスキンの形状をできるだけ自然に変化させるのに好適な、スキンの制御点の位置の計算装置、計算方法、ならびに、これらをコンピュータにて実現するプログラムを提供することを目的とする。
以上の目的を達成するため、本発明の原理にしたがって、下記の発明を開示する。
本発明の第1の観点に係るスキンの制御点の位置の計算装置は、仮想空間に配置される第1の線分状オブジェクト(以下、適宜「ボーン」という。)と、当該第1のボーンに連結される第2のボーンと、に依存する面形状(以下、適宜「スキン」という。)の制御点の位置を計算し、姿勢変化取得部、姿勢更新部、位置出力部を備え、以下のように構成する。
第1のボーンと第2のボーンは、たとえば、上腕(肩から肘まで)と下腕(肘から手首まで)、あるいは、腿(股から膝まで)と脛(膝から足首まで)などに相当するものであり、スキンを利用したコンピュータグラフィックスの分野では、第1のボーンを親ボーン、第2のボーンを子ボーンと呼ぶことも多い。親ボーンの位置や姿勢の変化は、子ボーンにも継承される。また、子ボーンの位置や姿勢は、親ボーンに対する子ボーンの相対的な姿勢によって定めることができる。
まず、姿勢変化取得部は、当該第1のボーンに対する当該第2のボーンの姿勢の変化を取得する。
たとえば、肘や膝を曲げたり、捻ったりする場合、第2のボーンの第1のボーンに対する相対的な姿勢が変化することになる。そこで、姿勢変化取得部は、この姿勢の変化を取得するのである。
姿勢の変化は、微小時間だけ以前の姿勢からの変化量によって表現しても良いし、予め定めた基準姿勢(たとえば、肘や膝を無理なく伸ばした姿勢)からの変化量によって表現しても良い。
また、第1のボーンに対する第2のボーンの姿勢の表現方法としては、第1のボーンに固定された座標系に対するオイラー角(ロール、ピッチ、ヨー)によって表現する手法、クォータニオンによって表現する手法など、種々採用することができる。
さらに、姿勢更新部は、当該第1のボーンと当該第2のボーンとが連結される点もしくはその近傍(以下「連結点」という。)からの距離が一定の点(以下「仮想点」という。)の位置を更新する。すなわち、取得された変化後の姿勢と当該第1のボーンに対する当該第2のボーンの変化前の姿勢とを補間するように、当該連結点と当該仮想点とを結ぶ線分の姿勢が変化するように、更新する。
上記の例でいえば、連結点は、肘関節や膝関節に相当するものであり、仮想点は、肘や膝付近の皮膚表面の基準位置に相当するものである。仮想点と連結点との距離を一定にしていることで、膝や肘が不自然に細くなってしまうのを防止するのである。
なお、仮想点の姿勢の変化を求めるための補間の手法は、姿勢変化取得部が取得した姿勢の変化を、何らかの意味で内挿・内分するものとするのが好ましい。このような補間の手法は、種々考えられるが、好適例は後述する。
さらに、位置出力部は、当該仮想点の位置から、当該スキンの制御点の位置を求めて、出力する。
連結点からの距離が一定であるような仮想点の位置に基づいて、スキンの制御点の位置を求めることから、肘や膝の太さを維持しようとする効果が得られるので、肘や膝を捻った場合においても、肘や膝付近のスキンが不自然に細くなってしまうことを防止することができる。
本発明によれば、連結される2つのボーンの連結点付近のスキンの形状をできるだけ自然に変化させることができる。
また、本発明の計算装置において、姿勢更新部は、当該連結点で当該第1のボーンに連結される第3のボーンの姿勢の変化が、当該第1のボーンに対する当該第2のボーンの変化前の姿勢と変化後の姿勢とを補間するように変化させ、当該仮想点の位置を当該第3のボーンに対して固定されたものとすることにより、当該仮想点の位置を更新するように構成することができる。
本発明は上記発明の好適実施形態に係るものである。3次元グラフィックスシステムにおいては、ボーンの姿勢の変化に応じて、そのボーンに固定された点の位置を求めることがライブラリ化されていたり、画像処理演算コプロセッサ(coprocessor)によって高速な計算が可能な場合も多い。
本発明では、人間や動物には実際には存在しない仮想的な骨格である第3のボーンを想定し、仮想点をこの第3のボーンに固定する。そして、第3のボーンを第1のボーンと第2のボーンが連結する点もしくはその近傍で、第1のボーンに連結する。さらに、第1のボーンに固定された座標系における第3のボーンの姿勢の変化を、第2のボーンの姿勢の変化に連動させるのである。
本発明によれば、仮想的な第3のボーンを想定して仮想点を第3のボーンに固定することによって、容易に仮想点の位置を求めることができるようになる。
また、本発明の計算装置において、姿勢更新部は、取得された姿勢の変化に、0より大きく1より小さい所定の比例定数を乗じて補間するように構成することができる。
本発明は、上記発明における補間の手法の好適実施形態に係るものであり、典型的な比例定数は0.5である。
この場合、姿勢の変化が上記のオイラー角によって表現される場合には、第1のボーンに対する第2のボーンのロール、ピッチ、ヨーのそれぞれを半分にしたものを、第1のボーンに対する第3のボーン(および、仮想点と連結点を結ぶ線分)のロール、ピッチ、ヨーとして採用する。
また、姿勢の変化がクォータニオンによって表現される場合、第1のボーンに対する第2のボーンの姿勢の変化のクォータニオンをQ = (X sinφ,Y sinφ,Z sinφ,cosφ)としたとき、第1のボーンに対する第3のボーン(および、仮想点と連結点を結ぶ線分)の姿勢の変化のクオータニオンをQ = (X sin(φ/2),Y sin(φ/2),Z sin(φ/2),cos(φ/2))とする。この場合は、「姿勢の変化」として、クォータニオンによって表現される回転量に所定の定数を乗じるのである。
本発明によれば、肘や膝の曲げや捻りの回転量に0〜1の間の比例定数で比例する回転量で仮想点を移動させることで、肘や膝の曲げや捻りを「内挿」「内分」し、容易に仮想点の位置を求めることができるようになる。
また、本発明の計算装置において、位置出力部は、当該仮想点の位置を求めて、当該求められた位置を、当該スキンの制御点の位置として出力するように構成することができる。
本発明は、上記発明における好適実施形態に係るものであり、仮想点の位置をそのままスキンの制御点の位置とするものである。
上記のように、仮想点と連結点との距離は一定であるから、第1のボーンに対して第2のボーンがどのような回転をしても、スキンの制御点が連結点に近付くことはない。したがって、曲げや捻りによって連結点付近のスキンが細くなり過ぎてしまうことを防止することができるのである。
本発明によれば、仮想点の位置をそのままスキンの制御点の位置とすることで、容易にスキンの制御点の位置を求めることができるようになる。
また、本発明の計算装置において、位置出力部は、当該第1のボーンに対する位置が固定された点の位置と当該第2のボーンに対する位置が固定された点の位置の少なくともいずれか一方と、当該仮想点の位置と、の重み付き平均を求めて、当該求められた位置を、当該スキンの制御点の位置として出力するように構成することができる。
本発明は、上記発明における好適実施形態に係るものであり、仮想点の位置、第1のボーンに固定された点(第1固定点)の位置、第2のボーンに固定された点(第2固定点)の位置を重み付き平均するものである。キャラクターの外観の構成によっては、仮想点の位置をそのままスキンの制御点の位置とするのではなく、第1のボーンや第2のボーンにも依存させたい場合がある。たとえば、肘や膝は、捻りによっていくぶん細くなる、というような状況を表現したい場合である。
このような場合には、以下のいずれかを採用するのである。
(a)第1固定点と仮想点の位置の重み付き平均
(b)第2固定点と仮想点の位置の重み付き平均
(c)第1固定点と第2固定点と仮想点の位置の重み付き平均
本発明によれば、スキンの制御点の位置を仮想点のみならず第1のボーンや第2のボーンにも依存させることが自然となるような状況に適合したコンピュータグラフィックスを生成することができるようになる。
また、本発明の計算装置において、位置出力部は、当該仮想点の位置に対して、0.5より大きい重みを与えて、重み付き平均を求めるように構成することができる。
本発明は、上記発明における好適実施形態に係るものであり、重み付き平均をとる際に、仮想点の重みを最大にするものである。
本発明によれば、スキンの制御点の位置を仮想点のみならず第1のボーンや第2のボーンにも依存させることができ、仮想点の重みを最大とすることで、自然なスキンの形状を実現することができるようになる。
本発明のその他の観点に係るスキンの制御点の位置の計算方法は、仮想空間に配置される第1のボーンと、当該第1のボーンに連結される第2のボーンと、に依存するスキンの制御点の位置の計算装置であって、姿勢変化取得部、姿勢更新部、位置出力部を備える計算装置にて実行され、姿勢変化取得工程、姿勢更新工程、位置出力工程を備え、以下のように構成する。
まず、姿勢変化取得工程では、姿勢変化取得部が、当該第1のボーンに対する当該第2のボーンの姿勢の変化を取得する。
一方、姿勢更新工程では、姿勢更新部が、当該第1のボーンと当該第2のボーンとが連結される点もしくはその近傍(以下「連結点」という。)からの距離が一定の点(以下「仮想点」という。)の位置を、取得された変化後の姿勢と当該第1のボーンに対する当該第2のボーンの変化前の姿勢とを補間するように、当該連結点と当該仮想点とを結ぶ線分の姿勢が変化するように、更新する。
さらに、位置出力工程では、位置出力部が、当該仮想点の位置から、当該スキンの制御点の位置を求めて、出力する。
本発明のその他の観点に係るプログラムは、コンピュータを上記のスキンの制御点の位置の計算装置として機能させ、コンピュータに上記のスキンの制御点の位置の計算方法を実行させるように構成する。
また、本発明のプログラムは、コンパクトディスク、フレキシブルディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、半導体メモリ等のコンピュータ読取可能な情報記憶媒体に記録することができる。
上記プログラムは、プログラムが実行されるコンピュータとは独立して、コンピュータ通信網を介して配布・販売することができる。また、上記情報記憶媒体は、コンピュータとは独立して配布・販売することができる。
本発明によれば、連結される2つのボーンの連結点付近のスキンの形状をできるだけ自然に変化させるのに好適な、スキンの制御点の位置の計算装置、計算方法、ならびに、これらをコンピュータにて実現するプログラムを提供することができる。
以下に本発明の実施形態を説明する。以下では、理解を容易にするため、ゲーム用の情報処理装置を利用して本発明が実現される実施形態を説明するが、以下に説明する実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素もしくは全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。
図1は、プログラムを実行することにより、本発明のスキンの制御点の位置の計算装置の機能を果たす典型的な情報処理装置の概要構成を示す模式図である。以下、本図を参照して説明する。
情報処理装置100は、CPU(Central Processing Unit)101と、ROM 102と、RAM(Random Access Memory)103と、インターフェイス104と、コントローラ105と、外部メモリ106と、画像処理部107と、DVD−ROM(Digital Versatile Disc ROM)ドライブ108と、NIC(Network Interface Card)109と、音声処理部110と、を備える。
ゲーム用のプログラムおよびデータを記憶したDVD−ROMをDVD−ROMドライブ108に装着して、情報処理装置100の電源を投入することにより、当該プログラムが実行され、本実施形態のスキンの制御点の位置の計算装置が実現される。
CPU 101は、情報処理装置100全体の動作を制御し、各構成要素と接続され制御信号やデータをやりとりする。また、CPU 101は、レジスタ(図示せず)という高速アクセスが可能な記憶域に対してALU(Arithmetic Logic Unit)(図示せず)を用いて加減乗除等の算術演算や、論理和、論理積、論理否定等の論理演算、ビット和、ビット積、ビット反転、ビットシフト、ビット回転等のビット演算などを行うことができる。さらに、マルチメディア処理対応のための加減乗除等の飽和演算や、三角関数等、ベクトル演算などを高速に行えるように、CPU 101自身が構成されているものや、コプロセッサを備えて実現するものがある。
ROM 102には、電源投入直後に実行されるIPL(Initial Program Loader)が記録され、これが実行されることにより、DVD−ROMに記録されたプログラムをRAM 103に読み出してCPU 101による実行が開始される。また、ROM 102には、情報処理装置100全体の動作制御に必要なオペレーティングシステムのプログラムや各種のデータが記録される。
RAM 103は、データやプログラムを一時的に記憶するためのもので、DVD−ROMから読み出したプログラムやデータ、その他ゲームの進行やチャット通信に必要なデータが保持される。また、CPU 101は、RAM 103に変数領域を設け、当該変数に格納された値に対して直接ALUを作用させて演算を行ったり、RAM 103に格納された値を一旦レジスタに格納してからレジスタに対して演算を行い、演算結果をメモリに書き戻す、などの処理を行う。
インターフェイス104を介して接続されたコントローラ105は、ユーザがゲーム実行の際に行う操作入力を受け付ける。
インターフェイス104を介して着脱自在に接続された外部メモリ106には、ゲーム等のプレイ状況(過去の成績等)を示すデータ、ゲームの進行状態を示すデータ、ネットワーク対戦の場合のチャット通信のログ(記録)のデータなどが書き換え可能に記憶される。ユーザは、コントローラ105を介して指示入力を行うことにより、これらのデータを適宜外部メモリ106に記録することができる。
DVD−ROMドライブ108に装着されるDVD−ROMには、ゲームを実現するためのプログラムとゲームに付随する画像データや音声データが記録される。CPU 101の制御によって、DVD−ROMドライブ108は、これに装着されたDVD−ROMに対する読み出し処理を行って、必要なプログラムやデータを読み出し、これらはRAM 103等に一時的に記憶される。
画像処理部107は、DVD−ROMから読み出されたデータをCPU 101や画像処理部107が備える画像演算プロセッサ(図示せず)によって加工処理した後、これを画像処理部107が備えるフレームメモリ(図示せず)に記録する。フレームメモリに記録された画像情報は、所定の同期タイミングでビデオ信号に変換され画像処理部107に接続されるモニタ(図示せず)へ出力される。これにより、各種の画像表示が可能となる。
画像演算プロセッサは、2次元の画像の重ね合わせ演算やαブレンディング等の透過演算、各種の飽和演算を高速に実行できる。
また、仮想3次元空間に配置され、各種のテクスチャ情報が付加されたポリゴン情報を、Zバッファ法によりレンダリングして、所定の視点位置から仮想3次元空間に配置されたポリゴンを所定の視線の方向へ俯瞰したレンダリング画像を得る演算の高速実行も可能である。
さらに、CPU 101と画像演算プロセッサが協調動作することにより、文字の形状を定義するフォント情報にしたがって、文字列を2次元画像としてフレームメモリへ描画したり、各ポリゴン表面へ描画することが可能である。
NIC 109は、情報処理装置100をインターネット等のコンピュータ通信網(図示せず)に接続するためのものであり、LAN(Local Area Network)を構成する際に用いられる10BASE−T/100BASE−T規格にしたがうものや、電話回線を用いてインターネットに接続するためのアナログモデム、ISDN(Integrated Services Digital Network)モデム、ADSL(Asymmetric Digital Subscriber Line)モデム、ケーブルテレビジョン回線を用いてインターネットに接続するためのケーブルモデム等と、これらとCPU 101との仲立ちを行うインターフェース(図示せず)により構成される。
音声処理部110は、DVD−ROMから読み出した音声データをアナログ音声信号に変換し、これに接続されたスピーカ(図示せず)から出力させる。また、CPU 101の制御の下、ゲームの進行の中で発生させるべき効果音や楽曲データを生成し、これに対応した音声をスピーカから出力させる。
音声処理部110では、DVD−ROMに記録された音声データがMIDIデータである場合には、これが有する音源データを参照して、MIDIデータをPCMデータに変換する。また、ADPCM形式やOgg Vorbis形式等の圧縮済音声データである場合には、これを展開してPCMデータに変換する。PCMデータは、そのサンプリング周波数に応じたタイミングでD/A(Digital/Analog)変換を行って、スピーカに出力することにより、音声出力が可能となる。
さらに、情報処理装置100には、インターフェース104を介してマイク111を接続することができる。この場合、マイク111からのアナログ信号に対しては、適当なサンプリング周波数でA/D変換を行い、PCM形式のディジタル信号として、音声処理部110でのミキシング等の処理ができるようにする。
このほか、情報処理装置100は、ハードディスク等の大容量外部記憶装置を用いて、ROM 102、RAM 103、外部メモリ106、DVD−ROMドライブ108に装着されるDVD−ROM等と同じ機能を果たすように構成してもよい。
以上で説明した情報処理装置100は、いわゆる「コンシューマ向けテレビゲーム装置」に相当するものであるが、仮想空間を表示するような画像処理を行うものであれば本発明を実現することができる。したがって、携帯電話、携帯ゲーム機器、カラオケ装置、一般的なビジネス用コンピュータなど、種々の計算機上で本発明を実現することが可能である。
以下では、まず、本発明の基本的な考え方について説明する。図2は、2つのボーンとスキンの制御点との関係を示す説明図である。以下、本図を参照して説明する。
本図に示すように、親ボーン(第1のボーン)211と、子ボーン(第2のボーン)221は、親ボーン211の端部である連結点231で連結されている。そして、親ボーン211に固定されたローカル座標系261において、子ボーン221の姿勢が定義される。
したがって、親ボーン211の外部座標系における位置および姿勢が決まれば、それに対して、ローカル座標系261における子ボーン221の姿勢をさらに反映させることによって、外部座標系に対する子ボーン221の位置および姿勢が決定されることになる。
ここで、外部座標系としては、グローバル座標系や、親ボーン211のさらに親であるボーンに固定された座標系(子ボーン221から見れば祖父母ボーンに相当する。)など、種々のものが考えられる。
また、親ボーン211に固定された親制御点(第1固定点)212が、子ボーン221に固定された子制御点(第2固定点)222が、それぞれ用意されている。親制御点212は、親ボーン211に固定されているから、ローカル座標系261における位置は変化しない。
子制御点222は、子ボーン221に固定されているから、子ボーン221の親ボーン211に対する姿勢が変化すれば、それと同じだけ、連結点231から子制御点222へ伸びる線分223の姿勢も変化する。
以下では、理解を容易にするため、子ボーン221の基準姿勢として、親ボーン211と子ボーン221が長手方向に一直線の姿勢となり、親制御点212と子制御点222とが重なる姿勢を採用する。
これは、親ボーン211として上腕を、子ボーン221として下腕を、親制御点212と子制御点222として肘付近の皮膚表面を採用したことに相当する。
図3は、親ボーン211に対して子ボーン221が姿勢を変化させた場合の親制御点212と子制御点222との位置の変化を示す説明図である。以下、本図を参照して説明する。
本図では、親ボーン211の連結点231側ではない端点側から、親ボーン211の長手方向に、親ボーン211および子ボーン221を見ている。
本図(a)に示すように、親ボーン211に対して子ボーン221が基準姿勢にあり、捻りがない場合には、親制御点212は子制御点222と重なっている。
本図(b)(c)(d)(e)は、それぞれ、親ボーン211に対して子ボーン221が45度、90度、135度、180度回転した姿勢に捻られた場合を示す説明図である。連結点231から親制御点212から子制御点222を見込む角度は、それぞれ、捻りの回転量と同じく、45度、90度、135度、180度である。
以下では、従来の技術と、本発明に係る技術について、順次説明する。
従来の手法では、親制御点212や子制御点222の位置を、そのままスキンの制御点の位置として採用するか、もしくは、親制御点212の位置と子制御点222の位置の重み付き平均をとり、これらの間を内分する点を採用していた。
図4は、図3に示す状況において、親制御点212と子制御点222からスキンの制御点の位置を求める従来の手法を説明する説明図である。以下、本図を参照して説明する。
本図に示すように、従来の手法では、親制御点212の位置と子制御点222の位置を所定の内分比(本図では1対1である)で内分する点をスキンの制御点301とするものである。
親ボーン211に対する子ボーン221の捻り角度が0度の場合(本図(a))は、スキンの制御点301は、親制御点212および子制御点222と重なる。
また、親ボーン211に対する子ボーン221の捻り角度が45度、90度、135度(本図(b)〜(d))、スキンの制御点301は次第に連結点231に近付いていき、捻り角度が180度(本図(e))となると、スキンの制御点301は連結点231に重なってしまう。これが、捻りによって関節付近のスキンが細くなりすぎてしまう現象の原因である。
一方、本発明では、子ボーン221の姿勢の変化に連動して動く仮想点を採用し、この仮想点をそのまま(実施形態によっては重み付き平均をとって)スキンの制御点とすることによって、細くなりすぎる現象を防止する。
図5は、図3に示す状況において、親制御点212と子制御点222からスキンの制御点の位置を求める本発明の手法を説明する説明図である。以下、本図を参照して説明する。
本図に示すように、本態様では、親ボーン211に対して子ボーン221が基準姿勢にあるときに、親制御点212および子制御点222と重なる位置にある仮想点401を想定する。ここで、仮想点401と連結点231の距離は一定である。
そして、この仮想点401の位置(すなわち、連結点231と仮想点401を結ぶ線分の姿勢)を、子ボーン221の姿勢の変化に連動して動かす。本図では、連動の比例定数を、子ボーン221の姿勢の変化の半分としている。
すなわち、子ボーン221の捻り角度が45度、90度、135度、180度(本図(b)〜(e))となれば、仮想点401の回転角度は22.5度、45度、67.5度、90度(本図(b)〜(e))とするのである。
本態様では、仮想点401の位置をそのままスキンの制御点301の位置として採用する。したがって、子ボーン221の捻り角度がどのような角度になったとしても、スキンの制御点301と連結点231との距離は一定であり、関節付近のスキンが細くなることはない。
後述するように、仮想点401の位置の変化の連動の際の比例定数や、仮想点401の位置をそのままスキンの制御点301の位置とするのではなく、親制御点212や子制御点222(さらに、他のボーンに固定される制御点を考慮しても良い。)との重み付き平均とするなど、種々の態様が考えられる。
従来の手法でスキンが細くなってしまう現象は、必ずしもこのような捻りの場合だけに限られるわけではなく、曲げの場合など、さまざまな状況でも生じうる。以下では、このような従来の手法と本発明の手法を、実際の人体のコンピュータグラフィックスに適用した場合について説明する。これらの例では、連結点として肩を想定しており、鎖骨が親ボーン211、上腕が子ボーン221に相当する。
図6は、腕を左右に伸ばした状態を基本姿勢とした女性の人体モデルを背中側から見た様子を示す説明図である。
ここで、左肩では従来の手法、右肩では本発明の手法により、スキンの制御点の位置を変化させている。
本図では、肩甲骨が親ボーン211となっており、上腕骨が子ボーン221となっている。
図7は、腕を斜め前に伸ばした状態の女性の人体モデルを、背中側から見た様子を示す説明図である。
腕を斜め前に伸ばすと、親ボーン211と子ボーン221が連結される肩付近には曲げと捻りが生じることとなる。したがって、従来の手法による左肩ではスキンの制御点301の位置が関節に近付いて、スキンの形状が不自然に細くなっているのがわかる。
一方、本発明の手法による右肩では、このような現象は起きておらず、肩のスキンの制御点401の位置が適切であるため、筋肉の盛り上がり形状をそのまま維持している。
図8は、これらの人体モデルをもとに3次元グラフィックスを生成した結果を示すものであり、人体モデルを正面から見た様子を示す説明図である。
本図を見てもわかる通り、本図(a)の基本姿勢(本図上段)では、本実施形態による右肩近傍701と従来技術による左肩近傍702は、自然な形状を保っている。
しかし、本図(b)のように次第に姿勢を変化させると、本実施形態による右肩近傍701は、適切な形状を保っているものの、従来技術による左肩近傍702は、いくぶん細くなっているのがわかる。
さらに、本図(c)のように、腕を斜め前に大きく伸ばすように姿勢が変わると、従来の手法による左肩近傍702の形状は不自然に細くなっているのに対し、本発明の手法による右肩近傍701の形状は自然な形状を保っている。
図9は、本実施形態に係るスキンの制御点の位置の計算装置の概要構成を示す説明図である。図10は、スキンの制御点の位置の計算装置801にて実行される計算処理の制御の流れを示す説明図である。以下、これらの図を参照して説明する。
本実施形態に係るスキンの制御点の位置の計算装置801は、仮想空間に配置される親ボーン211と、当該親ボーン211に連結される子ボーン221と、に依存するスキンの制御点301の位置を計算するものであり、姿勢変化取得部802、姿勢更新部803、位置出力部804を備える。
まず、姿勢変化取得部802は、親ボーン211に対する子ボーン221の姿勢の変化を取得する(ステップS901)。
親ボーン211に対する子ボーン221の姿勢の情報は、一般には、RAM 103に記憶され、プレイヤーの指示入力や、仮想空間における物理現象をシミュレートする計算によって、適宜更新される。したがって、CPU 101が、RAM 103等と共働して、姿勢変化取得部802として機能する。
たとえば、プレイヤーの指示入力によって、キャラクターの肘や膝が曲がったり、捻られたりする場合、子ボーン221の親ボーン211に対する相対的な姿勢が変化することになる。そこで、姿勢変化取得部802は、この姿勢の変化を取得するのである。
姿勢の情報の数値が変化するごとに、適切なタイミングで、本処理を開始することとするのが好ましい。典型的な姿勢の情報の数値を変化させるタイミングは、表示の垂直同期割り込みの周期ごとに訪れる。
姿勢の変化は、微小時間だけ以前の姿勢からの変化量によって表現しても良いし、予め定めた基準姿勢(たとえば、肘や膝を無理なく伸ばした姿勢)からの変化量によって表現しても良い。
また、親ボーン211に対する子ボーン221の姿勢の表現方法としては、親ボーン211に固定された座標系に対するオイラー角(ロール、ピッチ、ヨー等)によって表現する手法、クォータニオンによって表現する手法など、種々採用することができる。
親ボーン211に固定された座標系のx-y-z軸を考えた場合、オイラー角には、以下の2種類が広く用いられている。
(1)z-x-zオイラー角。まずz軸まわりに角θ1だけ回転し、次にx軸まわりに角θ2だけ回転し、更にz軸まわりに角θ3だけ回転する。
(2)z-y-xオイラー角。x軸、y軸、z軸まわりの回転量を、それぞれロールψ1、ピッチψ2、ヨーψ3と呼ぶ。
また、親ボーン211に固定された座標系において、ベクトル(X,Y,Z)を中心軸として、角2φだけ回転するとき、クォータニオンによる姿勢の変化の表現は、
Q = (X sinφ,Y sinφ,Z sinφ,cosφ)
と書くことができる。
これらのオイラー角による回転の表現や、クォータニオンによる回転の表現は、行列演算やベクトル演算によって相互に変換が可能であり、ほぼ等価なものと考えることができる。
次に、姿勢更新部803は、仮想点401の位置を更新する(ステップS902)。ここで、上述のように、仮想点401は、親ボーン211と子ボーン221が連結される点もしくはその近傍である連結点231からの距離が一定である。また、仮想点401の位置の更新量は、以下のように考えるものとする。
すなわち、連結点231と仮想点401とを結ぶ線分の姿勢の変化が、
(a)親ボーン211に対する子ボーン221の姿勢が変化する前の姿勢
(b)親ボーン211に対する子ボーン221の姿勢が変化した後の姿勢
の2つを補間するような姿勢変化量だけ、更新するのである。
上記の例でいえば、連結点231は、肘関節や膝関節に相当するものであり、仮想点401は、肘や膝付近の皮膚表面の基準位置に相当するものである。仮想点401と連結点231との距離を一定にしていることで、膝や肘が不自然に細くなってしまうのを防止するのである。
また、連結点231と仮想点401とを結ぶ線分に連動して、連結点231まわりで姿勢を変化させる仮想ボーン(第3のボーン)を考えることとしても良い。
図11は、仮想ボーンを想定した場合のボーンと制御点の関係を示す説明図である。以下、本図を参照して説明する。
仮想ボーン751は、連結点231によって親ボーン211に連結されている。また、仮想点401の位置は、仮想ボーン751に固定された座標系において、一定である。本図では、仮想ボーン751の端点に、仮想点401を配置している。
仮想ボーン751は、人間や動物には実際には存在しない仮想的な骨格である。仮想点401をこの仮想ボーンに固定する。そして、仮想ボーン751を連結点231で、親ボーン211に連結する。その上で、親ボーン211に固定された座標系における仮想ボーン751の姿勢の変化を、子ボーン221の姿勢の変化に連動させるのである。
連結点231の位置は、親ボーン211と子ボーン221が連結される点と一致させるのが典型的であるが、その近傍に存在するものとしても良い。近傍に存在する場合、連結点231は、親ボーン211に対して固定された位置とするのが典型的である。
仮想ボーン751を考えた場合には、親ボーン211に固定された制御点212や、子ボーン221に固定された制御点222の座標を求める計算は、行う必要がない。仮想ボーン751に固定される仮想点401の座標を求めれば十分だからである。なお、位置関係の理解を容易にするため、本図では、制御点212、222についても図示をしている。
このように、近傍に配置することとするのは、コンピュータグラフィックスの計算ソフトウェアによっては、3つのボーンが連結する2つの位置を一致させることができない場合に備えるものである。
このように考えると、コンピュータグラフィックスの計算ソフトウェアや専用ハードウェアでは、ボーンとそれぞれのボーンに固定された点の座標計算が高速にできる場合が多い。仮想ボーンを用意すると、このような高速計算をそのまま適用することができる。
なお、仮想点401の姿勢の変化を求めるための補間の手法は、姿勢変化取得部802が取得した姿勢の変化を、何らかの意味で内挿・内分するものとするのが好ましい。このような補間の手法の好適例は、以下の通りである。
すなわち、0より大きく1より小さい所定の比例定数kを考える。典型的には、k = 0.5とする。
(1)z-x-zオイラー角の場合、親ボーン211に対する子ボーン221の姿勢の変化が、まずz軸まわりに角θ1だけ回転し、次にx軸まわりに角θ2だけ回転し、更にz軸まわりに角θ3だけ回転するものであると考える。
このとき、親ボーン211に対する仮想ボーンの姿勢の変化は、z-x-zオイラー角で、まずz軸まわりに角kθ1だけ回転し、次にx軸まわりに角kθ2だけ回転し、更にz軸まわりに角kθ3だけ回転する量とする。
(2)z-y-xオイラー角の場合、親ボーン211に対する子ボーン221の姿勢の変化の、x軸、y軸、z軸まわりの回転量を、それぞれロールψ1、ピッチψ2、ヨーψ3とする。
このとき、親ボーン211に対する仮想ボーンの姿勢の変化は、x軸、y軸、z軸まわりの回転量を、それぞれロールkψ1、ピッチkψ2、ヨーkψ3とする。
(3)クォータニオンによる場合、親ボーン211に対する子ボーン221の姿勢の変化のクォータニオンQを
Q = (X sinφ,Y sinφ,Z sinφ,cosφ)
とするとき、親ボーン211に対する仮想ボーンの姿勢の変化のクォータニオンqを、
q = (X sin(kφ),Y sin(kφ),Z sin(kφ),cos(kφ))
とする。
なお、連結点231と仮想点401を結ぶ線分の姿勢の変化を直接考えることとした場合にも、上記のオイラー角やクォータニオンをそのまま採用することができる。また、比例定数kをそのまま乗じるのではなく、各パラメータを何らかの意味で補間するような計算を採用することとしても良い。
仮想点401の位置の計算は、通常の3次元空間における回転のベクトル・行列演算や、クォータニオン演算によって求めることができる。
したがって、CPU 101が、RAM 103等と共働して、姿勢更新部803として機能する。
さらに、位置出力部804は、当該仮想点401の位置から、当該スキンの制御点301の位置を求める(ステップS903)。
仮想ボーンに固定された仮想点401の位置を、そのままスキンの制御点301の位置として採用するのが典型的である。仮想点401の位置をそのままスキンの制御点301の位置とすることで、容易にスキンの制御点301の位置を求めることができる。
仮想点401と連結点231との距離は一定であるから、親ボーン211に対して子ボーン221がどのような回転をしても、スキンの制御点301が連結点231に近付くことはない。したがって、曲げや捻りによって連結点231付近のスキンが細くなり過ぎてしまうことを防止することができるのである。
このほか、親ボーン211に対する位置が固定された親制御点212の位置と子ボーン221に対する位置が固定された子制御点222の位置の少なくともいずれか一方と、当該仮想点401の位置と、の重み付き平均を求めて、当該求められた位置を、当該スキンの制御点301の位置とする手法もありうる。
このような場合には、以下のいずれかを採用するのである。
(a)親制御点212と仮想点401の位置の重み付き平均
(b)子制御点222と仮想点401の位置の重み付き平均
(c)親制御点212と子制御点222と仮想点401の位置の重み付き平均
この場合、仮想点401の位置に対する重みは、最大とすることが望ましく、典型的には、重みを0.5より大きくする。
この場合、スキンの制御点301の位置を仮想点401のみならず親ボーン211や子ボーン221にも依存させることで、自然なスキンの形状を実現する状況に適合したコンピュータグラフィックスを生成することができる。
最後に、位置出力部804は、当該スキンの制御点301の位置を、出力する(ステップS904)。出力結果は、RAM 103に格納されるのが典型的である。
上記のように、連結点231からの距離が一定であるような仮想点401の位置に基づいて、スキンの制御点301の位置を求めることから、肘や膝の太さを維持しようとする効果が得られるので、肘や膝を捻った場合においても、肘や膝付近のスキンが不自然に細くなってしまうことを防止することができる。
このように、CPU 101が、RAM 103等と共働して、位置出力部804として機能する。
本処理の終了後は、当該スキンの制御点301の位置に基づいて、コンピュータグラフィックスの通常の技術を採用することにより、連結される2つのボーンの連結点231付近のスキンの形状をできるだけ自然に変化させることができる。
以上説明したように、本発明によれば、連結される2つのボーンの連結点付近のスキンの形状をできるだけ自然に変化させるのに好適な、スキンの制御点の位置の計算装置、計算方法、ならびに、これらをコンピュータにて実現するプログラムを提供することができる。
プログラムを実行することにより、本発明のスキンの制御点の位置の計算装置の機能を果たす典型的な情報処理装置の概要構成を示す模式図である。 親ボーンと子ボーンの関係を示す説明図である。 親ボーンに対して子ボーンが姿勢を変化させた場合の親制御点と子制御点との位置の変化を示す説明図である。 親制御点と子制御点からスキンの制御点の位置を求める従来の手法を説明する説明図である。 親制御点と子制御点からスキンの制御点の位置を求める本発明の手法を説明する説明図である。 腕を左右に伸ばした状態を基本姿勢とした女性の人体モデルを背中側から見た様子を示す説明図である。 腕を斜め前に伸ばした状態の女性の人体モデルを、背中側から見た様子を示す説明図である。 これらの人体モデルをもとに3次元グラフィックスを生成した結果を示すものであり、人体モデルを正面から見た様子を示す説明図である。 本実施形態に係るスキンの制御点の位置の計算装置の概要構成を示す説明図である。 スキンの制御点の位置の計算装置にて実行される計算処理の制御の流れを示す説明図である。 仮想ボーンと制御点の位置関係を示す説明図である。
符号の説明
100 情報処理装置
101 CPU
102 ROM
103 RAM
104 インターフェイス
105 コントローラ
106 外部メモリ
107 画像処理部
108 DVD−ROMドライブ
109 NIC
110 音声処理部
111 マイク
211 親ボーン
212 親制御点
221 子ボーン
222 子制御点
223 連結点から子制御点への線分
231 連結点
261 親ボーンのローカル座標系
301 スキンの制御点
401 仮想点
701 本実施形態によるスキン形状の近傍
702 従来技術によるスキン形状の近傍
751 仮想ボーン
801 計算装置
802 姿勢変化取得部
803 姿勢更新部
804 位置出力部

Claims (8)

  1. 仮想空間に配置される第1の線分状オブジェクトと、当該第1の線分状オブジェクトに連結される第2の線分状オブジェクトと、に依存するスキンの制御点の位置の計算装置であって、
    当該第1の線分状オブジェクトに対する当該第2の線分状オブジェクトの姿勢の変化を取得する姿勢変化取得部、
    当該第1の線分状オブジェクトと当該第2の線分状オブジェクトとが連結される点もしくはその近傍(以下「連結点」という。)からの距離が一定の点(以下「仮想点」という。)の位置を、前記取得された変化後の姿勢と当該第1の線分状オブジェクトに対する当該第2の線分状オブジェクトの変化前の姿勢とを補間するように、当該連結点と当該仮想点とを結ぶ線分の姿勢を変化させることにより、更新する姿勢更新部、
    当該仮想点の位置から、当該スキンの制御点の位置を求めて、出力する位置出力部
    を備えることを特徴とする計算装置。
  2. 請求項1に記載の計算装置であって、
    前記姿勢更新部は、当該連結点で当該第1の線分状オブジェクトに連結される第3の線分状オブジェクトの姿勢の変化が、当該第1の線分状オブジェクトに対する当該第2の線分状オブジェクトの変化前の姿勢と変化後の姿勢とを補間するように変化させ、当該仮想点の位置を当該第3の線分状オブジェクトに対して固定されたものとすることにより、当該仮想点の位置を更新する
    ことを特徴とする計算装置。
  3. 請求項1または2に記載の計算装置であって、
    前記姿勢更新部は、前記取得された姿勢の変化に、0より大きく1より小さい所定の比例定数を乗じて補間する
    ことを特徴とする計算装置。
  4. 請求項1から3のいずれか1項に記載の計算装置であって、
    前記位置出力部は、当該仮想点の位置を求めて、当該求められた位置を、当該スキンの制御点の位置として出力する
    ことを特徴とする計算装置。
  5. 請求項1から3のいずれか1項に記載の計算装置であって、
    前記位置出力部は、当該第1の線分状オブジェクトに対する位置が固定された点の位置と当該第2の線分状オブジェクトに対する位置が固定された点の位置の少なくともいずれか一方と、当該仮想点の位置と、の重み付き平均を求めて、当該求められた位置を、当該スキンの制御点の位置として出力する
    ことを特徴とする計算装置。
  6. 請求項5に記載の計算装置であって、
    前記位置出力部は、当該仮想点の位置に対して、0.5より大きい重みを与えて、重み付き平均を求める
    ことを特徴とする計算装置。
  7. 仮想空間に配置される第1の線分状オブジェクトと、当該第1の線分状オブジェクトに連結される第2の線分状オブジェクトと、に依存するスキンの制御点の位置の計算装置であって、姿勢変化取得部、姿勢更新部、位置出力部を備える計算装置にて実行される計算方法であって、
    前記姿勢変化取得部が、当該第1の線分状オブジェクトに対する当該第2の線分状オブジェクトの姿勢の変化を取得する姿勢変化取得工程、
    前記姿勢更新部が、当該第1の線分状オブジェクトと当該第2の線分状オブジェクトとが連結される点もしくはその近傍(以下「連結点」という。)からの距離が一定の点(以下「仮想点」という。)の位置を、前記取得された変化後の姿勢と当該第1の線分状オブジェクトに対する当該第2の線分状オブジェクトの変化前の姿勢とを補間するように、当該連結点と当該仮想点とを結ぶ線分の姿勢を変化させることにより、更新する姿勢更新工程、
    前記位置出力部が、当該仮想点の位置から、当該スキンの制御点の位置を求めて、出力する位置出力工程
    を備えることを特徴とする計算方法。
  8. コンピュータに、仮想空間に配置される第1の線分状オブジェクトと、当該第1の線分状オブジェクトに連結される第2の線分状オブジェクトと、に依存するスキンの制御点の位置を計算させるプログラムであって、当該コンピュータを、
    当該第1の線分状オブジェクトに対する当該第2の線分状オブジェクトの姿勢の変化を取得する姿勢変化取得部、
    当該第1の線分状オブジェクトと当該第2の線分状オブジェクトとが連結される点もしくはその近傍(以下「連結点」という。)からの距離が一定の点(以下「仮想点」という。)の位置を、前記取得された変化後の姿勢と当該第1の線分状オブジェクトに対する当該第2の線分状オブジェクトの変化前の姿勢とを補間するように、当該連結点と当該仮想点とを結ぶ線分の姿勢を変化させることにより、更新する姿勢更新部、
    当該仮想点の位置から、当該スキンの制御点の位置を求めて、出力する位置出力部
    として機能させることを特徴とするプログラム。
JP2005343318A 2005-11-29 2005-11-29 スキンの制御点の位置の計算装置、計算方法、ならびに、プログラム Expired - Fee Related JP4199764B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005343318A JP4199764B2 (ja) 2005-11-29 2005-11-29 スキンの制御点の位置の計算装置、計算方法、ならびに、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005343318A JP4199764B2 (ja) 2005-11-29 2005-11-29 スキンの制御点の位置の計算装置、計算方法、ならびに、プログラム

Publications (2)

Publication Number Publication Date
JP2007148856A JP2007148856A (ja) 2007-06-14
JP4199764B2 true JP4199764B2 (ja) 2008-12-17

Family

ID=38210193

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005343318A Expired - Fee Related JP4199764B2 (ja) 2005-11-29 2005-11-29 スキンの制御点の位置の計算装置、計算方法、ならびに、プログラム

Country Status (1)

Country Link
JP (1) JP4199764B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5064441B2 (ja) * 2009-05-25 2012-10-31 株式会社コナミデジタルエンタテインメント ゲーム装置、ゲーム処理方法、ならびに、プログラム
JP4815521B2 (ja) * 2009-09-18 2011-11-16 株式会社コナミデジタルエンタテインメント 画像処理装置、画像処理方法、ならびに、プログラム
JP5232129B2 (ja) * 2009-11-24 2013-07-10 日本放送協会 仮想キャラクタ生成装置及び仮想キャラクタ生成プログラム
JP2013033316A (ja) * 2011-08-01 2013-02-14 Nippon Hoso Kyokai <Nhk> Cgキャラクタ生成装置及びcgキャラクタ生成プログラム

Also Published As

Publication number Publication date
JP2007148856A (ja) 2007-06-14

Similar Documents

Publication Publication Date Title
JP4846120B2 (ja) スケルトンアニメーションのステッチングハードウェアを有するグラフィクス装置
JP4519883B2 (ja) キャラクター表示装置、キャラクター表示方法、ならびに、プログラム
US6317130B1 (en) Apparatus and method for generating skeleton-based dynamic picture images as well as medium storing therein program for generation of such picture images
JP5118220B2 (ja) 動作モデリング装置及び方法、並びにプログラム
JP4976473B2 (ja) 画像生成装置、画像生成方法、ならびに、プログラム
US7983882B1 (en) Joint wrinkle and muscle movement simulating software
JP4199764B2 (ja) スキンの制御点の位置の計算装置、計算方法、ならびに、プログラム
JP2002216146A (ja) 情報処理装置における表示物体生成方法、これを実行制御するプログラム及びこのプログラムを格納した記録媒体
Chen et al. Skeleton-driven surface deformation through lattices for real-time character animation
JP4563461B2 (ja) 画像生成装置、画像生成方法、ならびに、プログラム
JPH1021420A (ja) 画像合成装置及び画像合成方法
JP3957363B2 (ja) 3次元ゲーム装置及び情報記憶媒体
JP4815521B2 (ja) 画像処理装置、画像処理方法、ならびに、プログラム
JP4244352B2 (ja) 画像生成装置、画像生成方法、ならびに、プログラム
JP4287479B2 (ja) 画像生成装置、画像生成方法、ならびに、プログラム
JP4575937B2 (ja) 画像生成装置、画像生成方法、ならびに、プログラム
JP4210293B2 (ja) シミュレーション装置、シミュレーション方法、ならびに、プログラム
JP4579964B2 (ja) 画像生成装置、画像生成方法、ならびに、プログラム
Yang et al. Automatic muscle generation for character skin deformation
JP4786389B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP5155262B2 (ja) 画像生成装置、画像生成方法、ならびに、プログラム
JP4162798B2 (ja) 連続回転マトリクスから連続回転角度を導出する方法、および該方法に係るプログラムを記憶した記憶媒体
JP4345996B2 (ja) 画像生成システム及び情報記憶媒体
Murtagh Pose-space deformation on top of dual quaternion skinning
JP2005322056A (ja) プログラム、情報記憶媒体、及び画像生成システム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080912

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080930

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081003

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111010

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121010

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131010

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees