JP4976473B2 - Image generating apparatus, image generating method, and program - Google Patents
Image generating apparatus, image generating method, and program Download PDFInfo
- Publication number
- JP4976473B2 JP4976473B2 JP2009217798A JP2009217798A JP4976473B2 JP 4976473 B2 JP4976473 B2 JP 4976473B2 JP 2009217798 A JP2009217798 A JP 2009217798A JP 2009217798 A JP2009217798 A JP 2009217798A JP 4976473 B2 JP4976473 B2 JP 4976473B2
- Authority
- JP
- Japan
- Prior art keywords
- posture
- bone
- parameter value
- character
- bone information
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 56
- 210000000988 bone and bone Anatomy 0.000 claims description 425
- 230000033001 locomotion Effects 0.000 claims description 158
- 238000002156 mixing Methods 0.000 claims description 47
- 230000008859 change Effects 0.000 claims description 34
- 230000008569 process Effects 0.000 claims description 17
- 230000009471 action Effects 0.000 claims description 14
- 239000000203 mixture Substances 0.000 claims description 8
- 230000002093 peripheral effect Effects 0.000 claims description 8
- 238000012937 correction Methods 0.000 claims description 7
- 206010034719 Personality change Diseases 0.000 claims description 4
- 230000036544 posture Effects 0.000 description 388
- 238000012545 processing Methods 0.000 description 26
- 230000010365 information processing Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 8
- 230000007704 transition Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000029058 respiratory gaseous exchange Effects 0.000 description 5
- 210000001624 hip Anatomy 0.000 description 4
- 210000000707 wrist Anatomy 0.000 description 4
- 238000012935 Averaging Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 241000282412 Homo Species 0.000 description 1
- 125000002066 L-histidyl group Chemical group [H]N1C([H])=NC(C([H])([H])[C@](C(=O)[*])([H])N([H])[H])=C1[H] 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- YYJNOYZRYGDPNH-MFKUBSTISA-N fenpyroximate Chemical compound C=1C=C(C(=O)OC(C)(C)C)C=CC=1CO/N=C/C=1C(C)=NN(C)C=1OC1=CC=CC=C1 YYJNOYZRYGDPNH-MFKUBSTISA-N 0.000 description 1
- 210000001981 hip bone Anatomy 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 210000001113 umbilicus Anatomy 0.000 description 1
Images
Landscapes
- Processing Or Creating Images (AREA)
Description
本発明は、キャラクターの特定の姿勢や動作から任意の姿勢や動作を求めて、その画像を生成するのに好適な画像生成装置、画像生成方法、ならびに、これらをコンピュータにて実現するプログラムに関する。 The present invention relates to an image generation apparatus, an image generation method, and a program for realizing these on a computer, which are suitable for obtaining an arbitrary posture and movement from a specific posture and movement of a character and generating the image.
従来から、仮想空間内に配置されるオブジェクトの外観を表す画像を生成する技術が種々提案されている。たとえば、特許文献1に開示される技術では、オブジェクトの形状が、ボーン、制御点、頂点、ポリゴンを用いて形成される。 Conventionally, various techniques for generating an image representing the appearance of an object arranged in a virtual space have been proposed. For example, in the technique disclosed in Patent Document 1, the shape of an object is formed using bones, control points, vertices, and polygons.
ボーンは、人間でいう骨に相当するものであり、ボーン同士は、連結点で互いに連結される。隣接するボーン同士の相対的な位置や向きを変化させると、オブジェクトの概形が変形する。 A bone corresponds to a bone in humans, and the bones are connected to each other at a connection point. Changing the relative position and orientation of adjacent bones will change the outline of the object.
典型的には、ボーンは、ボーンをノードとする木構造的な階層によって管理される。木構造の根ノードに対するボーン(以下「根ボーン」という。)の位置や向きは、仮想空間におけるオブジェクト全体の位置や向きを表す。親ノードのボーン(以下「親ボーン」という。)と子ノードのボーン(以下「子ボーン」という。)は直接連結されており、親ボーンに対する子ボーンの向きを変化させることで、ボーン同士の相対的な位置や向きを変化させる。 Typically, bones are managed by a tree-like hierarchy having bones as nodes. The position and orientation of the bone (hereinafter referred to as “root bone”) with respect to the root node of the tree structure represent the position and orientation of the entire object in the virtual space. The bone of the parent node (hereinafter referred to as “parent bone”) and the bone of the child node (hereinafter referred to as “child bone”) are directly connected, and by changing the direction of the child bone relative to the parent bone, Change relative position and orientation.
オブジェクトの外観は、ボーンの変形に伴って移動する頂点を結ぶポリゴンにテクスチャを貼ることによって形成される。このポリゴンによって形成される表面をスキンと呼ぶ。 The appearance of the object is formed by attaching a texture to a polygon that connects vertices that move as the bone deforms. The surface formed by this polygon is called a skin.
各ボーンには、複数の制御点が対応付けられており、これらの制御点は、そのボーンと連動して動作する。すなわち、ボーンが位置や向きを変えたとしても、制御点のボーンに対する相対的な位置は、変化しない。 Each bone is associated with a plurality of control points, and these control points operate in conjunction with the bone. That is, even if the bone changes its position and orientation, the relative position of the control point to the bone does not change.
各頂点は、複数の制御点に重み付きで対応付けられている。ボーンが位置や向きを変化させたときの各頂点の位置は、その頂点に対応付けられた制御点の位置に、重みを付けて平均した位置とする。 Each vertex is associated with a plurality of control points with weights. The position of each vertex when the position or orientation of the bone is changed is a position obtained by weighting and averaging the position of the control point associated with the vertex.
また、各ボーンには初期位置、初期向きが定められており、ボーンが初期位置、初期向きをとるときには、各頂点と、その頂点に対応付けられる制御点と、が、同じ位置で重なるように構成するのが典型的である。 In addition, each bone has an initial position and initial orientation. When the bone takes the initial position and initial orientation, each vertex and the control point associated with that vertex overlap at the same position. Typically, it is configured.
このような処理を行うことで、オブジェクトが変形したときに、スキンに不自然なくびれや潰れが生じることを防止することができる。 By performing such processing, when the object is deformed, it is possible to prevent the skin from being unnaturally crushed or crushed.
このようなオブジェクトは、仮想空間内に配置されるキャラクターやモンスターが互いに戦闘するようなゲーム等において、キャラクターやモンスターの外観を表す際にも使用されている。 Such an object is also used to represent the appearance of a character or monster in a game or the like in which characters and monsters arranged in a virtual space battle each other.
また、モーションキャプチャの技術を適用すれば、キャラクターが特定の姿勢や特定の動作をとるときの、ボーンの位置や動きの変化を得ることができる。たとえば、人間が刀を上段の構えから下に振り下ろす様子をモーションキャプチャすることによって、キャラクターが上段の構えをとる姿勢や、キャラクターが刀を上から下に振り下ろす動作をとるときのボーンの位置や向きの変化を定めることができる。 In addition, by applying the motion capture technology, it is possible to obtain changes in the position and movement of the bone when the character takes a specific posture or a specific motion. For example, by capturing the motion of a person swinging a sword down from the upper stance, the position of the bone when the character takes the upper stance or the character swings the sword downward from the top And change in orientation.
したがって、キャラクターが基本的な構えから基本的な動作をとるときのボーンの位置や向き、ならびにこれらの変化は、モーションキャプチャにより取得することができる。たとえば、人間に対して、上段、右中段、右下段、左下段、左中段の構えをとらせて5種類の姿勢を取得し、これらの構えから正面を通過するように刀を振らせて5種類の動作を取得すれば、キャラクターに5種類の姿勢、5種類の動作をとらせることができるようになる。 Therefore, the position and orientation of the bone when the character takes a basic motion from the basic stance, and these changes can be obtained by motion capture. For example, a human being is taken from the upper, right middle, lower right, lower left, and left middle stances to obtain five different postures, and from these stances, the sword is shaken so as to pass the front. If the types of movements are acquired, the character can take five different postures and five different movements.
しかしながら、ありとあらゆる姿勢や動作のモーションキャプチャをあらかじめ行うことは不可能である。そこで、キャラクターの既存の姿勢や動作から、キャラクターの新たな姿勢や動作を生成するような技術が求められている。たとえば、上段および右中段の姿勢や、そこから正面を通過するように刀を降る動作から、これらの中間的な姿勢、すなわち、右斜め上に刀を構える姿勢や、そこから左斜め下に刀を振り下ろす動作を生成するような技術に対する要望は強い。 However, it is impossible to perform motion capture of any posture and motion in advance. Therefore, there is a demand for a technique for generating a new character posture and movement from the character's existing posture and movement. For example, from the posture of the upper and middle right and the action of dropping the sword so that it passes the front from there, these intermediate postures, that is, the posture of holding the sword diagonally to the upper right and the sword diagonally downward to the left from there There is a strong demand for a technology that generates a motion to swing down.
さらに、プレイヤがコントローラを利用してキャラクターの姿勢や動作を定める場合に、モーションキャプチャにより、何種類か既定の姿勢や動作を用意しておき、それらから、プレイヤの操作に基づいて、新たな姿勢や動作を生成できるようにすることとして、ゲームの開発効率を向上させ、メモリの消費量等を抑制したい、という要望もある。 Furthermore, when the player uses the controller to determine the character's posture and movement, several types of default postures and movements are prepared by motion capture, and a new posture is then created based on the player's operation. There is also a desire to improve game development efficiency and reduce memory consumption, etc., so that the game can be generated.
本発明は、上記のような課題を解決するもので、キャラクターの特定の姿勢や動作から任意の姿勢や動作を求めて、その画像を生成するのに好適な画像生成装置、画像生成方法、ならびに、これらをコンピュータにて実現するプログラムを提供することを目的とする。 The present invention solves the above-described problems. An image generation apparatus, an image generation method, and an image generation apparatus that are suitable for obtaining an arbitrary posture and movement from a specific posture and movement of a character and generating the image, and An object of the present invention is to provide a program for realizing these by a computer.
以上の目的を達成するため、本発明の原理にしたがって、下記の発明を開示する。 In order to achieve the above object, the following invention is disclosed in accordance with the principle of the present invention.
本発明の第1の観点に係る画像生成装置は、複数の互いに連結されるボーンを有するキャラクターの姿勢を定めるために、当該複数のボーンの相対的な位置および向きを表す姿勢ボーン情報を使用して、当該キャラクターの画像を生成する。 The image generation apparatus according to the first aspect of the present invention uses posture bone information representing the relative positions and orientations of a plurality of bones in order to determine the posture of a character having a plurality of bones connected to each other. To generate an image of the character.
ボーンはキャラクターの骨格に相当するものであり、一般には、ボーン同士の連結位置は変化しない。したがって、まず、いずれか1つのボーンの位置と向きを定め、次に、その位置と向きが定められたボーンに対して、直接連結されている他のボーンの位置と向きを定めることを繰り返せば、ボーン全体の形状が一意に定まる。ボーン全体の形状は、デサイナーが設計することもあるし、モーションキャプチャにより取得されることもある。 The bone corresponds to the skeleton of the character, and generally the connection position between the bones does not change. Therefore, it is necessary to first determine the position and orientation of any one bone, and then repeat the determination of the position and orientation of another bone that is directly connected to the bone whose position and orientation are determined. The shape of the whole bone is uniquely determined. The shape of the entire bone may be designed by the designer or acquired by motion capture.
画像生成装置は、記憶部、姿勢受付部、姿勢計算部、姿勢混合部、生成部を備える。 The image generation apparatus includes a storage unit, a posture reception unit, a posture calculation unit, a posture mixing unit, and a generation unit.
ここで、記憶部には、キャラクターが第1の姿勢をとるときの第1の姿勢ボーン情報が、第1の姿勢パラメータ値に対応付けて記憶され、当該キャラクターが第2の姿勢をとるときの第2の姿勢ボーン情報が、第2の姿勢パラメータ値に対応付けて記憶される。 Here, the storage unit stores the first posture bone information when the character takes the first posture in association with the first posture parameter value, and when the character takes the second posture. Second posture bone information is stored in association with the second posture parameter value.
たとえば、キャラクターが刀を構える姿勢を考えると、姿勢パラメータ値としては、キャラクターの正面中央から見て、刀の先端が鉛直線下向きとなす角度、すなわち、キャラクターと正対し、キャラクターの中段中央を中心としたときに、中心から刀の先端への方向と、中心から鉛直下向きとの方向と、が、なす半時計周りの角度、を採用することができる。 For example, considering the posture of the character holding the sword, the posture parameter value is the angle at which the tip of the sword is vertical downward as seen from the front center of the character, that is, facing the character and centering on the middle of the character In this case, a counterclockwise angle formed by the direction from the center to the tip of the sword and the direction from the center to the vertically downward direction can be employed.
この例では、姿勢パラメータ値は、
(a)右下段の構えでは0度、
(b)右中段の構えでは90度、
(c)上段の構えでは180度、
(d)左中段の構えでは270度、
(e)左下段の構えでは360度
となる。ここで、右下段と左下段を区別しているのは、剣道においては、両者の手首の捻りの向きが異なるからである。
In this example, the posture parameter value is
(A) 0 degrees in the lower right stance,
(B) 90 degrees in the middle right stance,
(C) 180 degrees in the upper stance,
(D) 270 degrees in the middle left stance,
(E) 360 degrees in the lower left stance. Here, the reason why the lower right stage and the lower left stage are distinguished from each other is that, in kendo, the directions of twisting of the wrists are different.
それぞれの姿勢のボーンのボーン情報は、モーションキャプチャ等によって用意され、姿勢パラメータ値に対応付けて、記憶部に記憶されている。 Bone information of each posture bone is prepared by motion capture or the like, and stored in the storage unit in association with the posture parameter value.
なお、姿勢パラメータ値としては、上記の角度のみならず、キャラクターの姿勢を表す任意のスカラー量を採用することができる。 As the posture parameter value, not only the above angle but also an arbitrary scalar amount representing the character's posture can be adopted.
一方、姿勢受付部は、キャラクターがとるべき姿勢を表す姿勢パラメータ値の入力を受け付ける。 On the other hand, the posture receiving unit receives an input of a posture parameter value representing a posture to be taken by the character.
上記の例では、姿勢パラメータ値は、構えの角度を表すものである。ジョイスティックを傾けたときの傾ける方向や、タッチパッド、トラックパッド、マウスなどで指示する位置が、その中央からどれだけずれた角度であるか、によって、姿勢パラメータ値が入力される。 In the above example, the posture parameter value represents the attitude angle. The posture parameter value is input depending on the direction in which the joystick is tilted and how much the position indicated by the touchpad, trackpad, mouse, etc. is deviated from the center.
以下の説明では、姿勢パラメータ値として、90度と180度の間の角度としてθ度が入力されたものとし、第1の姿勢を右中段の構え(姿勢パラメータ値は90度)、第2の姿勢を上段の構え(姿勢パラメータ値は180度)とする。すなわち、キャラクターは、右斜め上に刀を構える姿勢をとるべきことになる。任意の角度が姿勢パラメータ値として入力される態様については、後述する。 In the following description, it is assumed that θ degrees is input as an angle between 90 degrees and 180 degrees as the posture parameter value, the first posture is set in the middle right stage (the posture parameter value is 90 degrees), and the second The posture is the upper stance (posture parameter value is 180 degrees). In other words, the character should take the posture of holding a sword diagonally upward to the right. A mode in which an arbitrary angle is input as the posture parameter value will be described later.
たとえば、θ = 120としたときには、刀を右中段より少し上に構えたことになるし、θ = 150としたときには、さらに刀を上に構えたことになる。 For example, when θ = 120, the sword is held slightly above the middle right, and when θ = 150, the sword is further held up.
さらに、姿勢計算部は、受け付けられた姿勢パラメータ値が、第1の姿勢パラメータ値と、第2の姿勢パラメータ値と、を内分する姿勢内分比を計算する。 Further, the posture calculation unit calculates a posture internal ratio in which the received posture parameter value internally divides the first posture parameter value and the second posture parameter value.
上記の例においては、入力された姿勢パラメータ値はθ度であるから、姿勢内分比は、(θ-90):(180-θ)となる。 In the above example, since the input posture parameter value is θ degrees, the posture internal ratio is (θ−90) :( 180−θ).
一般に、第1の姿勢パラメータ値をα、第2の姿勢パラメータ値をβ(α<β)、入力された姿勢パラメータ値をθとすると、α≦θ≦βが成立し、姿勢内分比は、(θ-α):(β-θ)となる。 In general, if the first posture parameter value is α, the second posture parameter value is β (α <β), and the input posture parameter value is θ, then α ≦ θ ≦ β holds, and the posture internal ratio is , (Θ-α) :( β-θ).
さらに、姿勢混合部は、計算された姿勢内分比で、第1の姿勢ボーン情報と、第2の姿勢ボーン情報と、を、ブレンドすることにより、第3の姿勢ボーン情報を得る。 Further, the posture mixing unit obtains the third posture bone information by blending the first posture bone information and the second posture bone information with the calculated posture internal ratio.
上記のように、ボーン情報は、ボーン同士の相対的な位置および向きを指定するものである。一般に、1つのボーンには1つ以上の連結点があるが、そのボーンにおける連結点の位置は、キャラクターが姿勢を変化させたとしても、移動しない。これは、キャラクターの骨の長さが、急激には変化しないことに相当する。 As described above, the bone information specifies the relative position and orientation of the bones. In general, one bone has one or more connection points, but the position of the connection point in the bone does not move even if the character changes its posture. This is equivalent to the fact that the length of the character's bone does not change abruptly.
したがって、そのボーンに連結された他のボーンの向きを第1の姿勢ボーン情報の場合と、第2の姿勢ボーン情報の場合と、で、対比し、その向きを表す情報を、姿勢内分比で内分すれば、第3の姿勢ボーン情報における当該他のボーンの向きをブレンドした結果が得られることになる。なお、内分の手法としては、後述するオイラー角やクォータニオンを使用するのが一般的である。 Therefore, the direction of other bones connected to the bone is compared between the case of the first posture bone information and the case of the second posture bone information, and information indicating the direction is used as the posture internal ratio. The result of blending the directions of the other bones in the third posture bone information is obtained. In general, Euler angles and quaternions, which will be described later, are used as the inner division method.
さらに、生成部は、得られた第3の姿勢ボーン情報により、キャラクターの形状を定め、定められた形状により、当該キャラクターを表す画像を生成する。 Furthermore, the generation unit determines the shape of the character based on the obtained third posture bone information, and generates an image representing the character with the determined shape.
すなわち、生成部は、一般には、ボーン情報から、ボーンに連動する制御点の位置を求め、制御点同士を重み付け平均することで、頂点の位置を求め、頂点同士を結ぶポリゴンにテクスチャを貼り付ける。そして、テクスチャが貼り付けられたポリゴンによってスキンを形成して、キャラクターの画像を生成する。生成された画像は、画面に表示されるのが典型的である。 That is, the generation unit generally obtains the position of the control point linked to the bone from the bone information, obtains the position of the vertex by weighted averaging of the control points, and pastes the texture on the polygon connecting the vertexes. . Then, a skin is formed by the polygons to which the texture is pasted to generate a character image. The generated image is typically displayed on the screen.
本発明によれば、キャラクターの2つの姿勢から、その2つの姿勢の中間的な姿勢を求めて、そのキャラクターが中間的な姿勢をとる様子を表す画像を生成することができる。 According to the present invention, an intermediate posture between the two postures can be obtained from the two postures of the character, and an image representing how the character takes the intermediate posture can be generated.
また、本発明の画像生成装置において、複数のボーンは、各ボーンをノードとし、連結された2つのボーンのうち、一方のボーンを親ノードに、他方のボーンを子ノードに、それぞれ割り当てた木構造に階層化され、姿勢ボーン情報は、親ノードのボーン(以下「親ボーン」という。)に対する相対的な子ノードのボーン(以下「子ボーン」という。)の位置および向きを指定することにより、表現されるように構成することができる。 In the image generating apparatus of the present invention, each of the plurality of bones is a tree in which each bone is assigned as a node, and one of the two connected bones is assigned as a parent node and the other bone as a child node. It is hierarchized into a structure, and posture bone information is specified by specifying the position and orientation of the bone of a child node (hereinafter referred to as “child bone”) relative to the bone of the parent node (hereinafter referred to as “parent bone”). , Can be configured to be expressed.
本発明は上記発明の好適実施形態に係るものである。本発明においては、キャラクターの位置および向きとして根ボーンの位置および向きを採用する。根ボーンから木構造の親子関係をたどり、親ボーンに対する子ボーンの位置および向きを定めることによって、キャラクターの形状全体が定められる。なお、上記のように、一般には、ボーンの長さ、すなわち、ボーンにおける連結点の間の距離は、一定とする。 The present invention relates to a preferred embodiment of the above invention. In the present invention, the position and orientation of the root bone are adopted as the position and orientation of the character. By tracing the parent-child relationship of the tree structure from the root bone and determining the position and orientation of the child bone relative to the parent bone, the entire shape of the character is determined. As described above, generally, the length of the bone, that is, the distance between the connection points in the bone is constant.
本発明によれば、ボーンを階層的に管理することで、キャラクターの姿勢を容易に変化させることができるようになる。 According to the present invention, the posture of the character can be easily changed by managing the bones hierarchically.
また、本発明の画像生成装置において、子ボーンの位置および向きは、親ボーンに固定された座標系において子ボーンが親ボーンに連結される連結点の座標、ならびに、当該座標系における子ボーンの向きを表すオイラー角もしくはクォータニオンにより表現され、姿勢混合部は、第1の姿勢ボーン情報と、第2の姿勢ボーン情報と、において各々対応するボーンのオイラー角もしくはクォータニオンを計算された姿勢内分比で内分することによって、第3の姿勢ボーン情報を得るように構成することができる。 Further, in the image generating apparatus of the present invention, the position and orientation of the child bone are determined by the coordinates of the connection point where the child bone is connected to the parent bone in the coordinate system fixed to the parent bone, and the child bone in the coordinate system. Expressed by Euler angles or quaternions representing the orientation, the posture mixture unit calculates the Euler angles or quaternions of the corresponding bones in the first posture bone information and the second posture bone information, respectively. The third posture bone information can be obtained by performing internal division.
上記のように、ボーンの長さは一般には固定されている。この場合、親ボーンに固定された座標系において、子ボーンが親ボーンに連結される連結点の座標は固定されている。 As described above, the length of the bone is generally fixed. In this case, in the coordinate system fixed to the parent bone, the coordinates of the connection point where the child bone is connected to the parent bone are fixed.
したがって、当該座標系において、子ボーンの向きを指定すれば、親ボーンに対する子ボーンの相対的な位置および向きが確定することになる。 Therefore, if the orientation of the child bone is specified in the coordinate system, the relative position and orientation of the child bone with respect to the parent bone is determined.
本発明では、向きを定めるために、オイラー角もしくはクォータニオンを用いることとしている。2つの姿勢における各オイラー角同士を姿勢内分比で内分したり、クォータニオンの各要素を姿勢内分比で内分することによって、第3の姿勢におけるオイラー角やクォータニオンが得られる。 In the present invention, Euler angles or quaternions are used to determine the orientation. The Euler angles and quaternions in the third posture can be obtained by internally dividing the Euler angles in the two postures by the posture internal ratio or by dividing each element of the quaternion by the posture internal ratio.
本発明によれば、ボーンの向きをあらわすオイラー角やクォータニオンを姿勢内分比で内分することによって、容易に中間姿勢のボーン情報を得ることができるようになる。 According to the present invention, it is possible to easily obtain bone information of an intermediate posture by internally dividing Euler angles and quaternions representing the direction of bones by the posture internal ratio.
また、本発明の画像生成装置において、姿勢ボーン情報は、時間の経過とともに変化する情報であり、姿勢混合部は、各時点での、第1の姿勢ボーン情報と第2の姿勢ボーン情報とをブレンドし、生成部は、各時点での画像を生成することにより、動画像を生成するように構成することができる。 In the image generation apparatus of the present invention, the posture bone information is information that changes over time, and the posture mixing unit calculates the first posture bone information and the second posture bone information at each time point. The blending and generating unit can be configured to generate a moving image by generating an image at each time point.
たとえば、キャラクターが刀を構えている場合には、キャラクターの呼吸に合わせて、刀が微小に動く様子を採用したいことがある。本発明はこのような状況に対応するものである。 For example, when a character has a sword, he may want to adopt a state in which the sword moves minutely according to the character's breathing. The present invention addresses such a situation.
この場合、あらかじめ、刀を構えた人間の呼吸の1周期分を、所定の時間間隔でモーションキャプチャする。そして、当該周期内の各時点におけるキャラクターのボーンの位置や向きを、モーションキャプチャされたデータから定める。そして、時間の経過に合わせて、各時点におけるボーンの位置や向きを適宜選択し、その位置や向きをブレンドする。 In this case, motion capture is performed at a predetermined time interval for one cycle of human breathing with a sword in advance. Then, the position and orientation of the character bone at each time point in the cycle are determined from the motion-captured data. Then, as the time passes, the position and orientation of the bone at each time point are appropriately selected, and the position and orientation are blended.
上記の例では、刀を上段に構えたときの1呼吸分の姿勢ボーン情報と、刀を右中段に構えたときの1呼吸分の姿勢ボーン情報と、から、刀を右斜め上に構えたときの1呼吸分の姿勢ボーン情報を得るのである。 In the above example, the posture bone information for one breath when holding the sword in the upper stage and the posture bone information for one breath when holding the sword in the middle right, the sword is held diagonally upward to the right. The posture bone information for one breath is obtained.
なお、姿勢ボーン情報の時間経過に伴う変化は、典型的には周期的な変化であるが、必ずしもこれに限られない。 The change of the posture bone information with the passage of time is typically a periodic change, but is not necessarily limited thereto.
本発明によれば、キャラクターの2種類の動作からその中間の動作を生成して、その動作をとるキャラクターの様子を表す画像を生成することができる。 According to the present invention, an intermediate motion can be generated from two types of motions of a character, and an image representing the state of the character taking the motion can be generated.
また、本発明の画像生成装置は、キャラクターが動作するときの形状の変化を定めるために、複数のボーンの相対的な位置および向きの時間経過に対する変化量を表す動作ボーン情報をさらに使用する。 In addition, the image generation apparatus of the present invention further uses motion bone information representing the amount of change of the relative positions and orientations of a plurality of bones over time in order to determine the shape change when the character moves.
上記発明では、時間経過にともなう各時点におけるキャラクターの姿勢を表す情報を姿勢ボーン情報としていたが、本発明では、各時点におけるキャラクターの姿勢の差分を表す情報を動作ボーン情報とするのである。すなわち、ある時点における姿勢ボーン情報に、動作ボーン情報を加算すると、次の時点における姿勢ボーン情報が得られるのである。 In the above invention, the information indicating the posture of the character at each time point with the passage of time is used as the posture bone information. However, in the present invention, information indicating the difference in character posture at each time point is used as the motion bone information. That is, when the motion bone information is added to the posture bone information at a certain time, the posture bone information at the next time is obtained.
そして、本発明の画像生成装置は、動作受付部、向き計算部、変化混合部、開始姿勢取得部をさらに備え、以下のように構成する。 The image generation apparatus according to the present invention further includes an operation reception unit, a direction calculation unit, a change mixing unit, and a start posture acquisition unit, and is configured as follows.
すなわち、記憶部には、キャラクターが第1の向きに動作するときの第1の動作ボーン情報が、第1の向きパラメータ値に対応付けてさらに記憶され、当該キャラクターが第2の向きに動作するときの第2の動作ボーン情報が、第2の向きパラメータ値に対応付けてさらに記憶される。 That is, the storage unit further stores the first motion bone information when the character moves in the first direction in association with the first direction parameter value, and the character moves in the second direction. The second motion bone information at that time is further stored in association with the second orientation parameter value.
たとえば、キャラクターが刀を振る方向を表す角度を向きパラメータ値として採用することができる。以下では、上記の例に合わせて、向きパラメータ値として、
(a)右下から振り上げる動作では0度、
(b)右から左に振る動作では90度、
(c)上から下に振る動作では180度、
(d)左から右に振る動作では270度、
(e)左下から振り上げる動作では360度
のような例をあげて説明する。
For example, an angle representing the direction in which the character swings the sword can be adopted as the direction parameter value. In the following, according to the above example, as the orientation parameter value,
(A) 0 degree in the swinging motion from the lower right,
(B) 90 degrees for movement from right to left,
(C) 180 degrees when swinging from top to bottom,
(D) 270 degrees when swinging from left to right,
(E) The operation of swinging up from the lower left will be described with an example of 360 degrees.
姿勢パラメータ値も向きパラメータ値も90度の状況は、キャラクターが、右中段の構えから左に刀を振る動作をとる状況を表すことになる。姿勢パラメータ値も向きパラメータ値も180度の状況は、キャラクターが、上段の構えから下に刀を振る動作をとる状況を表すことになる。 The situation in which the posture parameter value and the orientation parameter value are both 90 degrees represents a situation in which the character takes the action of swinging the sword from the right middle stance to the left. The situation in which the posture parameter value and the orientation parameter value are both 180 degrees represents a situation in which the character takes the action of swinging the sword down from the upper stance.
このように、姿勢パラメータ値と向きパラメータ値が同じ値であるときには、刀の先端の軌跡は、キャラクターの中段中央を通過することになる。 Thus, when the posture parameter value and the orientation parameter value are the same value, the locus of the tip of the sword passes through the middle center of the character.
一方、動作受付部は、キャラクターが動作すべき向きを表す向きパラメータ値の入力を受け付ける。 On the other hand, the motion accepting unit accepts an input of a direction parameter value indicating a direction in which the character should move.
これは、刀を振る方向に相当するパラメータ値であり、姿勢パラメータ値とは独立して入力されることとするのが典型的である。なお、姿勢パラメータ値と向きパラメータ値とが一致する場合は、上記の「時間の経過により変化する姿勢ボーン情報」を採用した場合と、実質的に等価である。 This is a parameter value corresponding to the direction in which the sword is swung, and is typically input independently of the posture parameter value. Note that the case where the posture parameter value matches the direction parameter value is substantially equivalent to the case where the “posture bone information that changes with the passage of time” described above is adopted.
さらに、向き計算部は、受け付けられた向きパラメータ値が、第1の向きパラメータ値ならびに第2の向きパラメータ値を内分する向き内分比を計算する。向き内分比の計算は、姿勢内分比の計算と同様に行われる。 Furthermore, the direction calculation unit calculates a direction division ratio in which the received direction parameter value internally divides the first direction parameter value and the second direction parameter value. The calculation of the orientation internal ratio is performed in the same manner as the calculation of the posture internal ratio.
そして、変化混合部は、計算された向き内分比で、第1の動作ボーン情報と、第2の動作ボーン情報と、を、ブレンドすることにより、第3の動作ボーン情報を得る。 Then, the change mixing unit obtains the third motion bone information by blending the first motion bone information and the second motion bone information with the calculated internal ratio.
姿勢混合部は、2つの姿勢ボーン情報を内分比で内分してブレンドしたが、変化混合部は、2つの動作ボーン情報を内分比で内分してブレンドする。動作ボーン情報は、上記のようにオイラー角の差分や、クォータニオンの差分として表現される。したがって、これらを要素ごとに内分すれば、ブレンド後の動作ボーン情報が得られる。 The posture mixing unit internally blends the two posture bone information by the internal division ratio, whereas the change mixing unit internally blends the two motion bone information by the internal division ratio. The motion bone information is expressed as a Euler angle difference or a quaternion difference as described above. Therefore, if these are internally divided for each element, the operation bone information after blending can be obtained.
そして、開始姿勢取得部は、キャラクターが動作を開始する時点の姿勢を定める第4の姿勢ボーン情報を取得する。 Then, the starting posture acquisition unit acquires fourth posture bone information that determines the posture at the time when the character starts to move.
最も単純には、開始姿勢取得部において、第3の姿勢ボーン情報が、第4の姿勢ボーン情報として取得される。すなわち、向きパラメータ値の入力が受け付けられた瞬間のキャラクターの姿勢が、動作の開始姿勢となる。 Most simply, the starting posture acquisition unit acquires the third posture bone information as the fourth posture bone information. That is, the posture of the character at the moment when the input of the orientation parameter value is accepted becomes the motion starting posture.
さらに、生成部は、キャラクターを、取得された第4の姿勢ボーン情報により定められる姿勢から、得られた第3の動作ボーン情報により定められる動作で時間経過とともに動作させ、当該キャラクターが時間経過とともに形状を変化させる様子を表す動画像を生成する。 Furthermore, the generation unit causes the character to move with time from the posture determined by the acquired fourth posture bone information with the motion determined by the obtained third motion bone information, and the character moves with time. A moving image representing a state of changing the shape is generated.
上記のように、本発明では、動作ボーン情報として、静止している姿勢ボーン情報の差分を採用している。このため、たとえば、右斜め上の構え(姿勢パラメータ値が120度や150度等)から下に刀を振り下ろし(向きパラメータ値が180度)、刀の先端が、キャラクターの右寄りを通過するような動作についても画像を生成することができる。 As described above, in the present invention, the difference between the stationary posture bone information is adopted as the motion bone information. For this reason, for example, the sword is swung down (orientation parameter value is 180 degrees) from an obliquely upper right position (posture parameter value is 120 degrees, 150 degrees, etc.), and the tip of the sword passes through the right side of the character. An image can be generated for various operations.
本発明によれば、キャラクターの2つの動作からその中間的な動作を生成することにより、中間的な動作をとるキャラクターを表す動画像を容易に生成することができるようになる。 According to the present invention, it is possible to easily generate a moving image representing a character that takes an intermediate action by generating an intermediate action from the two actions of the character.
また、本発明の画像生成装置は、以下のように構成することができる。 Further, the image generation apparatus of the present invention can be configured as follows.
すなわち、キャラクターが有する複数のボーンのいずれか一つの代表用ボーンには、代表点が固定される。 That is, a representative point is fixed to any one representative bone of a plurality of bones possessed by the character.
たとえば、上記の例では、刀の先端に代表点を設定する。 For example, in the above example, a representative point is set at the tip of the sword.
一方、動作ボーン情報には、当該キャラクターが姿勢を開始し始めようとする時点の姿勢を表す姿勢ボーン情報が対応付けられる。すなわち、本発明では、構えの姿勢とは独立に、動作の開始時の姿勢が用意され、両者にずれがある場合を想定している。 On the other hand, the motion bone information is associated with posture bone information representing the posture at the time when the character is about to start posture. That is, in the present invention, it is assumed that the posture at the start of the operation is prepared independently of the posture of the posture, and there is a difference between the two.
そして、開始姿勢取得部は、第1の動作ボーン情報に対応付けられる姿勢ボーン情報と、第2の動作ボーン情報に対応付けられる姿勢ボーン情報と、を、向き内分比でブレンドすることにより得られる第5の姿勢ボーン情報における代表点の位置が、第3の姿勢ボーン情報における代表点の位置にできるだけ近付くように、第5の姿勢ボーン情報を補正する。 Then, the start posture acquisition unit obtains the posture bone information associated with the first motion bone information and the posture bone information associated with the second motion bone information by blending with the orientation internal ratio. The fifth posture bone information is corrected so that the position of the representative point in the fifth posture bone information is as close as possible to the position of the representative point in the third posture bone information.
すなわち、本発明では、構えの姿勢の代表点の位置が、姿勢のブレンドによって求められる。動作開始時の代表点の位置が、動作のブレンドによって求められる。そして、両者の位置が近付くように、動作開始時の代表点の位置を補正する。 That is, in the present invention, the position of the representative point of the posture of the posture is obtained by the blending of the posture. The position of the representative point at the start of the operation is obtained by blending the operations. Then, the position of the representative point at the start of the operation is corrected so that the positions of both approaches.
さらに、開始姿勢取得部において、当該補正により得られた姿勢ボーン情報が、第4の姿勢ボーン情報として取得される。 Further, in the starting posture acquisition unit, posture bone information obtained by the correction is acquired as fourth posture bone information.
本発明によれば、キャラクターの静止時の姿勢と、キャラクターの動作時の開始時点の姿勢と、にずれがある場合であっても、自然な動画像を生成することができるようになる。 According to the present invention, it is possible to generate a natural moving image even when there is a difference between the posture of the character at rest and the posture at the start time of the character's movement.
また、本発明の画像生成装置において、開始姿勢取得部は、所定の拘束条件を採用したインバースキネマティクスを用いて、第5の姿勢ボーン情報における代表点の位置を、第3の姿勢ボーン情報における代表点の位置に重ねることにより、補正を行うように構成することができる。 In the image generation device of the present invention, the start posture acquisition unit uses the inverse kinematics adopting a predetermined constraint condition to determine the position of the representative point in the fifth posture bone information in the third posture bone information. It can be configured to perform correction by overlapping the position of the representative point.
代表点が刀の先端の場合には、刀の先端を重ねるようにインバースキネマティクスの手法を用いる。インバースキネマティクスとは、ボーンの木構造を葉から根の方にたどりながら、各ボーンの位置や向きを修正していく技術であり、本例では、刀、刀を持っている手首、下腕、上腕、肩、背骨上部、腰のように、順にボーンの向きが補正されていく。 When the representative point is the tip of the sword, the inverse kinematics method is used so that the tip of the sword overlaps. Inverse kinematics is a technique for correcting the position and orientation of each bone while tracing the tree structure of the bone from the leaves to the roots. In this example, the sword, the wrist holding the sword, the lower arm The direction of the bone is corrected in order, like the upper arm, shoulder, upper spine, and waist.
本発明は、上記発明の好適実施形態に係るものであり、代表点の位置を重ねることによって、キャラクターの静止時の姿勢と、キャラクターの動作時の開始時点の姿勢と、のずれをできるだけ小さくすることができるようになる。 The present invention relates to a preferred embodiment of the above invention, and by overlapping the positions of representative points, the deviation between the character's stationary posture and the starting point of the character's motion is minimized. Will be able to.
また、本発明の画像生成装置において、開始姿勢取得部は、キャラクターが有する複数のボーンのうち、いずれか2つの直接連結されるボーンの相対的な向きを変化させることにより、第5の姿勢ボーン情報における代表点の位置を、第3の姿勢ボーン情報における代表点の位置にできるだけ近付けるように構成することができる。 In the image generation device of the present invention, the start posture acquisition unit changes the relative orientation of any two bones directly connected among the plurality of bones of the character to thereby change the fifth posture bone. The position of the representative point in the information can be configured to be as close as possible to the position of the representative point in the third posture bone information.
たとえば、キャラクターの腰と背骨上部との相対的な向きを変える状況を考える。本発明では、連結点から構えに基づく代表点に向かう半直線と、連結点から動作の開始時点に基づく代表点に向かう半直線と、が、重なるように、キャラクターの腰と背骨上部との相対的な向きのみを変更する。すなわち、インバースキネマティクスでは、修正すべきボーンの向きの情報が多数となるが、本発明では、1つの向きのみを修正するのである。 For example, consider a situation where the relative orientation of a character's waist and upper spine is changed. In the present invention, the character's waist and the upper part of the spine are relative to each other so that a half line from the connection point to the representative point based on the posture and a half line from the connection point to the representative point based on the start time of the movement overlap. Change only the orientation. That is, in inverse kinematics, there is a large amount of information on the bone direction to be corrected, but in the present invention, only one direction is corrected.
本発明は、上記発明の好適実施形態に係るものであり、キャラクターの静止時の姿勢と、キャラクターの動作時の開始時点の姿勢と、のずれを、簡易な計算によって、できるだけ小さくすることができるようになる。 The present invention relates to a preferred embodiment of the above-described invention, and the deviation between the character's stationary posture and the character's starting posture when moving can be made as small as possible by simple calculation. It becomes like this.
また、本発明の画像生成装置は、以下のように構成することができる。 Further, the image generation apparatus of the present invention can be configured as follows.
すなわち、記憶部には、複数の姿勢パラメータ値のそれぞれに対応付けて姿勢ボーン情報が記憶される。たとえば、上記のように、5種類のキャラクターの構えが記憶される。 That is, posture bone information is stored in the storage unit in association with each of a plurality of posture parameter values. For example, as described above, five types of character postures are stored.
一方、所定範囲内の位置がユーザにより指定されるコントローラにおいて、当該所定範囲の周縁に含まれる位置が指定されると、姿勢受付部は、当該所定範囲の中心位置から見た当該位置の向きを、姿勢パラメータ値の入力とする。たとえば、上記のように、ジョイスティックやタッチパッド等によって、姿勢パラメータ値が入力される。 On the other hand, in a controller in which a position within a predetermined range is specified by the user, when a position included in the periphery of the predetermined range is specified, the posture receiving unit changes the orientation of the position as viewed from the center position of the predetermined range. The posture parameter value is input. For example, as described above, the posture parameter value is input by a joystick, a touch pad, or the like.
第1の姿勢パラメータ値ならびに第2の姿勢パラメータ値は、記憶部に記憶される複数の姿勢パラメータ値のうち、当該受け付けられた姿勢パラメータ値を直近に挟む2つの姿勢パラメータ値である。 The first posture parameter value and the second posture parameter value are two posture parameter values that sandwich the accepted posture parameter value among the plurality of posture parameter values stored in the storage unit.
ここで、入力された姿勢パラメータ値θを記憶部に記憶される姿勢パラメータ値α,β(α<β)が直近に挟む、とは、α≦θ≦βであり、かつ、α以上β以下の姿勢パラメータ値は、記憶部には記憶されていない、ということを意味する。 Here, the posture parameter values α and β (α <β) stored in the storage unit between the input posture parameter values θ are most recently sandwiched when α ≦ θ ≦ β, and α is equal to or greater than β. This means that the posture parameter value is not stored in the storage unit.
本発明によれば、キャラクターの姿勢を3個以上用意して、それらの姿勢の中間の姿勢を得ることにより、広い範囲のキャラクターの姿勢を得ることができるようになる。 According to the present invention, it is possible to obtain a wide range of character postures by preparing three or more character postures and obtaining an intermediate posture among those postures.
また、本発明の画像生成装置は、以下のように構成することができる。 Further, the image generation apparatus of the present invention can be configured as follows.
すなわち、記憶部には、複数の姿勢パラメータ値のそれぞれに対応付けて姿勢ボーン情報が記憶され、複数の向きパラメータ値のそれぞれに対応付けて動作ボーン情報が記憶される。たとえば、上記のように、キャラクターの5種類の構えと5種類の動作が記憶される。 That is, the storage unit stores posture bone information in association with each of a plurality of posture parameter values, and stores motion bone information in association with each of a plurality of orientation parameter values. For example, as described above, five types of postures and five types of actions of the character are stored.
一方、所定範囲内の位置がユーザにより指定されるコントローラにおいて、当該所定範囲の周縁に含まれる第1の位置から、当該所定範囲の周縁以外を通過して、当該所定範囲の周縁に含まれる第2の位置へ、当該指定される位置が移動すると、姿勢受付部は、当該所定範囲の中心位置から見た当該第1の位置の向きを、姿勢パラメータ値の入力とし、動作受付部は、当該第1の位置から見た当該第2の位置の向きを、向きパラメータ値の入力とする。 On the other hand, in the controller in which the position within the predetermined range is designated by the user, the first position included in the periphery of the predetermined range passes through other than the periphery of the predetermined range, and the When the designated position moves to the position 2, the posture accepting unit uses the orientation of the first position viewed from the center position of the predetermined range as an input of the posture parameter value, and the motion accepting unit The direction of the second position viewed from the first position is set as an input of the direction parameter value.
たとえば、上記のように、ジョイスティック等をゆっくりと傾けると、棒状体の中央からの向きが、姿勢パラメータ値となる。さらに、ジョイスティック等の向きを高速に移動すると、棒状体の移動の開始時点から終了時点への向きが、向きパラメータ値となる。 For example, as described above, when the joystick or the like is slowly tilted, the orientation from the center of the rod-shaped body becomes the posture parameter value. Furthermore, when the direction of the joystick or the like is moved at a high speed, the direction from the start point to the end point of the movement of the rod-shaped body becomes the direction parameter value.
第1の姿勢パラメータ値ならびに第2の姿勢パラメータ値は、記憶部に記憶される複数の姿勢パラメータ値のうち、当該受け付けられた姿勢パラメータ値を直近に挟む2つの姿勢パラメータ値であり、第1の向きパラメータ値ならびに第2の向きパラメータ値は、記憶部に記憶される複数の移動パラメータ値のうち、当該受け付けられた移動パラメータ値を直近に挟む2つの移動パラメータ値である。 The first posture parameter value and the second posture parameter value are two posture parameter values that sandwich the accepted posture parameter value among the plurality of posture parameter values stored in the storage unit. The direction parameter value and the second direction parameter value are two movement parameter values that sandwich the accepted movement parameter value among the plurality of movement parameter values stored in the storage unit.
すなわち、本発明では、入力された姿勢パラメータ値を直近に挟む姿勢ボーン情報をブレンドし、入力された向きパラメータ値を直近に挟む動作ボーン情報をブレンドして、これらから、動作開始時点の姿勢と、動作中の姿勢の時間変化と、の両方を得るのである。 That is, in the present invention, the posture bone information that sandwiches the input posture parameter value most recently is blended, and the motion bone information that sandwiches the input orientation parameter value most recently is blended. , To obtain both time change of posture during operation.
本発明によれば、プレイヤは、1つのコントローラにより、キャラクターの静止時の姿勢と動作の両方を、指定することができるようになる。 According to the present invention, the player can specify both the posture and motion of the character at rest with one controller.
本発明のその他の観点に係る画像生成方法は、複数の互いに連結されるボーンを有するキャラクターの姿勢を定めるために、当該複数のボーンの相対的な位置および向きを表す姿勢ボーン情報を使用して、当該キャラクターの画像を生成する。 An image generation method according to another aspect of the present invention uses posture bone information representing a relative position and orientation of a plurality of bones in order to determine a posture of a character having a plurality of bones connected to each other. , Generate an image of the character.
画像生成方法は、画像生成装置が実行する。当該画像生成装置は、記憶部、姿勢受付部、姿勢計算部、姿勢混合部、生成部を備える。 The image generation method is executed by the image generation apparatus. The image generation apparatus includes a storage unit, a posture receiving unit, a posture calculation unit, a posture mixing unit, and a generation unit.
ここで、記憶部には、キャラクターが第1の姿勢をとるときの第1の姿勢ボーン情報が、第1の姿勢パラメータ値に対応付けて記憶され、当該キャラクターが第2の姿勢をとるときの第2の姿勢ボーン情報が、第2の姿勢パラメータ値に対応付けて記憶される。 Here, the storage unit stores the first posture bone information when the character takes the first posture in association with the first posture parameter value, and when the character takes the second posture. Second posture bone information is stored in association with the second posture parameter value.
そして、当該画像生成方法は、姿勢受付工程、姿勢計算工程、姿勢混合工程、生成工程を備える。 The image generation method includes an attitude reception process, an attitude calculation process, an attitude mixing process, and a generation process.
ここで、姿勢受付工程では、姿勢受付部が、キャラクターがとるべき姿勢を表す姿勢パラメータ値の入力を受け付ける。 Here, in the posture accepting step, the posture accepting unit accepts an input of a posture parameter value representing the posture that the character should take.
一方、姿勢計算工程では、姿勢計算部が、受け付けられた姿勢パラメータ値が、第1の姿勢パラメータ値と、第2の姿勢パラメータ値と、を内分する姿勢内分比を計算する。 On the other hand, in the posture calculation step, the posture calculation unit calculates a posture internal ratio in which the received posture parameter value internally divides the first posture parameter value and the second posture parameter value.
さらに、姿勢混合工程では、姿勢混合部が、計算された姿勢内分比で、第1の姿勢ボーン情報と、第2の姿勢ボーン情報と、を、ブレンドすることにより、第3の姿勢ボーン情報を得る。 Further, in the posture mixing step, the posture mixing unit blends the first posture bone information and the second posture bone information with the calculated posture internal ratio, thereby obtaining the third posture bone information. Get.
そして、生成工程では、生成部が、得られた第3の姿勢ボーン情報により、キャラクターの形状を定め、定められた形状により、当該キャラクターを表す画像を生成する。 In the generation step, the generation unit determines the shape of the character based on the obtained third posture bone information, and generates an image representing the character with the determined shape.
本発明のその他の観点に係るプログラムは、コンピュータを、上記画像生成装置の各部として機能させるように構成する。 A program according to another aspect of the present invention is configured to cause a computer to function as each unit of the image generation apparatus.
また、本発明のプログラムは、コンパクトディスク、フレキシブルディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、半導体メモリ等のコンピュータ読取可能な情報記憶媒体に記録することができる。 The program of the present invention can be recorded on a computer-readable information storage medium such as a compact disk, flexible disk, hard disk, magneto-optical disk, digital video disk, magnetic tape, and semiconductor memory.
上記プログラムは、プログラムが実行されるコンピュータとは独立して、コンピュータ通信網を介して配布・販売することができる。また、上記情報記憶媒体は、コンピュータとは独立して配布・販売することができる。 The above program can be distributed and sold via a computer communication network independently of the computer on which the program is executed. The information storage medium can be distributed and sold independently from the computer.
本発明によれば、キャラクターの特定の姿勢や動作から任意の姿勢や動作を求めて、その画像を生成するのに好適な画像生成装置、画像生成方法、ならびに、これらをコンピュータにて実現するプログラムを提供することができる。 According to the present invention, an image generation device, an image generation method, and a program for realizing these on a computer, which are suitable for obtaining an arbitrary posture and movement from a specific posture and movement of a character and generating the image Can be provided.
以下に本発明の実施形態を説明する。以下では、理解を容易にするため、ゲーム用の情報処理装置を利用して本発明が実現される実施形態を説明するが、以下に説明する実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。 Embodiments of the present invention will be described below. In the following, for ease of understanding, an embodiment in which the present invention is realized using a game information processing device will be described. However, the embodiment described below is for explanation, and the present invention is described. It does not limit the range.
したがって、当業者であればこれらの各要素もしくは全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。 Therefore, those skilled in the art can employ embodiments in which each or all of these elements are replaced with equivalent ones, and these embodiments are also included in the scope of the present invention.
図1は、プログラムを実行することにより、本実施形態の画像生成装置として機能しうる典型的な情報処理装置の概要構成を示す模式図である。以下、本図を参照して説明する。 FIG. 1 is a schematic diagram illustrating a schematic configuration of a typical information processing apparatus that can function as an image generation apparatus according to the present embodiment by executing a program. Hereinafter, a description will be given with reference to FIG.
本図に示す情報処理装置100は、いわゆるコンシューマゲーム機に相当するもので、CPU(Central Processing Unit)101、ROM(Read Only Memory)102、RAM(Random Access Memory)103、インターフェース104、コントローラ105、外部メモリ106、画像処理部107、DVD−ROM(Digital Versatile Disc ROM)ドライブ108、NIC(Network Interface Card)109、音声処理部110、マイク111、ハードディスク(Hard Disk;HD)121を有する。各種の入出力装置は、適宜省略することができる。
An
情報処理装置100を典型的なコンシューマゲーム機として機能させる場合には、ゲーム用プログラムおよびデータを記憶したDVD−ROMをDVD−ROMドライブ108に装着し、電源を投入する。すると、当該ゲームプログラムが実行され、ゲームをプレイすることができるようになる。
When the
ただし、本実施形態においては、典型的には、DVD−ROMドライブ108に装着されたDVD−ROMから、アプリケーションをHD 121にインストールする。そして、当該HD 121に記憶されたプログラムを実行することによって、ゲームを含む各種のアプリケーションを実行することとする。
However, in the present embodiment, typically, an application is installed in the
なお、携帯型のゲーム装置においては、携帯可能とするために、DVD−ROMドライブ108を利用するのではなく、ROMカセット用スロットにEEPROM(Electrically Erasable Programmable ROM)カセットを装着して、HD 121を省略したりすることも可能である。この場合、アプリケーション用プログラムをEEPROMカセットに書き込んだ上で、当該プログラムを実行することとなる。このほか、外部メモリ106にアプリケーション用プログラムをインストールすることも可能である。
In order to make the portable game device portable, the DVD-
さて、CPU 101は、情報処理装置100全体の動作を制御し、各構成要素と接続され制御信号やデータをやりとりする。また、CPU 101は、レジスタ(図示せず)という高速アクセスが可能な記憶域に対してALU(Arithmetic Logic Unit)(図示せず)を用いて加減乗除等の算術演算や、論理和、論理積、論理否定等の論理演算、ビット和、ビット積、ビット反転、ビットシフト、ビット回転等のビット演算などを行うことができる。さらに、マルチメディア処理対応のための加減乗除等の飽和演算や、三角関数等、ベクトル演算などを高速に行えるように、CPU 101自身が構成されているものや、コプロセッサを備えて実現するものがある。
The
ROM 102には、電源投入直後に実行されるIPL(Initial Program Loader)が記録され、これが実行されることにより、DVD−ROMに記録されたプログラムをRAM 103に読み出してCPU 101による実行が開始される。また、ROM 102には、情報処理装置100全体の動作制御に必要なオペレーティングシステムのプログラムや各種のデータが記録される。
The
RAM 103は、データやプログラムを一時的に記憶するためのもので、HD 121やDVD−ROM等から読み出したプログラムやデータ、その他通信対戦ゲームの進行やチャット通信に必要なデータが保持される。また、CPU 101は、RAM 103に変数領域を設け、当該変数に格納された値に対して直接ALUを作用させて演算を行ったり、RAM 103に格納された値を一旦レジスタに格納してからレジスタに対して演算を行い、演算結果をメモリに書き戻す、などの処理を行う。
The
インターフェース104を介して接続されたコントローラ105は、ユーザがゲーム実行の際に行う操作入力を受け付ける。
The
なお、コントローラ105は、必ずしも情報処理装置100に対して外付けにされている必要はなく、一体に形成されていても良い。携帯可能な端末装置のコントローラ105は、各種のボタンやスイッチから構成され、これらの押圧操作を操作入力として扱う。このほか、タッチスクリーンを利用した情報処理装置100では、ユーザがペンや指を利用してタッチスクリーンをなぞった軌跡を操作入力として扱う。
The
図2は、コントローラ105の外観を示す説明図である。以下、本図を参照して説明する。
FIG. 2 is an explanatory diagram showing the appearance of the
コントローラ105の左方には、上下左右を示す操作入力を行うのに利用される↑ボタン201、↓ボタン202、←ボタン203、→ボタン204が配置されている。
On the left side of the
右方には、決定操作入力を行うのに利用される○ボタン205、取消操作入力を行うのに利用される×ボタン206、メニュー表示等の指示入力を行うのに利用される△ボタン207、その他の指示入力を行うのに利用される□ボタン208が配置されている。
On the right side, a ○
中央には、SELECTボタン209、STARTボタン210のほか、アナログ入力の開始・停止を指示するためのANALOGボタン211、および、アナログ入力が有効か無効かを表示するためのインジケータ212が配置されている。
In the center, in addition to the
また中央下部には、上下左右に限らない方向に大きさを伴う指示入力を行うためのジョイスティック213、214が配置されている。
In addition,
さらに、上方には、各種の指示入力に用いることができるL1ボタン215、L2ボタン216、R1ボタン217、R2ボタン218が配置されている。
Further, an
コントローラ105の各ボタン201〜208、215〜218には、圧力センサが配備され、アナログ入力が有効となっている場合には、いずれのボタンが押圧操作されているかを検知することができるほか、ユーザの押圧操作の圧力の大きさを0〜255の256段階で得ることができる。
Each button 201-208, 215-218 of the
コントローラ105のジョイスティック213、214は、ひずみゲージが配備され、これらがどの方向にどれだけ曲げられているか、を検知することができる。
The
図1に戻り、インターフェース104を介して着脱自在に接続された外部メモリ106には、ゲーム等のプレイ状況(過去の成績等)を示すデータ、ゲームの進行状態を示すデータ、ネットワーク対戦の場合のチャット通信のログ(記録)のデータなどが書き換え可能に記憶される。ユーザは、コントローラ105を介して指示入力を行うことにより、これらのデータを適宜外部メモリ106に記録することができる。
Returning to FIG. 1, the
上述の通り、アプリケーションプログラムを外部メモリ106にインストールして実行するような形態を採用することもできる。これは、外部メモリ106が大容量である場合に好適である。
As described above, it is possible to adopt a form in which the application program is installed in the
DVD−ROMドライブ108に装着されるDVD−ROMには、ゲームを実現するためのプログラムとゲームに付随する画像データや音声データが記録される。CPU 101の制御によって、DVD−ROMドライブ108は、これに装着されたDVD−ROMに対する読み出し処理を行って、必要なプログラムやデータを読み出し、これらはRAM 103等に一時的に記憶される。
A DVD-ROM mounted on the DVD-
画像処理部107は、DVD−ROMから読み出されたデータをCPU 101や画像処理部107が備える画像演算プロセッサ(図示せず)によって加工処理した後、これを画像処理部107が備えるフレームメモリ(図示せず)に記録する。フレームメモリに記録された画像情報は、所定の同期タイミングでビデオ信号に変換され画像処理部107に接続されるモニタ(図示せず)へ出力される。これにより、各種の画像表示が可能となる。
The
携帯可能な端末装置のモニタとしては、小型の液晶ディスプレイを利用するのが典型的であり、コントローラ105としてタッチスクリーンを利用する場合には、当該タッチスクリーンの表示パネルがモニタとして機能する。自宅で遊ぶための端末装置やネットワークゲームのサーバ装置のモニタとしては、CRT(Cathode Ray Tube)やプラズマディスプレイなどの表示装置を利用することも可能である。
As a monitor of a portable terminal device, a small liquid crystal display is typically used. When a touch screen is used as the
画像演算プロセッサは、2次元の画像の重ね合わせ演算やαブレンディング等の透過演算、各種の飽和演算を高速に実行できる。 The image calculation processor can execute a two-dimensional image overlay calculation, a transmission calculation such as α blending, and various saturation calculations at high speed.
また、仮想3次元空間に配置され、各種のテクスチャ情報が付加されたポリゴン情報を、Zバッファ法によりレンダリングして、所定の視点位置から仮想3次元空間に配置されたポリゴンを所定の視線の方向へ俯瞰したレンダリング画像を得る演算の高速実行も可能である。 Also, polygon information arranged in the virtual three-dimensional space and added with various texture information is rendered by the Z buffer method, and the polygon arranged in the virtual three-dimensional space from the predetermined viewpoint position is determined in the direction of the predetermined line of sight It is also possible to perform high-speed execution of operations for obtaining rendered images.
さらに、CPU 101と画像演算プロセッサが協調動作することにより、文字の形状を定義するフォント情報にしたがって、文字列を2次元画像としてフレームメモリへ描画したり、各ポリゴン表面へ描画することが可能である。
Further, the
NIC 109は、情報処理装置100をインターネット等のコンピュータ通信網(図示せず)に接続するためのものであり、LANを構成する際に用いられる10BASE−T/100BASE−T規格にしたがうものや、電話回線を用いてインターネットに接続するためのアナログモデム、ISDN(Integrated Services Digital Network)モデム、ADSL(Asymmetric Digital Subscriber Line)モデム、ケーブルテレビジョン回線を用いてインターネットに接続するためのケーブルモデム等と、これらとCPU 101との仲立ちを行うインターフェース(図示せず)により構成される。
The
また、NIC 109経由でコンピュータ通信網から入手した情報を元に、HD 121等にアプリケーションプログラムをインストールすることも可能である。
An application program can be installed in the
音声処理部110は、HD 121やDVD−ROMから読み出した音声データをアナログ音声信号に変換し、これに接続されたスピーカ(図示せず)から出力させる。また、CPU 101の制御の下、ゲームの進行の中で発生させるべき効果音や楽曲データを生成し、これに対応した音声をスピーカや、ヘッドホン(図示せず)、イヤフォン(図示せず)から出力させる。
The
音声処理部110では、HD 121やDVD−ROMに記録された音声データがMIDIデータである場合には、これが有する音源データを参照して、MIDIデータをPCMデータに変換する。また、ADPCM形式やOgg Vorbis形式等の圧縮済音声データである場合には、これを展開してPCMデータに変換する。PCMデータは、そのサンプリング周波数に応じたタイミングでD/A(Digital/Analog)変換を行って、スピーカに出力することにより、音声出力が可能となる。
When the audio data recorded on the
さらに、情報処理装置100には、インターフェース104を介してマイク111を接続することができる。この場合、マイク111からのアナログ信号に対しては、適当なサンプリング周波数でA/D変換を行い、PCM形式のディジタル信号として、音声処理部110でのミキシング等の処理ができるようにする。
Furthermore, a
本実施形態で利用する情報処理装置100は、上述のように、HD 121等の大容量外部記憶装置を用いるのが典型的である。HD 121は、ROM 102、RAM 103、外部メモリ106、DVD−ROMドライブ108に装着されるDVD−ROM等と同じ機能を果たすこともできる。
As described above, the
このほか、ユーザからの文字列の編集入力を受け付けるためのキーボードや、各種の位置の指定および選択入力を受け付けるためのマウスなどを接続する形態も採用することができる。また、本実施形態の情報処理装置100にかえて、汎用のパーソナルコンピュータやサーバ用コンピュータ等を利用することもできる。
In addition, it is possible to adopt a form in which a keyboard for accepting a character string editing input from a user, a mouse for accepting various position designations and selection inputs, and the like are connected. In addition, a general-purpose personal computer, a server computer, or the like can be used instead of the
以上で説明した情報処理装置100は、コンシューマ向けゲーム装置に相当するものであるが、各種の入出力処理が可能な電子機器であれば、本発明の端末装置やサーバ装置を実現することができる。したがって、携帯電話、携帯ゲーム機器、カラオケ装置、一般的なビジネス用コンピュータなど、種々の計算機上で本発明の端末装置やサーバ装置を実現することが可能である。
The
たとえば、ビジネス用コンピュータは、上記情報処理装置100と同様に、CPU、RAM、ROM、DVD−ROMドライブ、および、NIC、HDを構成要素として有するほか、情報処理装置100よりも簡易な機能を備えた画像処理部を備え、外部記憶装置としてフレキシブルディスク、光磁気ディスク、磁気テープ等が利用できるようになっており、コントローラ105ではなく、キーボードやマウスなどを入力装置として利用するのが典型的である。
For example, similarly to the
図3は、本実施形態に係る画像生成装置の概要構成を示す説明図である。以下、本図を参照して説明する。 FIG. 3 is an explanatory diagram showing a schematic configuration of the image generation apparatus according to the present embodiment. Hereinafter, a description will be given with reference to FIG.
本実施形態に係る画像生成装置301は、記憶部302、姿勢受付部303、姿勢計算部304、姿勢混合部305、動作受付部306、動作計算部307、動作混合部308、生成部309、開始姿勢取得部310を備える。本画像生成装置301は、情報処理装置100にて、DVD−ROMドライブ108に装着されたDVD−ROMやHD 121に記録された所定のプログラムを実行することによって、実現される。
The
ここで、記憶部302には、キャラクターの平静時の姿勢を定める姿勢ボーン情報が、姿勢パラメータ値に対応付けられて記憶されるほか、キャラクターの動作時の姿勢を定める動作ボーン情報が、向きパラメータ値に対応付けられて記憶される。記憶部302は、DVD−ROMドライブ108に装着されたDVD−ROMや、RAM 103等により実現される。
Here, in the
一方、ユーザがコントローラ105のジョイスティック213を操作したときに、その操作状況から姿勢パラメータ値や向きパラメータ値が求められ、姿勢受付部303と、動作受付部306と、は、求められた姿勢パラメータ値と、向きパラメータ値と、をそれぞれ受け付ける。したがって、姿勢受付部303と、動作受付部306と、は、CPU 101がコントローラ105と共働することにより、実現される。
On the other hand, when the user operates the
姿勢計算部304と、動作計算部307と、は、受け付けられた姿勢パラメータ値ならびに向きパラメータ値が、姿勢ボーン情報や動作ボーン情報に対応付けて記憶部302に記憶される姿勢パラメータ値ならびに向きパラメータ値を、内分する姿勢内分比と向き内分比を計算するもので、CPU 101によって実現される。
The
姿勢混合部305と、動作混合部308と、は、計算された姿勢内分比と向き内分比に基づいて記憶部302に記憶される姿勢ボーン情報や動作ボーン情報を混合して、新たな姿勢ボーン情報や動作ボーン情報を生成するもので、CPU 101によって実現される。
The
生成部309は、生成された姿勢ボーン情報に基づいて、キャラクターの平静時の画像を生成したり、動作ボーン情報に基づいて、キャラクターの動作時の画像を生成するもので、CPU 101の制御の下、画像処理部107が機能することによって実現される。
The
開始姿勢取得部310は、動作が開始される直前の姿勢を取得するものであり、CPU 101によって実現される。なお、動作ボーン情報に、ボーンの向きの差分情報のみが含まれる場合には、直前に採用された姿勢ボーン情報が動作が開始される直前の姿勢として利用されることになる。
The starting
以下、画像生成装置301について、さらに詳細に説明する。
Hereinafter, the
まず、記憶部302に記憶される姿勢ボーン情報と、動作ボーン情報と、は、キャラクターの姿勢を定めるためのものである。
First, the posture bone information and the motion bone information stored in the
ここで、ボーンとは、キャラクターの骨格に相当するものであり、一般には、ボーン同士の連結位置は変化しない。したがって、まず、いずれか1つのボーンの位置と向きを定め、次に、その位置と向きが定められたボーンに対して、直接連結されている他のボーンの位置と向きを定めることを繰り返せば、ボーン全体の形状が一意に定まる。ボーン全体の形状は、デサイナーが設計することもあるし、モーションキャプチャにより取得されることもある。 Here, the bone corresponds to the skeleton of the character, and generally the connection position between the bones does not change. Therefore, it is necessary to first determine the position and orientation of any one bone, and then repeat the determination of the position and orientation of another bone that is directly connected to the bone whose position and orientation are determined. The shape of the whole bone is uniquely determined. The shape of the entire bone may be designed by the designer or acquired by motion capture.
複数のボーンは、各ボーンをノードとする木構造に階層化される。木構造においては、互いに連結された2つのボーンのうち、一方のボーンは親ノードに、他方のボーンは子ノードに、それぞれ割り当てられる。すなわち、直接連結されるボーン同士は、一方が親であり、他方が子である。 A plurality of bones are hierarchized into a tree structure with each bone as a node. In the tree structure, of the two bones connected to each other, one bone is assigned to the parent node, and the other bone is assigned to the child node. That is, one of the directly connected bones is a parent and the other is a child.
木構造の根ノードに割り当てられる根ボーンは、キャラクターの基本的な位置や向きを表すものである。したがって、根ボーンの位置や向きは、仮想空間内におけるグローバル座標系に対して定められる。 The root bone assigned to the root node of the tree structure represents the basic position and orientation of the character. Accordingly, the position and orientation of the root bone are determined with respect to the global coordinate system in the virtual space.
一方、互いに連結されたボーン同士の相対的な位置や向きは、親ボーンに固定された座標系における両者の連結点の位置、および、当該座標系における子ボーンの向きにより表現される。 On the other hand, the relative positions and orientations of the bones connected to each other are expressed by the positions of the connecting points in the coordinate system fixed to the parent bone and the orientations of the child bones in the coordinate system.
したがって、キャラクターが姿勢を変えるときには、連結点の位置は変化せず、親ボーンに対する子ボーンの向きのみが変化するのが一般的である。 Therefore, when the character changes posture, the position of the connection point does not change, and only the direction of the child bone relative to the parent bone generally changes.
根ボーンから木構造の親子関係をたどり、親ボーンに対する子ボーンの向きを定めると、各子ボーンのグローバル座標系における位置および向きが求められる。これを繰り返すことによって、キャラクターの形状全体が定められる。 By tracing the parent-child relationship of the tree structure from the root bone and determining the orientation of the child bone relative to the parent bone, the position and orientation of each child bone in the global coordinate system can be obtained. By repeating this, the entire shape of the character is determined.
親ボーンに固定された座標系において、子ボーンの向きを表すには、当該座標系におけるオイラー角もしくはクォータニオンを利用するのが一般的である。 In order to represent the direction of a child bone in a coordinate system fixed to the parent bone, Euler angles or quaternions in the coordinate system are generally used.
記憶部302には、姿勢パラメータ値と姿勢ボーン情報との組が複数記憶され、向きパラメータ値と動作ボーン情報との組が複数記憶されている。
The
本実施形態では、キャラクターが刀を構えた姿勢から刀を振る状況に、本発明を適用している。 In the present embodiment, the present invention is applied to a situation in which a character swings a sword from a posture holding a sword.
そこで、姿勢パラメータ値として、キャラクターの正面中央から見て、刀の先端が鉛直線下向きとなす角度、すなわち、キャラクターと正対し、キャラクターの中段中央を中心としたときに、中心から刀の先端への方向と、中心から鉛直下向きとの方向と、が、なす半時計周りの角度、を採用している。 Therefore, as the posture parameter value, the angle that the tip of the sword faces downward from the center of the character when viewed from the front center of the character, that is, when facing the character and centering on the middle center of the character, from the center to the tip of the sword And the angle from the center to the vertically downward direction is a counterclockwise angle.
図4、図5、図6、図7、図8は、姿勢パラメータ値とキャラクターの姿勢との関係を示す説明図である。以下、本図を参照して説明する。 4, 5, 6, 7, and 8 are explanatory diagrams showing the relationship between the posture parameter value and the character's posture. Hereinafter, a description will be given with reference to FIG.
キャラクター401は、複数のボーン402によってその形状が定められる。なお、本図においては、一部のボーンについてのみ符号を付している。
The shape of the
ボーン402同士の連結点は、本図では、○印で描かれている。すなわち、本図において、大半のボーン402は、○印で挟まれている線により描かれている。
The connection point between the
ただし、刀を表すボーン402aは、本図では太い線で描かれており、右手の拳411の位置(本図では□印で描かれている。)と、左手の拳412の位置(本図では□印で描かれている。)によって、その向きが定められる。
However, the
キャラクター401の姿勢を表す姿勢パラメータ値は、中心点404から鉛直下向きに伸びる線405と、キャラクターの中段中央の中心点404(本図では、△印で描かれている。)から刀を表すボーン402aの先端403(本図では、六角形で描かれている。)へ向かう半直線406と、のなす角θである。
(a)図4では、キャラクター401が右下段の構えをとっており、姿勢パラメータ値は0度である。先端403は、本図で下に向いている。
(b)図5では、キャラクター401が右中段の構えをとっており、姿勢パラメータ値は90度である。先端403は、本図で右を向いている。
(c)図6では、キャラクター401が上段の構えをとっており、姿勢パラメータ値は180度である。先端403は、本図で上を向いている。
(d)図7では、キャラクター401が左中段の構えをとっており、姿勢パラメータ値は270度である。先端403は、本図で左を向いている。
(e)図8では、キャラクター401が左下段の構えをとっており、姿勢パラメータ値は360度である。先端403は、本図で下を向いている。
The posture parameter values representing the posture of the
(A) In FIG. 4, the
(B) In FIG. 5, the
(C) In FIG. 6, the
(D) In FIG. 7, the
(E) In FIG. 8, the
姿勢ボーン情報は、キャラクターが完全に静止している瞬間の、当該キャラクターの姿勢を表すこととしても良いが、たとえばキャラクターの呼吸の周期に合わせて時間の経過とともに変化するようなものとしても良い。 The posture bone information may represent the posture of the character at the moment when the character is completely stationary. For example, the posture bone information may change with the passage of time according to the breathing cycle of the character.
ここで、右下段と左下段を区別しているのは、両者の手首の捻りの向きが異なるからである。すなわち、図4、図8に示すように、刀のボーン402aの向きや位置は一致しているが、キャラクター401の右手の拳411と左手の拳412の位置関係が異なる。
Here, the reason why the lower right stage and the lower left stage are distinguished from each other is because the directions of twisting of the wrists are different. That is, as shown in FIGS. 4 and 8, the orientation and position of the
一方、図9、図10、図11、図12、図13は、向きパラメータ値とキャラクターの動作の方向との関係を示す説明図であり、それぞれ、図4、図5、図6、図7、図8における姿勢から、キャラクター401が刀を振ったときの刀の先端403が描く軌跡の向きを表している。以下、これらの図を参照して説明する。
On the other hand, FIG. 9, FIG. 10, FIG. 11, FIG. 12, and FIG. 13 are explanatory diagrams showing the relationship between the orientation parameter value and the direction of the character movement, respectively. 8 represents the direction of the locus drawn by the
キャラクター401の動作は、複数のボーン402の位置や向きの時間変化によって定められる。キャラクターの動作の向きを表す向きパラメータ値は、中心点404から鉛直上向きに伸びる線501と、刀を表すボーン402aの先端403が移動する方向を表す軌跡502と、のなす角φである。なお、図面を理解しやすくするため、本図の軌跡502は、場所をずらして描いてある。
(a)図9では、右下段の握りでキャラクター401が刀を下から上に振り上げる動作を表しており、向きパラメータ値は0度である。先端403は、本図で下から上に移動している。
(b)図10では、キャラクター401が刀を右から左に振る動作を表しており、向きパラメータ値は90度である。先端403は、本図で右から左に移動している。
(c)図11では、キャラクター401が刀を上から下に振り下ろす動作を表しており、向きパラメータ値は180度である。先端403は、本図で上から下に移動している。
(d)図12では、キャラクター401が刀を左から右に振る動作を表しており、向きパラメータ値は270度である。先端403は、本図で左から右に移動している。
(e)図13では、キャラクター401が左下段の握りで刀を下から上に振り上げる動作を表しており、向きパラメータ値は360度である。先端403は、本図で下から上に移動している。
The action of the
(A) In FIG. 9, the
(B) In FIG. 10, the
(C) In FIG. 11, the
(D) In FIG. 12, the
(E) In FIG. 13, the
いずれの図においても、軌跡502は、中心点404を通過することとなっている。
In any of the drawings, the
本実施形態では、5種類の姿勢ボーン情報と、5種類の動作ボーン情報と、に基づいて、任意の角度θにおける姿勢ボーン情報と、任意の向きφにおける動作ボーン情報と、を生成することにより、任意のθ、φに対するキャラクターの平静時の姿勢、動作時の姿勢の変化を求めるのである。 In the present embodiment, by generating posture bone information at an arbitrary angle θ and motion bone information at an arbitrary direction φ based on the five types of posture bone information and the five types of motion bone information. Then, the change of the posture of the character at the time of calm and the posture at the time of movement is obtained with respect to arbitrary θ and φ.
このほか、本実施形態では、キャラクターが刀を構えていない基本姿勢の姿勢ボーン情報も利用する。 In addition, in this embodiment, posture bone information of a basic posture in which the character does not hold a sword is also used.
図14は、本実施形態の画像生成装置において実行される画像生成処理の制御の流れを示すフローチャートである。以下、本図を参照して説明する。 FIG. 14 is a flowchart showing the flow of control of image generation processing executed in the image generation apparatus of this embodiment. Hereinafter, a description will be given with reference to FIG.
本処理が開始されると、CPU 101は、DVD−ROMドライブ108に装着されたDVD−ROMなどから、姿勢ボーン情報およびその姿勢パラメータ値、ならびに、動作ボーン情報およびその向きパラメータ値、その他各種の情報を、読み出してRAM 103に書き込み、初期化を行う(ステップS601)。
When this processing is started, the
ついで、CPU 101は、コントローラ105におけるジョイスティック213の状態を調べて、何らかの入力がされているか確認する(ステップS602)。ここで、ジョイスティック213による入力手法について説明する。
Next, the
図15は、姿勢パラメータ値を入力するためのジョイスティック213の操作方法を示す説明図である。以下、本図を参照して説明する。
FIG. 15 is an explanatory diagram showing a method of operating the
本図には、ジョイスティック213のスティック651が、点線で示される基本位置652から周縁654内の位置653に傾けられた状況が示されている。
This figure shows a situation where the
この状況では、基本位置652から下方に伸びる線681と、基本位置652から現在の位置653に伸びる線682と、のなす角θが、姿勢パラメータ値として入力されることになる。
In this situation, an angle θ formed by a
ユーザが、ジョイスティック213のスティック651を傾けたまま周縁654を一周すると、姿勢パラメータ値θとして0度から360度までの任意の値を入力することができる。
When the user goes around the
図16は、向きパラメータ値を入力するためのジョイスティック213の操作方法を示す説明図である。以下、本図を参照して説明する。
FIG. 16 is an explanatory diagram showing a method of operating the
本図には、ジョイスティック213のスティック651が、周縁654内の位置653から、周縁654以外を通過して、周縁654内の他の位置655へ、直線的に、ある一定時間内に、移動した場合を示している。このとき、位置653から上方に伸びる線683と、位置653から位置655へ向かう移動の軌跡656と、のなす角φが、向きパラメータ値として入力されることになる。
In this figure, the
移動の軌跡656は、周縁以外の位置を通過する必要があるため、向きパラメータ値φとして入力できる範囲には限界があり、典型的には、直前の姿勢パラメータ値θを中心に、概ね±60度程度である。
Since the
ただし、直前の姿勢パラメータ値θは任意の値をとることができるため、向きパラメータ値φを単独で見れば、任意の値をとることができる、と考えることもできる。 However, since the immediately preceding posture parameter value θ can take an arbitrary value, it can be considered that if the orientation parameter value φ is viewed alone, an arbitrary value can be taken.
また、スティック651が、周縁以外の位置にあるとき、たとえば、ユーザがスティック651から指を離したときには、姿勢パラメータ値も向きパラメータ値も入力されていないことになる。
Further, when the
このような操作方法を採用することによって、キャラクターが刀を構えるときの姿勢や、キャラクターが刀を振るときの方向を、コントローラ105の一つのジョイスティック213の操作だけで入力することができる。
By adopting such an operation method, it is possible to input the posture when the character holds the sword and the direction when the character shakes the sword only by operating one
さらに、向きパラメータ値が入力される直前には、必ず姿勢パラメータ値が入力されることとなるので、キャラクターは、何らかの構えの姿勢をとってから、刀を振ることになる。 Further, since the posture parameter value is always input immediately before the direction parameter value is input, the character swings the sword after taking a certain posture.
なお、マウスやタッチパッド、トラックパッド、トラックボール等を使用して、同様の操作体系を実現することも可能であり、これらの実施形態も、本発明の範囲に含まれる。 A similar operation system can be realized by using a mouse, a touch pad, a track pad, a track ball or the like, and these embodiments are also included in the scope of the present invention.
ここで、姿勢パラメータ値θが入力されている場合(ステップS602;θ)、CPU 101は、RAM 103に姿勢ボーン情報と対応付けられて記憶されている姿勢パラメータ値のうち、θを直近に挟む2つを選択する(ステップS603)。以下、この2つの姿勢パラメータ値を、αとβ(α<β)とする。
When the posture parameter value θ is input (step S602; θ), the
上記のように、記憶部302に記憶されている姿勢パラメータ値は、0度、90度、180度、270度、360度の5種類であるから、
(a)0≦θ<90の場合、α = 0,β = 90であり、
(b)90≦θ<180の場合、α = 90,β = 180であり、
(c)180≦θ<270の場合、α = 180,β = 270であり、
(d)270≦θ<360の場合、α = 270,β = 360である。
As described above, since the posture parameter values stored in the
(A) When 0 ≦ θ <90, α = 0, β = 90,
(B) When 90 ≦ θ <180, α = 90, β = 180,
(C) When 180 ≦ θ <270, α = 180, β = 270,
(D) When 270 ≦ θ <360, α = 270 and β = 360.
次に、CPU 101は、θがαとβを内分する内分比A:Bを計算する(ステップS604)。内分比A:Bは、
A:B = (θ-α):(β-θ)
のように計算できる。
Next, the
A: B = (θ-α) :( β-θ)
It can be calculated as follows.
さらに、CPU 101は、姿勢パラメータ値αに対応付けられている姿勢ボーン情報と、姿勢パラメータ値βに対応付けられている姿勢ボーン情報と、を、内分比A:Bでブレンドして、新たな姿勢ボーン情報を得る(ステップS605)。
Further, the
以下、姿勢ボーン情報のブレンドの具体的な手法について、説明する。なお、理解を容易にするため、ボーンの階層構造を省略して、3本のボーンのみがある場合を例としてとりあげる。 Hereinafter, a specific method of blending posture bone information will be described. In order to facilitate understanding, a case where only three bones are present without taking up the hierarchical structure of bones is taken as an example.
図17は、3つの姿勢におけるボーンの位置関係を示す説明図である。以下、本図を参照して説明する。なお、本図は、理解を容易にするため、位置関係を誇張して描いている。 FIG. 17 is an explanatory diagram showing the positional relationship between bones in three postures. Hereinafter, a description will be given with reference to FIG. In this figure, the positional relationship is exaggerated for easy understanding.
なお、本図は、第1の姿勢と第2の姿勢とをブレンドして第3の姿勢を得る過程を説明するものであり、ボーンや角度に付す符号については、第1の姿勢においては、符号に「a」を、第2の姿勢においては、符号に「b」を、第3の姿勢においては、符号に「c」を、付加することとしている。 This figure explains the process of obtaining the third posture by blending the first posture and the second posture. Regarding the reference numerals attached to the bones and angles in the first posture, “A” is added to the code, “b” is added to the code in the second posture, and “c” is added to the code in the third posture.
本図において、根ボーンであるボーン701(第1の姿勢では符号701aにより、第2の姿勢では符号701b、第3の姿勢では符号701cに相当。以下同様。)からはボーン702が伸びており、ボーン702からはボーン703が伸びている。したがって、本図では、親ボーン701と子ボーン702、親ボーン702と子ボーン703の2つの親子関係がある。
In this figure, a bone 702 extends from a bone 701 (corresponding to reference numeral 701a in the first attitude,
本図におけるボーン701a、702a、703aは、第1の姿勢(姿勢パラメータ値α)におけるボーンの位置を示しており、本図におけるボーン701b、702b、703bは、第2の姿勢(姿勢パラメータ値β)におけるボーンの位置を示している。
また、本図におけるボーン701c、702c、703cは、第1の姿勢と第2の姿勢とを内分比A:Bでブレンドした第3の姿勢におけるボーンの位置を示している。
In addition,
まず、根ボーン701については、第1の姿勢と第2の姿勢とで、ボーン701a、701bのように、位置と向きが異なる。そこで、これらを内分比A:Bで内分した位置を、ボーン701cの位置とする。
First, the position and orientation of the
また、ボーン701a、701bは、向きも異なる。そこで、ボーン701aが基準線となす角710aと、ボーン701bが基準線となす角710bと、を、内分比A:Bで内分した角度を、ボーン701cが基準線となす角710cとする。
Further, the
すると、ボーン701cがボーン702cと連結される連結点の位置も、必然的に定まることになる。
Then, the position of the connection point where the
次に、親ボーン701と子ボーン702とのなす角を考える。第1の姿勢において両者がなす角711aと、第2の姿勢において両者がなす角711bと、を、内分比A:Bで内分した角度711cを計算する。
Next, consider the angle between the
そして、親ボーン701cに対する子ボーン702cの向きを、上記の角度711cとする。
The direction of the
すると、ボーン702cとボーン703cとが連結される連結点の位置も、必然的に定まることになる。
Then, the position of the connection point where the
そこで、親ボーン702と子ボーン703とのなす角を考える。第1の姿勢において両者がなす角712aと、第2の姿勢において両者がなす角712bと、を、内分比A:Bで内分した角度712cを計算する。
Therefore, consider the angle between the parent bone 702 and the child bone 703. An
そして、親ボーン702cに対する子ボーン703cの向きを、上記の角度712cとする。
The direction of the
すると、ボーン703の位置も、必然的に定まることになる。 Then, the position of the bone 703 is inevitably determined.
このように、ボーンの階層関係を順にたどることによって、すべてのボーンの向きを内分比A:Bで内分する。すると、第1の姿勢と第2の姿勢とを内分比A:Bでブレンドした第3の姿勢が得られるのである。 In this way, by traversing the hierarchical relationship of the bones in turn, the direction of all the bones is internally divided by the internal ratio A: B. Then, the 3rd attitude | position which blended the 1st attitude | position and the 2nd attitude | position with internal division ratio A: B is obtained.
本図の説明では、理解を容易にするため、2次元的な図面によって説明したが、3次元グラフィックスでは、向きは、オイラー角やクォータニオンのように、複数の数値によって表現される。この場合には、各要素を内分することで、上記のブレンドを実行するのである。 In the description of this figure, the two-dimensional drawing is used for easy understanding, but in the three-dimensional graphics, the direction is expressed by a plurality of numerical values such as Euler angles and quaternions. In this case, the blending is executed by dividing each element internally.
このようにして、姿勢パラメータ値θに対する姿勢ボーン情報が得られたら、CPU 101は、画像処理部107を駆動して、得られた姿勢ボーン情報に基づいて、仮想空間に配置されるキャラクターの形状を求め、当該キャラクターを表す画像をRAM 103内に生成する(ステップS606)。画像の生成には、各種の3次元グラフィックスの技術を適用することができる。
When the posture bone information for the posture parameter value θ is obtained in this way, the
さらに、CPU 101は、垂直同期割込が生じるまで待機する(ステップS607)。この待機中には、他の各種の計算処理を、コルーチンとして並列に実行することも可能である。
Further, the
垂直同期割込が発生したら、CPU 101は、画像処理部107を駆動して、RAM 103内に生成した画像を、モニタ等の画面に表示させ(ステップS608)、ステップS602に戻る。
When the vertical synchronization interrupt occurs, the
一方、向きパラメータ値φが入力されている場合(ステップS602;φ)、CPU 101は、動作ボーン情報と対応付けられてRAM 103に記憶されている向きパラメータ値のうち、φを直近に挟む2つを選択する(ステップS609)。以下、この2つの向きパラメータ値を、γとδ(γ<δ)とする。
On the other hand, when the orientation parameter value φ has been input (step S602; φ), the
上記のように、記憶部302に記憶されている向きパラメータ値は、0度、90度、180度、270度、360度の5種類であるから、
(a)0≦θ<90の場合、γ = 0,δ = 90であり、
(b)90≦θ<180の場合、γ = 90,δ = 180であり、
(c)180≦θ<270の場合、γ = 180,δ = 270であり、
(d)270≦θ<360の場合、γ = 270,δ = 360である。
As described above, the orientation parameter values stored in the
(A) When 0 ≦ θ <90, γ = 0, δ = 90,
(B) When 90 ≦ θ <180, γ = 90, δ = 180,
(C) When 180 ≦ θ <270, γ = 180, δ = 270,
(D) When 270 ≦ θ <360, γ = 270 and δ = 360.
次に、CPU 101は、φがγとδを内分する内分比C:Dを計算する(ステップS610)。内分比C:Dは、
C:D = (φ-γ):(δ-φ)
のように計算できる。
Next, the
C: D = (φ-γ) :( δ-φ)
It can be calculated as follows.
さらに、CPU 101は、向きパラメータ値φに対応付けられている動作ボーン情報と、向きパラメータ値δに対応付けられている動作ボーン情報と、を、内分比C:Dでブレンドして、新たな動作ボーン情報を得る(ステップS611)。
Further, the
ここで、動作ボーン情報とは、キャラクターのある時点における姿勢と、次の時点(すなわち、垂直同期割込周期後の時点)における姿勢と、の差分を表す情報が、時間の経過とともに一列に並んだものと考えることができる。したがって、動作開始時点の姿勢は、必ずしも動作ボーン情報に含める必要はない。 Here, the motion bone information is information indicating the difference between the posture of the character at a certain point in time and the posture at the next point of time (that is, the point in time after the vertical synchronization interrupt cycle) in a line over time. Can be considered. Therefore, the posture at the start of motion does not necessarily need to be included in the motion bone information.
姿勢ボーン情報においては、各ボーンの相対的な向きを内分比A:Bで内分したが、動作ボーン情報においては、各ボーン向きの差分を内分比C:Dで内分する。 In the posture bone information, the relative direction of each bone is internally divided by the internal ratio A: B, but in the motion bone information, the difference in the direction of each bone is internally divided by the internal ratio C: D.
すなわち、動作ボーン情報において、互いに対応する時点の差分を内分比C:Dで内分する手法は、実質的に、姿勢ボーン情報を内分比A:Bで内分する手法と同様である。 In other words, in the motion bone information, the method of internally dividing the difference between the corresponding time points with the internal ratio C: D is substantially the same as the method of internally dividing the posture bone information with the internal ratio A: B. .
さて、向きの差分は、オイラー角やクォータニオンの差として表現される。したがって、第1の動作と第2の動作とにおいて、各時点における向きの差分をボーンごとに内分比C:Dで内分すれば、第3の動作が得られることになる。 Now, the difference in orientation is expressed as a difference in Euler angle or quaternion. Therefore, in the first operation and the second operation, the third operation can be obtained by dividing the difference in direction at each time point by the internal division ratio C: D for each bone.
なお、根ボーンの動きについても、位置の差分を同様に内分比C:Dで内分することにより、第3の動作における根ボーンの位置の移動を得ることができる。 As for the movement of the root bone, the movement of the position of the root bone in the third operation can be obtained by equally dividing the position difference by the internal division ratio C: D.
このようにして向きφに対する動作ボーン情報が得られたら、動作ボーン情報に含まれる各時点について、順に、以下の処理を繰り返す(ステップS612〜)。 When the motion bone information for the direction φ is obtained in this way, the following processing is repeated in order for each time point included in the motion bone information (step S612).
まず、動作ボーン情報から、現時点の各ボーンの差分を取得する(ステップS613)。 First, the current bone difference is acquired from the motion bone information (step S613).
そして、根ボーンの位置を、当該根ボーンの差分だけ移動する(ステップS614)。 Then, the position of the root bone is moved by the difference of the root bone (step S614).
次に、根ボーンから全ボーンへ、木構造を順に辿りながら、各ボーンの向きを、当該ボーンについて取得された差分だけ変化させる(ステップS615)。 Next, while sequentially traversing the tree structure from the root bone to all bones, the direction of each bone is changed by the difference acquired for the bone (step S615).
そして、直前の姿勢パラメータ値がθであり、指定された向きパラメータ値φである状況での、現時点の姿勢が得られたら、CPU 101は、画像処理部107を駆動して、得られた姿勢に基づいて、仮想空間に配置されるキャラクターの形状を求め、当該キャラクターを表す画像をRAM 103内に生成する(ステップS616)。画像の生成には、各種の3次元グラフィックスの技術を適用することができる。
When the current posture is obtained in the situation where the immediately previous posture parameter value is θ and the specified orientation parameter value φ, the
さらに、CPU 101は、垂直同期割込が生じるまで待機する(ステップS617)。この待機中には、他の各種の計算処理を、コルーチンとして並列に実行することも可能である。
Further, the
垂直同期割込が発生したら、CPU 101は、画像処理部107を駆動して、RAM 103内に生成した画像を、モニタ等の画面に表示させる(ステップS618)。
When the vertical synchronization interrupt occurs, the
この処理を、動作ボーン情報に指定される差分の個数だけ繰り返すと(ステップS619)、姿勢θのキャラクターが刀を向きφに振るアニメーションが画面に表示される。その後、ステップS602に戻る。 When this process is repeated for the number of differences specified in the motion bone information (step S619), an animation in which the character in posture θ swings the sword in the direction φ is displayed on the screen. Thereafter, the process returns to step S602.
図18は、図15のジョイスティック213の操作により構えたキャラクターのボーンの様子と、図16のジョイスティック213の操作により当該キャラクターが刀を振る方向と、を示す説明図である。
FIG. 18 is an explanatory diagram showing the appearance of the bone of the character set by the operation of the
本図に示すように、キャラクター401のボーン402は、図10と図11の中間的な姿勢をとっている。また、刀の軌跡502は、スティック651の軌跡656に連動して、ほぼ平行となっており、本例では、中心点404を通過してはいない。
As shown in the figure, the
このように、ジョイスティック213の操作とキャラクター401の姿勢や動作が直観的に連動しているため、ユーザは、容易にキャラクター401の姿勢や動作を入力することができる。
As described above, since the operation of the
さて、姿勢パラメータ値θも向きパラメータ値φも入力されていない場合(ステップS602;なし)、CPU 101は、RAM 103に記憶された基本姿勢を表すボーン情報を取得する(ステップS620)。
If neither the posture parameter value θ nor the orientation parameter value φ is input (step S602; none), the
そして、CPU 101は、画像処理部107を駆動して、取得した基本姿勢を表すボーン情報に基づいて、仮想空間に配置されるキャラクターの形状を求め、当該キャラクターを表す画像をRAM 103内に生成する(ステップS621)。画像の生成には、各種の3次元グラフィックスの技術を適用することができる。
Then, the
さらに、CPU 101は、垂直同期割込が生じるまで待機する(ステップS622)。この待機中には、他の各種の計算処理を、コルーチンとして並列に実行することも可能である。
Further, the
垂直同期割込が発生したら、CPU 101は、画像処理部107を駆動して、RAM 103内に生成した画像を、モニタ等の画面に表示して(ステップS623)、ステップS602に戻る。
When the vertical synchronization interrupt occurs, the
なお、上記制御フローでは、姿勢パラメータ値θと向きパラメータφの入力は、時間差をもってされることを想定している。ただし、これらが、単独で得られるほか、同時に得られるような態様もありうる。このような態様では、ステップS602において、姿勢パラメータ値θと向きパラメータφが同時に得られたことが判明した場合には、ステップS603〜ステップS608を実行した後、ステップS609〜ステップS619を続けて実行することとすれば良い。 In the control flow, it is assumed that the posture parameter value θ and the orientation parameter φ are input with a time difference. However, in addition to being obtained alone, there may be embodiments in which these are obtained simultaneously. In such an aspect, when it is determined in step S602 that the posture parameter value θ and the orientation parameter φ are obtained at the same time, step S603 to step S608 are executed, and then step S609 to step S619 are executed continuously. What should I do?
上記制御フローでは、キャラクター401の構えの姿勢と基本姿勢との間の移行や、各構えの姿勢の移行は瞬時に行われ、ユーザの意思が直ちに反映される。
In the control flow, the transition between the posture of the
このほか、各構えの姿勢の間の移行や、基本姿勢との間の移行が、時間の経過とともに次第に行われるようにしても良い。この際には、2つの姿勢の中間姿勢を求める上記の技術を適用することができる。 In addition, the transition between the postures of the respective postures and the transition between the basic postures may be gradually performed as time passes. In this case, the above technique for obtaining an intermediate posture between two postures can be applied.
すなわち、2つの姿勢の移行に要する時間を構えの姿勢パラメータ値の差などにより定める。なお、構えと基本姿勢との移行に要する時間長は、定数とすれば良い。 That is, the time required for the transition between the two postures is determined by the difference between the posture parameter values. Note that the time length required for the transition between the posture and the basic posture may be a constant.
そして、全移行に要する時間長を、現在の時点が内分する内分比を用いて、現時点の中間姿勢を求める。 Then, the current intermediate posture is obtained by using the internal ratio at which the current time point internally divides the time length required for the entire transition.
画面には、時間の経過とともに、中間姿勢を表示することによって、姿勢の変化が瞬時に行われるのではなく、時間の経過によって行われるようにすることができる。 By displaying the intermediate posture on the screen as time passes, the posture can be changed not only instantaneously but also over time.
なお、以上の説明では、姿勢ボーン情報は、完全に静止しているキャラクターの姿勢を表すものとしているが、平静時のキャラクターがほぼ同じ姿勢を保ちつつ呼吸をする際の微小な動きを表すアニメーション表示を行いたい場合には、姿勢ボーン情報について動作ボーン情報に相当する情報を用意し、同様の処理を行えば良い。 In the above description, the posture bone information represents the posture of a character that is completely stationary, but an animation that represents a minute movement when the character breathes while maintaining almost the same posture in a calm state. If display is desired, information corresponding to the motion bone information is prepared for the posture bone information, and the same processing may be performed.
この場合、あらかじめ、刀を構えた人間の呼吸の1周期分を、所定の時間間隔でモーションキャプチャする。 In this case, motion capture is performed at a predetermined time interval for one cycle of human breathing with a sword in advance.
そして、当該周期内の各時点におけるキャラクターのボーンの位置や向きを、モーションキャプチャされたデータから定める。そして、時間の経過に合わせて、各時点におけるボーンの位置や向きを適宜選択し、その位置や向きをブレンドする。 Then, the position and orientation of the character bone at each time point in the cycle are determined from the motion-captured data. Then, as the time passes, the position and orientation of the bone at each time point are appropriately selected, and the position and orientation are blended.
たとえば、刀を上段に構えたときの1呼吸分の姿勢ボーン情報と、刀を右中段に構えたときの1呼吸分の姿勢ボーン情報と、から、刀を右斜め上に構えたときの1呼吸分の姿勢ボーン情報を得るのである。 For example, from the posture bone information for one breath when holding the sword in the upper stage and the posture bone information for one breath when holding the sword in the middle right, 1 when the sword is held diagonally upward to the right It obtains posture bone information for breathing.
なお、姿勢ボーン情報の時間経過に伴う変化は、典型的には周期的な変化であるが、必ずしもこれに限られない。 The change of the posture bone information with the passage of time is typically a periodic change, but is not necessarily limited thereto.
また、姿勢パラメータ値や向きパラメータ値としては、上記の角度のみならず、キャラクターの姿勢を表す任意のスカラー量を採用することができる。 Further, as the posture parameter value and the orientation parameter value, not only the above angle but also any scalar amount representing the character's posture can be adopted.
このように、本実施形態によれば、キャラクターの2種類の動作からその中間の動作を生成して、その動作をとるキャラクターの様子を表す画像を生成することができる。 As described above, according to the present embodiment, an intermediate motion can be generated from two types of motions of a character, and an image representing the state of the character taking the motion can be generated.
なお、キャラクターを動作させる態様については、適宜省略することも可能である。 In addition, about the aspect which operates a character, it is also possible to abbreviate | omit suitably.
このほか、本実施形態では、ユーザとキャラクター401が相対するように画面に表示される例を考えている。しかしながら、キャラクター401が、ユーザが同じ向きを向くようにする場合もある。このときは、キャラクター401の背面が画面に表示されることになる。
In addition, in this embodiment, an example in which the user and the
この場合には、コントローラ105の操作と、キャラクター401の操作とが直観的に連動するように、姿勢パラメータ値θや向きパラメータ値φを計測する回転方向を設定すれば良い。
In this case, the rotation direction for measuring the posture parameter value θ and the orientation parameter value φ may be set so that the operation of the
上記実施形態では、動作ボーン情報は、時間経過にともなう各ボーンの相対的な向きの差分情報のみが指定されるものとしており、開始姿勢取得部310は、動作開始直前の姿勢ボーン情報を、そのまま、動作開始時の姿勢としていた。
In the above-described embodiment, only the difference information of the relative orientation of each bone over time is specified as the motion bone information, and the start
一方で、モーションキャプチャ時には、動作の開始時点の姿勢が定められていることがある。この姿勢を用いる場合には、姿勢ボーン情報に基づいて現在キャラクターがとっている姿勢と、動作ボーン情報に基づく動作開始時点の姿勢を補間する必要がある。 On the other hand, at the time of motion capture, the posture at the start of operation may be determined. When this posture is used, it is necessary to interpolate the posture currently taken by the character based on the posture bone information and the posture at the start of the motion based on the motion bone information.
本実施形態では、CPU 101により実現される開始姿勢取得部310が、この補間を行う。
In the present embodiment, the start
まず、姿勢パラメータ値θや向きパラメータ値φによって位置が大きく変動する代表点を考える。上記の例では、キャラクター401が持つ刀の先端403に、代表点を設定する。
First, a representative point whose position varies greatly depending on the posture parameter value θ and the orientation parameter value φ is considered. In the above example, a representative point is set at the
次に、2つの動作ボーン情報に指定される開始時点の姿勢を、上記と同様に、内分比C:Dでブレンドする。姿勢の内分比A:Bではなく、向きの内分比C:Dを採用するのは、当該開始時点の姿勢は、動作に係る姿勢だからである。ここで得られるのは、静止しているキャラクターの姿勢ボーン情報に相当する情報である。 Next, the posture at the start point specified by the two motion bone information is blended at the internal division ratio C: D as described above. The reason why the orientation internal ratio C: D is adopted instead of the posture internal ratio A: B is that the posture at the start time is the posture related to the motion. What is obtained here is information corresponding to the posture bone information of the stationary character.
そして、姿勢パラメータ値θに対して得られた姿勢ボーン情報における代表点の位置に、向きパラメータ値φに対して得られた動作の開始時点における代表点の位置を、近付けるように、動作開始時点の姿勢ボーン情報を補正する。補正の代表的な手法は、2通りある。 Then, the motion start time point is set so that the position of the representative point at the motion start time point obtained with respect to the orientation parameter value φ is brought close to the position of the representative point in the posture bone information obtained with respect to the posture parameter value θ Correct posture bone information. There are two typical correction methods.
第1の手法は、所定の拘束条件を採用したインバースキネマティクスを用いるものである。 The first method uses inverse kinematics that employs predetermined constraint conditions.
すなわち、刀の先端403を重ねるようにインバースキネマティクスの手法を用いる。インバースキネマティクスとは、ボーンの木構造を葉から根の方にたどりながら、各ボーンの位置や向きを修正していく技術であり、本例では、刀、刀を持っている手首、下腕、上腕、肩、背骨上部、腰のように、順にボーンの向きが補正されていく。
That is, the inverse kinematics method is used so that the
第2の手法は、キャラクターのボーンの連結点を1つだけ選び、そこで連結されている子ボーンの向きを補正する手法である。 The second method is a method of selecting only one connection point of the character bone and correcting the direction of the child bone connected there.
たとえば、キャラクターの臍付近の連結点を採用したときには、腰骨のボーンに対する背骨上部のボーンの相対的な向きを変化させる。 For example, when a connection point near the character's umbilicus is adopted, the relative orientation of the upper spine bone with respect to the hip bone is changed.
代表点の位置を近付けるためには、連結点から構えに基づく代表点に向かう半直線と、連結点から動作の開始時点に基づく代表点に向かう半直線と、が、重なるようにすれば良い。 In order to bring the position of the representative point closer, a half line from the connection point to the representative point based on the posture and a half line from the connection point to the representative point based on the start point of the operation should be overlapped.
すなわち、インバースキネマティクスでは、修正すべきボーンの向きの情報が多数となるが、補正結果がより一層滑らかになる。一方、ボーンの向きを1つだけ修正する手法では、計算が容易であり、実用上は不自然な動作とはならないことが、発明者の実験により判明している。 That is, in inverse kinematics, there is a large amount of information about the orientation of the bone to be corrected, but the correction result becomes even smoother. On the other hand, it has been proved by the inventors' experiment that the technique of correcting only one bone direction is easy to calculate and does not cause an unnatural operation in practice.
このように、本実施形態では、キャラクターの動作時の開始時点の姿勢があらかじめ用意されている場合に、キャラクターの静止時の姿勢と、キャラクターの動作時の開始時点の姿勢と、のずれを、簡易な計算によって、できるだけ小さくすることができるようになる。 As described above, in this embodiment, when the posture at the time of start of the character is prepared in advance, the deviation between the posture at the time of stationary of the character and the posture at the start of time of movement of the character is By simple calculation, it can be made as small as possible.
なお、上記実施形態のように、ボーンの向きの差分のみを動作ボーン情報として採用する場合には、本実施形態のような補正の処理は不要である。 In the case where only the difference in the bone direction is adopted as the motion bone information as in the above embodiment, the correction processing as in the present embodiment is unnecessary.
以上説明したように、本発明によれば、キャラクターの特定の姿勢や動作から任意の姿勢や動作を求めて、その画像を生成するのに好適な画像生成装置、画像生成方法、ならびに、これらをコンピュータにて実現するプログラムを提供することができる。 As described above, according to the present invention, an image generation apparatus, an image generation method, and a method suitable for generating an image by obtaining an arbitrary posture and movement from a specific posture and movement of a character. A program realized by a computer can be provided.
100 情報処理装置
101 CPU
102 ROM
103 RAM
104 インターフェース
105 コントローラ
106 外部メモリ
107 画像処理部
108 DVD−ROMドライブ
109 NIC
110 音声処理部
111 マイク
121 HD
201 ↑ボタン
202 ↓ボタン
203 ←ボタン
204 →ボタン
205 ○ボタン
206 ×ボタン
207 △ボタン
208 □ボタン
209 SELECTボタン
210 STARTボタン
211 ANALOGボタン
212 インジケータ
213 ジョイスティック
214 ジョイスティック
215 L1ボタン
216 L2ボタン
217 R1ボタン
218 R2ボタン
301 画像生成装置
302 記憶部
303 姿勢受付部
304 姿勢計算部
305 姿勢混合部
306 動作受付部
307 動作計算部
308 動作混合部
309 生成部
310 開始姿勢取得部
401 キャラクター
402 ボーン
403 刀の先端
404 中心点
405 鉛直下向きの線
406 中心点からスティックへ向かう線
501 鉛直上向きの線
502 刀の軌跡
651 スティック
652 基本位置
653 周縁内の位置
654 周縁
655 周縁内の位置
656 スティックの移動の軌跡
701 ボーン
702 ボーン
703 ボーン
711 ボーン同士がなす角
712 ボーン同士がなす角
100
102 ROM
103 RAM
104
110
201 ↑
Claims (11)
前記キャラクターが第1の姿勢をとるときの第1の姿勢ボーン情報が、第1の姿勢パラメータ値に対応付けて記憶され、当該キャラクターが第2の姿勢をとるときの第2の姿勢ボーン情報が、第2の姿勢パラメータ値に対応付けて記憶され、当該キャラクターが第1の向きに動作するときの第1の動作ボーン情報が、第1の向きパラメータ値に対応付けて記憶され、当該キャラクターが第1の向きに動作するときの第2の動作ボーン情報が、第2の向きパラメータ値に対応付けて記憶される記憶部、
前記キャラクターがとるべき姿勢を表す姿勢パラメータ値の入力を受け付ける姿勢受付部、
前記受け付けられた姿勢パラメータ値が、前記第1の姿勢パラメータ値と、前記第2の姿勢パラメータ値と、を内分する姿勢内分比を計算する姿勢計算部、
前記計算された姿勢内分比で、前記第1の姿勢ボーン情報と、前記第2の姿勢ボーン情報と、を、ブレンドすることにより、第3の姿勢ボーン情報を得る姿勢混合部、
前記キャラクターが動作すべき向きを表す向きパラメータ値の入力を受け付ける動作受付部、
前記受け付けられた向きパラメータ値が、前記第1の向きパラメータ値ならびに前記第2の向きパラメータ値を内分する向き内分比を計算する向き計算部、
前記計算された向き内分比で、前記第1の動作ボーン情報と、前記第2の動作ボーン情報と、を、ブレンドすることにより、第3の動作ボーン情報を得る変化混合部、
前記キャラクターを、前記得られた第3の姿勢ボーン情報により定められる姿勢から、前記得られた第3の動作ボーン情報により定められる動作で時間経過とともに動作させ、当該キャラクターが時間経過とともに形状を変化させる様子を表す動画像を生成する生成部
を備えることを特徴とする画像生成装置。 In order to determine the posture of a character having a plurality of bones connected to each other and the change in shape when the character moves, the posture bone information indicating the relative position and orientation of the bones and the bones An image generation device that generates an image of the character using motion bone information representing an amount of change in relative position and orientation with respect to time ,
The first posture bone information when the character takes the first posture is stored in association with the first posture parameter value, and the second posture bone information when the character takes the second posture is stored. , Stored in association with the second posture parameter value, and the first motion bone information when the character moves in the first orientation is stored in association with the first orientation parameter value. A storage unit in which second motion bone information when operating in the first direction is stored in association with the second direction parameter value ;
A posture accepting unit for receiving an input of a posture parameter value representing a posture to be taken by the character;
A posture calculation unit that calculates a posture internal ratio by which the received posture parameter value internally divides the first posture parameter value and the second posture parameter value;
A posture mixing unit that obtains third posture bone information by blending the first posture bone information and the second posture bone information with the calculated posture internal ratio.
An operation accepting unit that accepts an input of an orientation parameter value indicating an orientation in which the character should act;
A direction calculator that calculates a direction internal ratio that internally divides the received direction parameter value into the first direction parameter value and the second direction parameter value;
A change mixing unit that obtains third motion bone information by blending the first motion bone information and the second motion bone information at the calculated orientation ratio.
The character is moved over time from the posture determined by the obtained third posture bone information with the motion determined by the obtained third motion bone information, and the character changes shape with the passage of time. An image generation apparatus comprising: a generation unit that generates a moving image representing a state of the image generation.
前記複数のボーンは、各ボーンをノードとし、連結された2つのボーンのうち、一方のボーンを親ノードに、他方のボーンを子ノードに、それぞれ割り当てた木構造に階層化され、前記姿勢ボーン情報は、親ノードのボーン(以下「親ボーン」という。)に対する相対的な子ノードのボーン(以下「子ボーン」という。)の位置および向きを指定することにより、表現される
ことを特徴とする画像生成装置。 The image generation apparatus according to claim 1,
The plurality of bones are hierarchized into a tree structure in which each bone is a node and one of the two connected bones is assigned as a parent node and the other bone as a child node. Information is expressed by specifying the position and orientation of the bone of a child node (hereinafter referred to as “child bone”) relative to the bone of the parent node (hereinafter referred to as “parent bone”). An image generating device.
前記子ボーンの位置および向きは、前記親ボーンに固定された座標系において前記子ボーンが前記親ボーンに連結される連結点の座標、ならびに、当該座標系における前記子ボーンの向きを表すオイラー角もしくはクォータニオンにより表現され、
前記姿勢混合部は、前記第1の姿勢ボーン情報と、前記第2の姿勢ボーン情報と、において各々対応するボーンのオイラー角もしくはクォータニオンを前記計算された姿勢内分比で内分することによって、前記第3の姿勢ボーン情報を得る
ことを特徴とする画像生成装置。 The image generation apparatus according to claim 2,
The position and orientation of the child bone are the coordinates of the connection point at which the child bone is connected to the parent bone in the coordinate system fixed to the parent bone, and the Euler angle representing the orientation of the child bone in the coordinate system. Or expressed by quaternions,
The posture mixing unit internally divides Euler angles or quaternions of the corresponding bones in the first posture bone information and the second posture bone information by the calculated posture internal ratio, The third generation bone information is obtained.
前記キャラクターが動作を開始する時点の姿勢を定める第4の姿勢ボーン情報を取得する開始姿勢取得部をさらに備え、
前記生成部は、前記キャラクターを、前記取得された第4の姿勢ボーン情報により定められる姿勢から、前記得られた第3の動作ボーン情報により定められる動作で時間経過とともに動作させる
ことを特徴とする画像生成装置。 The image generation apparatus according to any one of claims 1 to 3 ,
A start posture acquisition unit for acquiring fourth posture bone information for determining a posture at which the character starts to move;
The generation unit is configured to cause the character to move with time from a posture determined by the acquired fourth posture bone information with an operation determined by the obtained third motion bone information. Image generation device.
前記開始姿勢取得部は、前記第1の動作ボーン情報に対応付けられる姿勢ボーン情報と、前記第2の動作ボーン情報に対応付けられる姿勢ボーン情報と、を、前記向き内分比でブレンドすることにより得られる第5の姿勢ボーン情報における前記代表点の位置が、前記第3の姿勢ボーン情報における前記代表点の位置にできるだけ近付くように、前記第5の姿勢ボーン情報を補正し、
前記開始姿勢取得部において、当該補正により得られた姿勢ボーン情報が、前記第4の姿勢ボーン情報として取得される
ことを特徴とする画像生成装置。 The image generation apparatus according to claim 4 , wherein a representative point is fixed to any one of a plurality of bones of the character, and the character starts to move in the motion bone information. Posture bone information representing the posture at the time of starting to be associated,
The start posture acquisition unit blends posture bone information associated with the first motion bone information and posture bone information associated with the second motion bone information at the orientation internal ratio. Correcting the fifth posture bone information so that the position of the representative point in the fifth posture bone information obtained by the method is as close as possible to the position of the representative point in the third posture bone information;
The starting posture acquisition unit acquires posture bone information obtained by the correction as the fourth posture bone information.
前記開始姿勢取得部は、所定の拘束条件を採用したインバースキネマティクスを用いて、前記第5の姿勢ボーン情報における前記代表点の位置を、前記第3の姿勢ボーン情報における前記代表点の位置に重ねることにより、前記補正を行う
ことを特徴とする画像生成装置。 The image generation apparatus according to claim 5 ,
The start posture acquisition unit uses the inverse kinematics adopting a predetermined constraint condition to change the position of the representative point in the fifth posture bone information to the position of the representative point in the third posture bone information. An image generation apparatus characterized by performing the correction by overlapping.
前記開始姿勢取得部は、前記キャラクターが有する複数のボーンのうち、いずれか2つの直接連結されるボーンの相対的な向きを変化させることにより、前記第5の姿勢ボーン情報における前記代表点の位置を、前記第3の姿勢ボーン情報における前記代表点の位置にできるだけ近付ける
ことを特徴とする画像生成装置。 The image generation apparatus according to claim 5 ,
The start posture acquisition unit changes the relative orientation of any two bones directly connected among the plurality of bones of the character, thereby changing the position of the representative point in the fifth posture bone information. As close as possible to the position of the representative point in the third posture bone information.
前記記憶部には、複数の姿勢パラメータ値のそれぞれに対応付けて姿勢ボーン情報が記憶され、
所定範囲内の位置がユーザにより指定されるコントローラにおいて、当該所定範囲の周縁に含まれる位置が指定されると、前記姿勢受付部は、当該所定範囲の中心位置から見た当該位置の向きを、前記姿勢パラメータ値の入力とし、
前記第1の姿勢パラメータ値ならびに前記第2の姿勢パラメータ値は、前記記憶部に記憶される複数の姿勢パラメータ値のうち、当該受け付けられた姿勢パラメータ値を直近に挟む2つの姿勢パラメータ値である
ことを特徴とする画像生成装置。 The image generation apparatus according to any one of claims 1 to 7 ,
In the storage unit, posture bone information is stored in association with each of a plurality of posture parameter values,
In a controller in which a position within a predetermined range is specified by the user, when a position included in the periphery of the predetermined range is specified, the posture receiving unit determines the orientation of the position viewed from the center position of the predetermined range, As an input of the posture parameter value,
The first posture parameter value and the second posture parameter value are two posture parameter values that sandwich the accepted posture parameter value among the plurality of posture parameter values stored in the storage unit. An image generation apparatus characterized by that.
前記記憶部には、複数の姿勢パラメータ値のそれぞれに対応付けて姿勢ボーン情報が記憶され、複数の向きパラメータ値のそれぞれに対応付けて動作ボーン情報が記憶され、
所定範囲内の位置がユーザにより指定されるコントローラにおいて、当該所定範囲の周縁に含まれる第1の位置から、当該所定範囲の周縁以外を通過して、当該所定範囲の周縁に含まれる第2の位置へ、当該指定される位置が移動すると、前記姿勢受付部は、当該所定範囲の中心位置から見た当該第1の位置の向きを、前記姿勢パラメータ値の入力とし、前記動作受付部は、当該第1の位置から見た当該第2の位置の向きを、前記向きパラメータ値の入力とし、
前記第1の姿勢パラメータ値ならびに前記第2の姿勢パラメータ値は、前記記憶部に記憶される複数の姿勢パラメータ値のうち、当該受け付けられた姿勢パラメータ値を直近に挟む2つの姿勢パラメータ値である
前記第1の向きパラメータ値ならびに前記第2の向きパラメータ値は、前記記憶部に記憶される複数の移動パラメータ値のうち、当該受け付けられた移動パラメータ値を直近に挟む2つの移動パラメータ値である
ことを特徴とする画像生成装置。 The image generation apparatus according to any one of claims 1 to 7 ,
The storage unit stores posture bone information in association with each of a plurality of posture parameter values, stores motion bone information in association with each of a plurality of orientation parameter values,
In the controller in which the position within the predetermined range is specified by the user, the second position included in the peripheral edge of the predetermined range passes from the first position included in the peripheral edge of the predetermined range and passes outside the peripheral edge of the predetermined range. When the designated position moves to a position, the posture receiving unit uses the orientation of the first position viewed from the center position of the predetermined range as the input of the posture parameter value, and the motion receiving unit The direction of the second position viewed from the first position is used as an input of the direction parameter value,
The first posture parameter value and the second posture parameter value are two posture parameter values that sandwich the accepted posture parameter value among the plurality of posture parameter values stored in the storage unit. The first direction parameter value and the second direction parameter value are two movement parameter values that sandwich the accepted movement parameter value among the plurality of movement parameter values stored in the storage unit. An image generation apparatus characterized by that.
前記姿勢受付部が、前記キャラクターがとるべき姿勢を表す姿勢パラメータ値の入力を受け付ける姿勢受付工程、
前記姿勢計算部が、前記受け付けられた姿勢パラメータ値が、前記第1の姿勢パラメータ値と、前記第2の姿勢パラメータ値と、を内分する姿勢内分比を計算する姿勢計算工程、
前記姿勢混合部が、前記計算された姿勢内分比で、前記第1の姿勢ボーン情報と、前記第2の姿勢ボーン情報と、を、ブレンドすることにより、第3の姿勢ボーン情報を得る姿勢混合工程、
前記動作受付部が、前記キャラクターが動作すべき向きを表す向きパラメータ値の入力を受け付ける動作受付工程、
前記向き計算部が、前記受け付けられた向きパラメータ値が、前記第1の向きパラメータ値ならびに前記第2の向きパラメータ値を内分する向き内分比を計算する向き計算工程、
前記変化混合部が、前記計算された向き内分比で、前記第1の動作ボーン情報と、前記第2の動作ボーン情報と、を、ブレンドすることにより、第3の動作ボーン情報を得る変化混合工程、
前記生成部が、前記キャラクターを、前記得られた第3の姿勢ボーン情報により定められる姿勢から、前記得られた第3の動作ボーン情報により定められる動作で時間経過とともに動作させ、当該キャラクターが時間経過とともに形状を変化させる様子を表す動画像を生成する生成工程
を備えることを特徴とする画像生成方法。 In order to determine the posture of a character having a plurality of bones connected to each other and the change in shape when the character moves, the posture bone information indicating the relative position and orientation of the bones and the bones An image generation method executed by an image generation apparatus that generates an image of the character using motion bone information representing a change amount of a relative position and direction with respect to time. The image generation apparatus includes a storage unit A posture receiving unit, a posture calculating unit, a posture mixing unit, a motion receiving unit, a direction calculating unit, a change mixing unit, and a generating unit, and the storage unit includes a first when the character takes a first posture. The posture bone information is stored in association with the first posture parameter value, and the second posture bone information when the character takes the second posture is the second Stored in association with the orientation parameter values,
A posture receiving step in which the posture receiving unit receives an input of a posture parameter value representing a posture to be taken by the character;
A posture calculation step in which the posture calculation unit calculates a posture internal ratio in which the received posture parameter value internally divides the first posture parameter value and the second posture parameter value;
The posture in which the posture mixing unit obtains the third posture bone information by blending the first posture bone information and the second posture bone information with the calculated posture internal ratio. Mixing process,
An operation accepting step for accepting an input of an orientation parameter value representing an orientation in which the character should act,
An orientation calculation step in which the orientation calculation unit calculates an orientation ratio in which the accepted orientation parameter value internally divides the first orientation parameter value and the second orientation parameter value;
A change in which the change mixing unit obtains third action bone information by blending the first action bone information and the second action bone information at the calculated orientation ratio. Mixing process,
The generation unit causes the character to move from the posture determined by the obtained third posture bone information with the passage of time according to the motion determined by the obtained third motion bone information. An image generation method comprising: a generation step of generating a moving image representing a state of changing a shape with progress .
前記キャラクターが第1の姿勢をとるときの第1の姿勢ボーン情報が、第1の姿勢パラメータ値に対応付けて記憶され、当該キャラクターが第2の姿勢をとるときの第2の姿勢ボーン情報が、第2の姿勢パラメータ値に対応付けて記憶され、当該キャラクターが第1の向きに動作するときの第1の動作ボーン情報が、第1の向きパラメータ値に対応付けて記憶され、当該キャラクターが第1の向きに動作するときの第2の動作ボーン情報が、第2の向きパラメータ値に対応付けて記憶される記憶部、
前記キャラクターがとるべき姿勢を表す姿勢パラメータ値の入力を受け付ける姿勢受付部、
前記受け付けられた姿勢パラメータ値が、前記第1の姿勢パラメータ値と、前記第2の姿勢パラメータ値と、を内分する姿勢内分比を計算する姿勢計算部、
前記計算された姿勢内分比で、前記第1の姿勢ボーン情報と、前記第2の姿勢ボーン情報と、を、ブレンドすることにより、第3の姿勢ボーン情報を得る姿勢混合部、
前記キャラクターが動作すべき向きを表す向きパラメータ値の入力を受け付ける動作受付部、
前記受け付けられた向きパラメータ値が、前記第1の向きパラメータ値ならびに前記第2の向きパラメータ値を内分する向き内分比を計算する向き計算部、
前記計算された向き内分比で、前記第1の動作ボーン情報と、前記第2の動作ボーン情報と、を、ブレンドすることにより、第3の動作ボーン情報を得る変化混合部、
前記キャラクターを、前記得られた第3の姿勢ボーン情報により定められる姿勢から、前記得られた第3の動作ボーン情報により定められる動作で時間経過とともに動作させ、当該キャラクターが時間経過とともに形状を変化させる様子を表す動画像を生成する生成部
として機能させることを特徴とするプログラム。 The computer, in order to determine the change in shape when character orientation and where the character with bones which are connected a plurality of mutually operate, posture bones information and the plurality representing the relative position and orientation of the plurality of bones A program for causing an image generation apparatus to generate an image of the character using motion bone information representing a change amount of the relative position and orientation of the bone with respect to time. ,
The first posture bone information when the character takes the first posture is stored in association with the first posture parameter value, and the second posture bone information when the character takes the second posture is stored. , Stored in association with the second posture parameter value, and the first motion bone information when the character moves in the first orientation is stored in association with the first orientation parameter value. A storage unit in which second motion bone information when operating in the first direction is stored in association with the second direction parameter value ;
A posture accepting unit for receiving an input of a posture parameter value representing a posture to be taken by the character;
A posture calculation unit that calculates a posture internal ratio by which the received posture parameter value internally divides the first posture parameter value and the second posture parameter value;
A posture mixing unit that obtains third posture bone information by blending the first posture bone information and the second posture bone information with the calculated posture internal ratio.
An operation accepting unit that accepts an input of an orientation parameter value indicating an orientation in which the character should act;
A direction calculator that calculates a direction internal ratio that internally divides the received direction parameter value into the first direction parameter value and the second direction parameter value;
A change mixing unit that obtains third motion bone information by blending the first motion bone information and the second motion bone information at the calculated orientation ratio.
The character is moved over time from the posture determined by the obtained third posture bone information with the motion determined by the obtained third motion bone information, and the character changes shape with the passage of time. A program characterized by functioning as a generation unit that generates a moving image representing the state of the image .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009217798A JP4976473B2 (en) | 2009-09-18 | 2009-09-18 | Image generating apparatus, image generating method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009217798A JP4976473B2 (en) | 2009-09-18 | 2009-09-18 | Image generating apparatus, image generating method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011065578A JP2011065578A (en) | 2011-03-31 |
JP4976473B2 true JP4976473B2 (en) | 2012-07-18 |
Family
ID=43951723
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009217798A Active JP4976473B2 (en) | 2009-09-18 | 2009-09-18 | Image generating apparatus, image generating method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4976473B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108970112A (en) * | 2018-07-05 | 2018-12-11 | 腾讯科技(深圳)有限公司 | The method of adjustment and device of posture, storage medium, electronic device |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013179641A1 (en) * | 2012-05-29 | 2013-12-05 | 株式会社カプコン | Computer device, recording medium, and method for controlling computer device |
JP5635161B2 (en) * | 2012-08-01 | 2014-12-03 | 株式会社スクウェア・エニックス | Character display device |
JP6431265B2 (en) * | 2014-03-17 | 2018-11-28 | 株式会社セルシス | Object motion generation method, program, and storage medium |
JP6310517B2 (en) * | 2016-08-18 | 2018-04-11 | 株式会社カプコン | Game program and game system |
CN111640170B (en) * | 2020-04-17 | 2023-08-01 | 深圳市集慧技术有限公司 | Bone animation generation method, device, computer equipment and storage medium |
WO2022137487A1 (en) * | 2020-12-25 | 2022-06-30 | 三菱電機株式会社 | Information processing device, presentation system, presentation assistance method, and program |
CN114035683B (en) * | 2021-11-08 | 2024-03-29 | 百度在线网络技术(北京)有限公司 | User capturing method, apparatus, device, storage medium and computer program product |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10134207A (en) * | 1996-10-30 | 1998-05-22 | Hudson Soft Co Ltd | Method for generating animation data, and recording medium for the same method |
JP4187182B2 (en) * | 2001-07-27 | 2008-11-26 | 株式会社バンダイナムコゲームス | Image generation system, program, and information storage medium |
JP4775989B2 (en) * | 2001-08-23 | 2011-09-21 | 株式会社バンダイナムコゲームス | Image generation system, program, and information storage medium |
-
2009
- 2009-09-18 JP JP2009217798A patent/JP4976473B2/en active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108970112A (en) * | 2018-07-05 | 2018-12-11 | 腾讯科技(深圳)有限公司 | The method of adjustment and device of posture, storage medium, electronic device |
US12023585B2 (en) | 2018-07-05 | 2024-07-02 | Tencent Technology (Shenzhen) Company Limited | Posture adjustment method and apparatus, storage medium, and electronic device |
Also Published As
Publication number | Publication date |
---|---|
JP2011065578A (en) | 2011-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4976473B2 (en) | Image generating apparatus, image generating method, and program | |
JP4519883B2 (en) | Character display device, character display method, and program | |
JP2006122241A (en) | Game device and game program | |
US20100120537A1 (en) | Game Device, Game Processing Method, Information Recording Medium, and Program | |
JP2008096776A (en) | Display device, display method, and program | |
JP4037889B2 (en) | Image generating apparatus, image generating method, and program | |
JP4187748B2 (en) | Image generating apparatus, image generating method, and program | |
JP2002216146A (en) | Display object generating method in information processor, program to execute and control the same and recording medium in which the same program is stored | |
JP2002140730A (en) | Method and device for generating animation, readable recording medium recorded with animation generation program and video game device | |
JP3564440B2 (en) | Moving image generation program, moving image generation method and apparatus | |
JP4815521B2 (en) | Image processing apparatus, image processing method, and program | |
JP4199764B2 (en) | Skin control point position calculation device, calculation method, and program | |
JP4815471B2 (en) | Audio processing apparatus, audio processing method, and program | |
JP4563461B2 (en) | Image generating apparatus, image generating method, and program | |
JP4287479B2 (en) | Image generating apparatus, image generating method, and program | |
JP4408910B2 (en) | Character display device, character display method, and program | |
JP5279744B2 (en) | GAME DEVICE, GAME PROCESSING METHOD, AND PROGRAM | |
JP4244352B2 (en) | Image generating apparatus, image generating method, and program | |
JP5133380B2 (en) | GAME DEVICE, GAME DEVICE CONTROL METHOD, AND PROGRAM | |
JP5222978B2 (en) | GAME DEVICE, GAME DEVICE CONTROL METHOD, AND PROGRAM | |
WO2024214494A1 (en) | Control device, control method, and control program | |
JP4162798B2 (en) | Method for deriving continuous rotation angle from continuous rotation matrix, and storage medium storing program related to the method | |
JP5043919B2 (en) | Image generating apparatus, image generating method, and program | |
JP5255610B2 (en) | GAME DEVICE, GAME DEVICE CONTROL METHOD, AND PROGRAM | |
JP5559855B2 (en) | GAME DEVICE, GAME DEVICE CONTROL METHOD, AND PROGRAM |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110708 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111114 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111122 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20111205 |
|
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: 20120410 |
|
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: 20120412 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4976473 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150420 Year of fee payment: 3 |
|
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 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
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 |