JP7005294B2 - Information processing device, operation control program and operation control method - Google Patents

Information processing device, operation control program and operation control method Download PDF

Info

Publication number
JP7005294B2
JP7005294B2 JP2017215400A JP2017215400A JP7005294B2 JP 7005294 B2 JP7005294 B2 JP 7005294B2 JP 2017215400 A JP2017215400 A JP 2017215400A JP 2017215400 A JP2017215400 A JP 2017215400A JP 7005294 B2 JP7005294 B2 JP 7005294B2
Authority
JP
Japan
Prior art keywords
character
center
gravity
ground
foot
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
Application number
JP2017215400A
Other languages
Japanese (ja)
Other versions
JP2019087074A (en
Inventor
唯信 隆藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Koei Tecmo Games Co Ltd
Original Assignee
Koei Tecmo Games Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Koei Tecmo Games Co Ltd filed Critical Koei Tecmo Games Co Ltd
Priority to JP2017215400A priority Critical patent/JP7005294B2/en
Publication of JP2019087074A publication Critical patent/JP2019087074A/en
Application granted granted Critical
Publication of JP7005294B2 publication Critical patent/JP7005294B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)

Description

本発明は、情報処理装置、動作制御プログラム及び動作制御方法に関する。 The present invention relates to an information processing apparatus, an operation control program, and an operation control method.

アニメーションの生成に、インバースキネマティクス(IK)の技術が利用されている(例えば、特許文献1を参照)。インバースキネマティクスでは、親子関係のボーンに対してルートとエンドの組み合わせを与え、ボーンの先端にエンドのボーン位置を一致させることで、その間の姿勢の自動補正を可能にする。また、インバースキネマティクス(IK)について、特にキャラクタの全身の関節を駆動するフルボディIKにより、アニメーションを生成する技術が提案されている。 Inverse kinematics (IK) technology is used to generate animations (see, for example, Patent Document 1). Inverse kinematics gives a combination of root and end to a parent-child relationship bone, and by matching the bone position of the end with the tip of the bone, it enables automatic correction of the posture between them. Further, regarding inverse kinematics (IK), a technique for generating animation by a full-body IK that drives joints of the whole body of a character has been proposed.

特開2002-175541号公報Japanese Unexamined Patent Publication No. 2002-175541

しかしながら、インバースキネマティクス及びフルボディIKの手法を利用したアニメーションの生成では、所定のルールに基づき足の踏み替えを行う。このため、例えば数秒後に足を踏み替えるというルールが設定されている場合には、自動補正後のキャラクタの姿勢が崩れていても数秒経過後に足の踏み替えを行う。この結果、キャラクタの動作が不自然になる場合がある。 However, in the generation of animation using the methods of inverse kinematics and full body IK, the foot is changed based on a predetermined rule. Therefore, for example, when the rule of stepping on the foot after a few seconds is set, the foot is changed after a few seconds even if the posture of the character after the automatic correction is lost. As a result, the movement of the character may become unnatural.

上記課題に対して、一側面では、本発明は、キャラクタの動作をよりスムーズに行うことを目的とする。 In response to the above problems, one aspect of the present invention is to make the movement of the character smoother.

上記課題を解決するために、一の態様によれば、キャラクタの動作に基づき、該キャラクタが地面に接地する領域と該キャラクタの重心位置とを算出する算出部と、算出した前記キャラクタが地面に接地する領域と前記キャラクタの重心位置とに基づき、該キャラクタの足を踏み替えるか否かを判定する判定部と、キャラクタの現在の動作から、所定時間後の該キャラクタの動作を予測する動作制御部と、を有し、前記算出部は、予測した前記所定時間後の該キャラクタの動作に基づき、該キャラクタが地面に接地する領域を算出し、
前記算出部は、前記キャラクタが地面に接地する領域として前記キャラクタの身体の接地位置の最外地点を結ぶ多角形を算出し、前記判定部は、予測した前記所定時間後の前記キャラクタの重心位置に対応する地面上の重心位置が、該多角形の領域から外れたときに該キャラクタの足を踏み替えるタイミングであると判定し、該キャラクタの直前の動作に基づき該キャラクタの足を踏み替えさせ、前記キャラクタの重心位置に対応する地面上の重心位置が、該多角形の領域から外れていないときには該キャラクタの足を踏み替えるタイミングでないと判定し、該キャラクタの足の踏み替えを行わない、情報処理装置が提供される。
In order to solve the above problem, according to one aspect, a calculation unit that calculates a region where the character touches the ground and a position of the center of gravity of the character based on the movement of the character, and the calculated character are placed on the ground. A determination unit that determines whether or not to step on the character's foot based on the ground contact area and the position of the center of gravity of the character, and motion control that predicts the character's motion after a predetermined time from the character's current motion. The calculation unit calculates the area where the character touches the ground based on the predicted movement of the character after the predetermined time.
The calculation unit calculates a polygon connecting the outermost points of the contact position of the character's body as a region where the character touches the ground, and the determination unit calculates the predicted position of the center of gravity of the character after the predetermined time. It is determined that the position of the center of gravity on the ground corresponding to is the timing to step on the character's foot when it deviates from the polygonal region, and the character's foot is stepped on based on the movement immediately before the character. When the position of the center of gravity on the ground corresponding to the position of the center of gravity of the character does not deviate from the area of the polygon, it is determined that it is not the timing to step on the foot of the character, and the foot of the character is not stepped on. An information processing device is provided.

一の側面によれば、キャラクタの動作をよりスムーズに行うことができる。 According to one aspect, the movement of the character can be performed more smoothly.

一実施形態に係る情報処理機器の機能構成の一例を示す図。The figure which shows an example of the functional structure of the information processing apparatus which concerns on one Embodiment. 一実施形態に係る情報処理機器のハードウェア構成の一例を示す図。The figure which shows an example of the hardware composition of the information processing apparatus which concerns on one Embodiment. 従来の動作制御方法の一例を示すフローチャート。A flowchart showing an example of a conventional operation control method. 従来の動作制御方法を説明するための図。The figure for demonstrating the conventional operation control method. 第1実施形態に係る動作制御方法の一例を示すフローチャート。The flowchart which shows an example of the operation control method which concerns on 1st Embodiment. 第1実施形態に係る動作制御方法を説明するための図。The figure for demonstrating the operation control method which concerns on 1st Embodiment. 一実施形態に係る支持多角形の一例を示す図。The figure which shows an example of the support polygon which concerns on one Embodiment. 第2実施形態に係る動作制御方法の一例を示すフローチャート。The flowchart which shows an example of the operation control method which concerns on 2nd Embodiment. 第2実施形態に係る動作制御方法を説明するための図。The figure for demonstrating the operation control method which concerns on 2nd Embodiment.

以下、本発明を実施するための形態について図面を参照して説明する。なお、本明細書及び図面において、実質的に同一の構成については、同一の符号を付することにより重複した説明を省く。 Hereinafter, embodiments for carrying out the present invention will be described with reference to the drawings. In the present specification and the drawings, substantially the same configurations are designated by the same reference numerals to omit duplicate explanations.

[情報処理装置]
本発明の一実施形態に係る情報処理装置10は、フルボディIKの技術を利用したアニメーションを生成する機能を有し、更にキャラクタの動作をよりスムーズに行うことが可能な装置である。本実施形態に係る情報処理装置10は、タブレット型端末、パーソナルコンピューター、スマートフォン、携帯電話、PDA(Personal Digital Assistants)、ゲーム機器、ゲーム携帯機器等のあらゆる電子機器にて実現され得る。情報処理装置10は、HMD(Head Mount Display)やFMD(Face Mount Display)等のウェアラブル表示デバイスであってもよい。
[Information processing device]
The information processing device 10 according to the embodiment of the present invention has a function of generating an animation using the technology of full body IK, and is a device capable of performing a smoother movement of a character. The information processing device 10 according to the present embodiment can be realized by any electronic device such as a tablet terminal, a personal computer, a smartphone, a mobile phone, a PDA (Personal Digital Assistants), a game device, and a game mobile device. The information processing device 10 may be a wearable display device such as an HMD (Head Mount Display) or an FMD (Face Mount Display).

[情報処理装置の機能構成]
まず、本実施形態に係る情報処理装置10の機能構成の一例について、図1を参照しながら説明する。本実施形態に係る情報処理装置10は、受付部9、ゲーム実行部11、動作制御部12、算出部13、判定部14、画像処理部15、サウンド処理部16、表示部17、音出力部18、通信部19及び記憶部31を有する。
[Functional configuration of information processing device]
First, an example of the functional configuration of the information processing apparatus 10 according to the present embodiment will be described with reference to FIG. The information processing device 10 according to the present embodiment includes a reception unit 9, a game execution unit 11, an operation control unit 12, a calculation unit 13, a determination unit 14, an image processing unit 15, a sound processing unit 16, a display unit 17, and a sound output unit. It has 18, a communication unit 19, and a storage unit 31.

受付部9は、プレイヤのゲームに対する操作を受け付ける。例えば、受付部9は、コントローラやスティック等の入力装置を用いて、ゲームに対してプレイヤが実行した入力操作を受け付ける。例えば、ゲームに対する操作には、プレイヤキャラクタを動作させるための操作が挙げられる。また、受付部9は、後述されるキャラクタの足の踏み替え動作を制御する対象キャラクタとなるキャラクタ情報を受け付ける。対象キャラクタとしては、プレイヤキャラクタやその他のメインとなるキャラクタ等が挙げられる。 The reception unit 9 receives operations for the player's game. For example, the reception unit 9 receives an input operation performed by the player for the game by using an input device such as a controller or a stick. For example, the operation for the game includes an operation for operating the player character. In addition, the reception unit 9 receives character information that is a target character that controls the foot change operation of the character, which will be described later. Examples of the target character include a player character and other main characters.

ゲーム実行部11は、記憶部31に記憶されたゲーム処理プログラム35を情報処理装置10のCPUに実行させることで、所定のゲームを実行する。動作制御部12は、記憶部31に記憶された動作制御プログラム34を情報処理装置10のCPUに実行させることで、受け付けたキャラクタの足の踏み替え動作をスムーズに行わせる機能を実現する。動作制御部12は、キャラクタの現在の動作から数秒後のキャラクタの動作を予測する。記憶部31には、動作制御部12が予測したキャラクタの予測動作情報33が記憶される。 The game execution unit 11 executes a predetermined game by causing the CPU of the information processing device 10 to execute the game processing program 35 stored in the storage unit 31. The motion control unit 12 realizes a function of smoothly performing the stepping motion of the received character by causing the CPU of the information processing apparatus 10 to execute the motion control program 34 stored in the storage unit 31. The motion control unit 12 predicts the motion of the character several seconds after the current motion of the character. The storage unit 31 stores the predicted motion information 33 of the character predicted by the motion control unit 12.

算出部13は、キャラクタの動作に基づき、該キャラクタが地面に接地する領域と該キャラクタの重心位置とを算出する。判定部14は、算出したキャラクタが地面に接地する領域と前記キャラクタの重心位置とに基づき、該キャラクタの足を踏み替えるか否かを判定する。 The calculation unit 13 calculates the region where the character touches the ground and the position of the center of gravity of the character based on the movement of the character. The determination unit 14 determines whether or not to step on the foot of the character based on the calculated area where the character touches the ground and the position of the center of gravity of the character.

例えば算出部13は、予測動作情報33に基づき予測した所定時間後のキャラクタの動作に基づき、キャラクタが地面に接地する領域を算出する。例えば、算出部13は、キャラクタが地面に接地する領域としてキャラクタの足や手などの身体パーツの接地位置の最外を結ぶ支持多角形を算出する。判定部14は、算出部13が算出したキャラクタの重心位置に対応する地面上の重心位置が、前記支持多角形の領域から外れる場合、キャラクタの足を踏み替えると判定するか、キャラクタが転倒すると判定する。記憶部31には、キャラクタが足を踏み替える又は転倒するという動作のいずれかを行うかを判定するための閾値Th32が記憶されている。 For example, the calculation unit 13 calculates a region where the character touches the ground based on the movement of the character after a predetermined time predicted based on the prediction movement information 33. For example, the calculation unit 13 calculates a support polygon connecting the outermost positions of body parts such as the character's feet and hands as a region where the character touches the ground. When the position of the center of gravity on the ground corresponding to the position of the center of gravity of the character calculated by the calculation unit 13 deviates from the area of the support polygon, the determination unit 14 determines that the character's foot is stepped on or the character falls. judge. The storage unit 31 stores a threshold value Th32 for determining whether the character performs an operation of stepping on a foot or falling over.

画像処理部15は、ゲーム実行部11から画像出力の指示命令が出力されると、指示命令に応じたキャラクタの画像を生成し、表示部17に出力する。これにより、表示部17は、ゲームの進行状況に応じたフィールド上のキャラクタの画像を表示する。また、ゲームの実行中、画像処理部15は、判定部14により判定された結果に応じて、キャラクタの足の踏み替え等を行うようにキャラクタの画像を生成する。 When the game execution unit 11 outputs an image output instruction command, the image processing unit 15 generates an image of the character corresponding to the instruction command and outputs the image to the display unit 17. As a result, the display unit 17 displays an image of the character on the field according to the progress of the game. Further, during the execution of the game, the image processing unit 15 generates an image of the character so as to change the foot of the character according to the result determined by the determination unit 14.

サウンド処理部16は、ゲーム実行部11からサウンド出力の指示命令が出力されると、指示命令に応じた音を生成し、音出力部18に出力する。これにより、音出力部18は、ゲームの進行状況に応じた音声や効果音等のサウンドを出力する。通信部19は、他のゲーム機器等の情報処理装置と通信する。 When the game execution unit 11 outputs a sound output instruction command, the sound processing unit 16 generates a sound corresponding to the instruction command and outputs the sound to the sound output unit 18. As a result, the sound output unit 18 outputs sounds such as voices and sound effects according to the progress of the game. The communication unit 19 communicates with an information processing device such as another game device.

[情報処理装置のハードウェア構成]
次に、本発明の一実施形態に係る情報処理装置10のハードウェア構成の一例について、図2を参照しながら説明する。本実施形態に係る情報処理装置10は、CPU(Central Processing Unit)21、ROM(Read Only Memory)22、RAM(Random Access Memory)23及びHDD(Hard Disk Drive)24を有する。また、本実施形態に係る情報処理装置10は、グラフィックカード25、外部I/F(インターフェース)26、通信I/F27、入力I/F28、ディスプレイ29及びスピーカ30を有している。各部は、それぞれがバスで相互に接続されている。
[Hardware configuration of information processing device]
Next, an example of the hardware configuration of the information processing apparatus 10 according to the embodiment of the present invention will be described with reference to FIG. The information processing device 10 according to the present embodiment includes a CPU (Central Processing Unit) 21, a ROM (Read Only Memory) 22, a RAM (Random Access Memory) 23, and an HDD (Hard Disk Drive) 24. Further, the information processing apparatus 10 according to the present embodiment has a graphic card 25, an external I / F (interface) 26, a communication I / F27, an input I / F28, a display 29, and a speaker 30. Each part is connected to each other by a bus.

ROM22は、電源を切っても記憶されているプログラム及びデータを保持することができる不揮発性の半導体メモリである。RAM23は、プログラムやデータを一時保持する揮発性の半導体メモリである。HDD24は、プログラムやデータを格納する不揮発性の記憶装置である。HDD24に格納されるプログラムには、情報処理装置10の全体を制御する基本ソフトウェア及びアプリケーションソフトウェアがある。HDD24には、各種のデータベースが格納されてもよい。閾値Th32、予測動作情報33、動作制御プログラム34及びゲーム処理プログラム35は、ROM22、RAM23又はHDD24に格納されてもよい。また、これらの情報は、ネットワークを介して情報処理装置10と接続可能なクラウド上の記憶装置に記憶されてもよい。記憶部31の機能は、ROM22,RAM23、HDD24又はネットワークを介して情報処理装置10と接続可能なクラウド上の記憶装置により実現され得る。 The ROM 22 is a non-volatile semiconductor memory capable of holding stored programs and data even when the power is turned off. The RAM 23 is a volatile semiconductor memory that temporarily holds programs and data. The HDD 24 is a non-volatile storage device for storing programs and data. The programs stored in the HDD 24 include basic software and application software that control the entire information processing apparatus 10. Various databases may be stored in the HDD 24. The threshold value Th32, the predicted operation information 33, the operation control program 34, and the game processing program 35 may be stored in the ROM 22, RAM 23, or HDD 24. Further, these pieces of information may be stored in a storage device on the cloud that can be connected to the information processing device 10 via the network. The function of the storage unit 31 can be realized by a storage device on the cloud that can be connected to the information processing device 10 via the ROM 22, RAM 23, HDD 24, or a network.

CPU21は、プログラムやデータをRAM23に読み出し、上記各種処理を実行することで、情報処理装置10の全体の制御や情報処理装置10に搭載された機能を実現する。具体的には、ゲーム実行部11の機能は、情報処理装置10にインストールされたゲーム処理プログラム35がCPU21に実行させるゲーム処理により実現され得る。また、動作制御部12、算出部13及び判定部14の機能は、情報処理装置10にインストールされた動作制御プログラム34がCPU21に実行させる動作制御処理により実現され得る。 The CPU 21 reads a program or data into the RAM 23 and executes the above-mentioned various processes to realize overall control of the information processing apparatus 10 and functions installed in the information processing apparatus 10. Specifically, the function of the game execution unit 11 can be realized by the game processing that the game processing program 35 installed in the information processing apparatus 10 causes the CPU 21 to execute. Further, the functions of the operation control unit 12, the calculation unit 13, and the determination unit 14 can be realized by the operation control process that the operation control program 34 installed in the information processing apparatus 10 causes the CPU 21 to execute.

外部I/F26は、情報処理装置10を外部装置に接続するインターフェースである。外部装置には、記憶媒体26aなどがある。これにより、情報処理装置10は、外部I/F26を介して記憶媒体26aからのデータの読み取り及び記憶媒体26aへのデータの書き込みを行う。記憶媒体26aの一例としては、CD(Compact Disk)、DVD(Digital Versatile Disk)、SDメモリカード(SD Memory card)又はUSBメモリ(Universal Serial Bus memory)等が挙げられる。 The external I / F 26 is an interface for connecting the information processing device 10 to the external device. The external device includes a storage medium 26a and the like. As a result, the information processing apparatus 10 reads the data from the storage medium 26a and writes the data to the storage medium 26a via the external I / F 26. Examples of the storage medium 26a include a CD (Compact Disk), a DVD (Digital Versatile Disk), an SD memory card (SD Memory card), a USB memory (Universal Serial Bus memory), and the like.

例えば、情報処理装置10には、動作制御プログラム34及びゲーム処理プログラム35等のゲームプログラムが格納された記憶媒体26aを装着することが可能である。これらのプログラムは、外部I/F26により読み出されて、RAM23に読み込まれる。 For example, the information processing apparatus 10 can be equipped with a storage medium 26a in which a game program such as an operation control program 34 and a game processing program 35 is stored. These programs are read by the external I / F 26 and read into the RAM 23.

CPU21は、RAM23に読み込まれた上記の各種プログラムを処理し、グラフィックカード25にゲームの進行状況に対応する画像の出力を指示する。グラフィックカード25は、指示に従い画面に表示するフィールド上のキャラクタ等の画像処理を行い、キャラクタ等の画像をディスプレイ29に描画させる。グラフィックカード25から出力される画像の一フレーム時間は、例えば1/30~1/60秒である。グラフィックカード25は、フレーム単位で1枚の画像の描画を実行する。すなわち、一秒間に30回~60回のフレームの画像が描画される。画像処理部15の機能は、例えばグラフィックカード25により実現され得る。 The CPU 21 processes the above-mentioned various programs read into the RAM 23, and instructs the graphic card 25 to output an image corresponding to the progress of the game. The graphic card 25 performs image processing of a character or the like on a field to be displayed on the screen according to an instruction, and causes the display 29 to draw an image of the character or the like. The frame time of the image output from the graphic card 25 is, for example, 1/30 to 1/60 seconds. The graphic card 25 draws one image in frame units. That is, the image of the frame is drawn 30 to 60 times per second. The function of the image processing unit 15 can be realized by, for example, a graphic card 25.

また、CPU21は、RAM23に読み込まれた上記の各種プログラムを処理し、ゲームの進行に応じてスピーカ30から所定の音を出力させる。サウンド処理部16の機能は、例えばCPU21がRAM23に読み込まれた上記の各種プログラムを実行することで実現され得る。音出力部18の機能は、例えばスピーカ30により実現され得る。 Further, the CPU 21 processes the above-mentioned various programs read into the RAM 23, and outputs a predetermined sound from the speaker 30 according to the progress of the game. The function of the sound processing unit 16 can be realized, for example, by the CPU 21 executing the above-mentioned various programs read into the RAM 23. The function of the sound output unit 18 can be realized by, for example, the speaker 30.

ディスプレイ29はタッチパネルを搭載していてもよい。これにより、コントローラ1を用いずに入力操作を行うことができる。この場合、タッチパネルにより検出されたタッチ位置の入力情報は、RAM23に格納され、CPU21はRAM23に格納された入力情報に基づき各種の演算処理を実行してもよい。表示部17の機能は、例えばディスプレイ29により実現され得る。 The display 29 may be equipped with a touch panel. As a result, the input operation can be performed without using the controller 1. In this case, the input information of the touch position detected by the touch panel is stored in the RAM 23, and the CPU 21 may execute various arithmetic processes based on the input information stored in the RAM 23. The function of the display unit 17 may be realized by, for example, the display 29.

通信I/F27は、情報処理装置10をネットワークに接続するインターフェースである。また、通信I/F27は、アンテナを有する通信ユニットを介して、他のゲーム機器と通信を行う機能を有してもよい。通信部19の機能は、例えば通信I/F27により実現され得る。 The communication I / F 27 is an interface for connecting the information processing device 10 to the network. Further, the communication I / F 27 may have a function of communicating with another game device via a communication unit having an antenna. The function of the communication unit 19 can be realized by, for example, the communication I / F27.

入力I/F28は、コントローラ1に接続するインターフェースである。コントローラ1は、操作ボタン2及び方向キー3を有する。プレイヤは、操作ボタン2及び方向キー3を操作することでプレイヤキャラクタを所定の方向に移動させて、攻撃等の所定の動作を行わせることができる。入力I/F28は、プレイヤがコントローラ1を用いて行った入力操作に基づく入力情報をRAM23に格納させる。CPU21は、RAM23に格納された入力情報に基づきプレイヤキャラクタの動作に関する各種の演算処理を実行する。受付部9の機能は、例えば入力I/F28により実現され得る。 The input I / F 28 is an interface connected to the controller 1. The controller 1 has an operation button 2 and a direction key 3. By operating the operation buttons 2 and the direction keys 3, the player can move the player character in a predetermined direction to perform a predetermined operation such as an attack. The input I / F 28 stores the input information based on the input operation performed by the player using the controller 1 in the RAM 23. The CPU 21 executes various arithmetic processes related to the operation of the player character based on the input information stored in the RAM 23. The function of the reception unit 9 can be realized by, for example, the input I / F 28.

[従来の動作制御方法]
以上に説明した構成の本実施形態に係るキャラクタの動作制御方法について説明する前に、従来のキャラクタの動作制御方法の一例について、図3及び図4を参照して簡単に説明する。図3は、従来のキャラクタの動作制御方法の一例を示すフローチャートである。図4は、従来のキャラクタの動作制御方法を説明するための図である。
[Conventional operation control method]
Before explaining the character motion control method according to the present embodiment having the configuration described above, an example of the conventional character motion control method will be briefly described with reference to FIGS. 3 and 4. FIG. 3 is a flowchart showing an example of a conventional character motion control method. FIG. 4 is a diagram for explaining a conventional operation control method for a character.

図3及び図4に示す従来のキャラクタの動作制御方法の一例では、予めキャラクタの動作を規定する設計データを作成しておく必要がある。キャラクタの設計データは、インバースキネマティクス(IK)及びキャラクタの全身の関節を駆動するフルボディIKを用いて作成することができる。フルボディIKでは、エンドのボーンを指定した座標に一致させ、親子関係と関節の可動域等の制約条件に基づき、他の骨の姿勢を自動的に計算する。例えば、図4に一例を示すように、設計データのB3のエンド(先端)を指定の座標に固定した場合、その親に当たるB2、B1、および反対側の足であるB4や手の骨B5、B6(骨名は仮)の姿勢を制約条件から自動的に計算することで姿勢の自動補正を可能とする。 In an example of the conventional character motion control method shown in FIGS. 3 and 4, it is necessary to create design data that defines the character motion in advance. Character design data can be created using inverse kinematics (IK) and full body IK that drives the joints of the character's entire body. In full body IK, the end bones are matched to the specified coordinates, and the postures of other bones are automatically calculated based on the constraints such as the parent-child relationship and the range of motion of the joints. For example, as shown in FIG. 4, when the end (tip) of B3 of the design data is fixed to the specified coordinates, B2 and B1 corresponding to the parent, B4 and the bone B5 of the opposite foot, By automatically calculating the posture of B6 (bone name is provisional) from the constraint conditions, the posture can be automatically corrected.

設計データは、ゲーム開発中にデザイナーが作成するキャラクタの骨構造のデータである。この設計データに対して、図3に一例を示す従来のキャラクタの動作制御方法により補正した後の動作が点線で示す補正データである。 The design data is data on the bone structure of the character created by the designer during game development. The operation after the design data is corrected by the conventional character operation control method shown in FIG. 3 as an example is the correction data shown by the dotted line.

図3を参照して簡単に説明すると、まず、本処理を実行する制御部は、キャラクタの設計データを取得する(ステップS10)。次に、制御部は、キャラクタの両足をロックする制御を行う(ステップS12)。図4の例では、実線のボーンB3及びボーンB4がロックされる。 Briefly with reference to FIG. 3, first, the control unit that executes this process acquires the design data of the character (step S10). Next, the control unit controls to lock both feet of the character (step S12). In the example of FIG. 4, the solid bones B3 and B4 are locked.

次に、制御部は、ルート(モデルの基準位置)の移動を開始するように制御する(ステップS14)。制御部は、設定時間(例えば数秒)が経過したかを判定し(ステップS16)、設定時間が経過した後、遊脚のロックを解除する(ステップS18)。図4の例では、この時点で遊脚のボーンB4のロックが解除され、点線で示すボーンB4の位置に足SLを踏み替える。この時点では、支持脚はB3である。 Next, the control unit controls to start the movement of the route (reference position of the model) (step S14). The control unit determines whether the set time (for example, several seconds) has elapsed (step S16), and after the set time has elapsed, unlocks the swing leg (step S18). In the example of FIG. 4, at this point, the free leg bone B4 is unlocked, and the foot SL is stepped on to the position of the bone B4 shown by the dotted line. At this point, the support leg is B3.

次に、制御部は、設定時間(例えば数秒)が経過したかを判定し(ステップS20)、設定時間が経過した後、支持脚のロックを解除する(ステップS22)。図4の例では、この時点で支持脚のボーンB3のロックが解除され、点線で示すボーンB3に繋がる足MLが踏み出される。その後、ステップS12に戻り、ステップS12~S22の処理が繰り返される。これにより、キャラクタの姿勢の自動補正が行われる。 Next, the control unit determines whether the set time (for example, several seconds) has elapsed (step S20), and after the set time has elapsed, unlocks the support legs (step S22). In the example of FIG. 4, at this point, the bone B3 of the support leg is unlocked, and the foot ML connected to the bone B3 shown by the dotted line is stepped on. After that, the process returns to step S12, and the processes of steps S12 to S22 are repeated. As a result, the posture of the character is automatically corrected.

しかしながら、従来の技術では、遊脚のロックを解除する時間、支持脚のロックを解除する時間が予め設定されている。このため、自動補正後のキャラクタの姿勢が崩れていても、設定時間が経過する度に強制的に足の踏み替えが行われる。この結果、キャラクタの姿勢と動作が調和せず、不自然な動作となる場合がある。 However, in the conventional technique, the time for unlocking the swing leg and the time for unlocking the support leg are preset. Therefore, even if the posture of the character after the automatic correction is broken, the foot is forcibly changed every time the set time elapses. As a result, the posture and movement of the character may not be in harmony, resulting in unnatural movement.

これに対して、本実施形態に係る動作制御方法では、予め足の踏みかえ時間を決めずに、キャラクタの身体の重心が、キャラクタの身体パーツの接地位置を囲む支持多角形の領域を外れたら足を踏み替える。以下、本実施形態に係る動作制御方法について説明する。
<第1実施形態>
[第1実施形態に係る動作制御方法]
第1実施形態に係るキャラクタの動作制御方法の一例について、図5~図7を参照して説明する。図5は、第1実施形態に係るキャラクタの動作制御処理の一例を示すフローチャートである。図6は、第1実施形態に係るキャラクタの動作制御方法を説明するための図である。図7は、一実施形態に係る支持多角形の一例を示す図である。
On the other hand, in the motion control method according to the present embodiment, if the center of gravity of the character's body deviates from the area of the support polygon surrounding the ground contact position of the character's body parts without determining the stepping time in advance. Step on your feet. Hereinafter, the operation control method according to the present embodiment will be described.
<First Embodiment>
[Operation control method according to the first embodiment]
An example of the character motion control method according to the first embodiment will be described with reference to FIGS. 5 to 7. FIG. 5 is a flowchart showing an example of character motion control processing according to the first embodiment. FIG. 6 is a diagram for explaining a character motion control method according to the first embodiment. FIG. 7 is a diagram showing an example of a support polygon according to an embodiment.

図5の処理が開始されると、情報処理装置10の受付部9は、本動作制御処理の対象キャラクタとなるキャラクタ情報を受け付け、動作制御部12は、対象キャラクタの現在の動作を特定する(ステップS30)。対象キャラクタは、ゲーム開始前又はゲーム実行中にゲーム実行部11により特定されてもよいし、プレイヤにより特定されてもよい。以下、対象キャラクタを単に「キャラクタ」という。 When the process of FIG. 5 is started, the reception unit 9 of the information processing apparatus 10 receives the character information to be the target character of the operation control process, and the operation control unit 12 specifies the current operation of the target character ( Step S30). The target character may be specified by the game execution unit 11 before the start of the game or during the execution of the game, or may be specified by the player. Hereinafter, the target character is simply referred to as a "character".

次に、動作制御部12は、特定したキャラクタの現在の動作に基づき、数秒後のキャラクタの動作を予測する(ステップS32)。ここで、予測する動作は、例えば2,3秒~10秒又はそれ以上であってもよいし、2秒よりも短い時間であってもよい。 Next, the motion control unit 12 predicts the motion of the character after a few seconds based on the current motion of the identified character (step S32). Here, the predicted operation may be, for example, a few seconds to 10 seconds or more, or may be a time shorter than 2 seconds.

次に、算出部13は、予測したキャラクタの動作から、地面に接地しているキャラクタの身体パーツの最外地点を結ぶ支持多角形を算出する(ステップS34)。 Next, the calculation unit 13 calculates a support polygon connecting the outermost points of the body parts of the character that are in contact with the ground from the predicted movement of the character (step S34).

第1実施形態に係る動作制御と支持多角形の一例を示す図6を参照すると、図6(a)及び図6(b)の例に示す点線のキャラクタがキャラクタの現在の動作であり、実線のキャラクタが現在の動作から予測したキャラクタの動作の一例である。予測したキャラクタの動作において、地面に接地している足の最外地点を結ぶ多角形が支持多角形である。図6(a)及び図6(b)では、両足ML,SLの最外地点を結ぶ多角形が支持多角形Arとして算出される。 Referring to FIG. 6 showing an example of motion control and support polygon according to the first embodiment, the dotted line character shown in the examples of FIGS. 6 (a) and 6 (b) is the current motion of the character, and is a solid line. This is an example of the character's behavior predicted from the current behavior of the character. In the predicted character movement, the polygon connecting the outermost points of the foot touching the ground is the support polygon. In FIGS. 6 (a) and 6 (b), the polygon connecting the outermost points of both feet ML and SL is calculated as the support polygon Ar.

ただし、支持多角形は、足ML,SLの接地位置に基づき算出する場合に限らず、キャラクタの身体パーツの接地位置の最外地点を結ぶ多角形であればよい。例えば、図7に示す例では、算出部13は、キャラクタの身体パーツの接地位置として、地面に接地している両足ML,SLの最外地点や、地面に接地している両手Hと両足ML,SLの最外地点を結ぶ支持多角形Arを算出する。 However, the support polygon is not limited to the case of calculating based on the ground contact position of the foot ML and SL, and may be a polygon connecting the outermost points of the ground contact position of the character's body parts. For example, in the example shown in FIG. 7, the calculation unit 13 sets the contact positions of the body parts of the character as the outermost points of the two-foot ML and SL that are in contact with the ground, and the two-hand H and both-foot ML that are in contact with the ground. , Calculate the support polygon Ar connecting the outermost points of SL.

上記の例の他、足が折れていたら、キャラクタの足と膝の地面への接地位置に基づき支持多角形が算出される。カンガルーのようにしっぽが長い動物では、足としっぽの地面への接地位置に基づき支持多角形を算出するようにしてもよい。 In addition to the above example, if the leg is broken, the support polygon is calculated based on the contact position of the character's leg and knee with the ground. For animals with long tails, such as kangaroos, the support polygon may be calculated based on the position of the paw and tail on the ground.

図5に戻り、次に、算出部13は、キャラクタの重心を算出する(ステップS36)。キャラクタの重心の計算方法の一例としては、腕、頭等の身体パーツの重さが予め設定されていて、各身体パーツの重さとそのパーツの位置とを乗算し、すべての身体パーツについての重さとそのパーツの位置との乗算結果から重心位置Gを算出する。ただし、キャラクタの重心の計算方法としては、これに限らず、公知の方法を使用することができる。例えば前記計算方法により算出したキャラクタの重心位置Gに慣性力を考慮し、最終的なキャラクタの重心Gを算出してもよい。 Returning to FIG. 5, the calculation unit 13 then calculates the center of gravity of the character (step S36). As an example of how to calculate the center of gravity of a character, the weight of body parts such as arms and head is preset, and the weight of each body part is multiplied by the position of that part, and the weight of all body parts is calculated. The center of gravity position G is calculated from the multiplication result between the arm and the position of the part. However, the method for calculating the center of gravity of the character is not limited to this, and a known method can be used. For example, the final center of gravity G of the character may be calculated by considering the inertial force in the position G of the center of gravity of the character calculated by the above calculation method.

次に、判定部14は、算出した重心位置Gに対する地面上の重心位置GLが支持多角形Arの領域内にあるかを判定する(ステップS38)。重心位置GLは、算出した重心位置Gに対する地面上の位置、つまり、算出した重心位置Gの座標が(x、z、y)で示される場合、重心位置GLは、地面上の座標(x、0、y)で示される位置である。 Next, the determination unit 14 determines whether the center of gravity position GL on the ground with respect to the calculated center of gravity position G is within the region of the support polygon Ar (step S38). The center of gravity position GL is the position on the ground with respect to the calculated center of gravity position G, that is, when the coordinates of the calculated center of gravity position G are indicated by (x, z, y), the center of gravity position GL is the coordinates on the ground (x, It is a position indicated by 0, y).

判定部14は、算出した重心位置Gに対する地面上の重心位置GLが、支持多角形Arの領域内の場合、そのまま本処理を終了する。例えば、図6(a)の例のように、重心位置GLが支持多角形Arの領域の範囲内である場合、キャラクタの足の踏み替えは行われない。 When the center of gravity position GL on the ground with respect to the calculated center of gravity position G is within the region of the support polygon Ar, the determination unit 14 ends the present process as it is. For example, as in the example of FIG. 6A, when the center of gravity position GL is within the range of the region of the support polygon Ar, the foot of the character is not changed.

一方、判定部14は、算出した重心位置Gに対する地面上の重心位置GLが、支持多角形Arの領域から外れる場合、キャラクタの足を踏み替え(ステップS40)、本処理を終了する。例えば、図6(b)の例のように、重心位置GLが支持多角形Arの領域から外れる場合、キャラクタの支持脚B2の足SLを固定させ、支持脚B2に対して遊脚B1の足MLの踏み替えが行われ、これにより、足MLが点線の位置に移動する。 On the other hand, when the center of gravity position GL on the ground with respect to the calculated center of gravity position G deviates from the region of the support polygon Ar, the determination unit 14 steps on the character's foot (step S40) and ends this process. For example, when the center of gravity position GL deviates from the region of the support polygon Ar as in the example of FIG. 6B, the foot SL of the support leg B2 of the character is fixed, and the foot of the free leg B1 is fixed to the support leg B2. The ML is stepped on, which causes the foot ML to move to the dotted line position.

従来のキャラクタの動作制御では、予め足の踏み替えを所定時間毎に行うため、キャラクタの身体のバランスが崩れていなくても足の踏み替えを行う。これに対して、本実施形態に係る動作制御方法によれば、キャラクタのバランスが崩れていなければ踏み替えは行われず、バランスが崩れていたときだけキャラクタの足の踏み替えが行われる。これにより、キャラクタの動作を不自然でなく、スムーズに描画することができる。これにより、プレイヤは、より臨場感のあるゲームを楽しむことができる。 In the conventional character motion control, the foot is changed in advance at predetermined time intervals, so that the foot is changed even if the character's body is not out of balance. On the other hand, according to the motion control method according to the present embodiment, the stepping is not performed unless the balance of the character is lost, and the foot of the character is stepped only when the balance is lost. As a result, the movement of the character can be drawn smoothly without being unnatural. As a result, the player can enjoy the game with a more realistic feeling.

また、本実施形態に係る動作制御方法によれば、予測したキャラクタの動作に対して足の踏み替え動作を行うか否かをリアルタイムに判定し、判定結果に基づきリアルタイムにキャラクタの足の踏み替えを行う。このため、予め沢山の動作用の設計データを作成する手間が省ける。これにより、キャラクタのアニメーション作成に関する開発時間やメンテナンス時間を短縮することができる。
<第2実施形態>
[第2実施形態に係る動作制御方法]
次に、第2実施形態に係るキャラクタの動作制御方法の一例について、図8及び図9を参照して説明する。図8は、第2実施形態に係る動作制御方法の一例を示すフローチャートである。図9は、第2実施形態に係る動作制御方法を説明するための図である。
Further, according to the motion control method according to the present embodiment, it is determined in real time whether or not the foot stepping motion is performed for the predicted character motion, and the character's foot stepping is performed in real time based on the determination result. I do. Therefore, it is possible to save the trouble of creating a lot of design data for operation in advance. This makes it possible to reduce the development time and maintenance time for creating character animations.
<Second Embodiment>
[Operation control method according to the second embodiment]
Next, an example of the character motion control method according to the second embodiment will be described with reference to FIGS. 8 and 9. FIG. 8 is a flowchart showing an example of the operation control method according to the second embodiment. FIG. 9 is a diagram for explaining the operation control method according to the second embodiment.

図9の処理が開始されると、ステップS30~ステップS38の処理が行われる。ステップS30~ステップS38の処理は、図5に示す同ステップ番号の処理と同一であるため、ここでの説明は省略する。 When the process of FIG. 9 is started, the processes of steps S30 to S38 are performed. Since the processing of steps S30 to S38 is the same as the processing of the same step number shown in FIG. 5, the description here will be omitted.

ステップS38において、判定部14は、算出した重心位置Gに対する地面上の重心位置GLが支持多角形Arの領域内にあるかを判定した結果、地面上の重心位置GLが、支持多角形Arの領域内の場合、そのまま本処理を終了する。 In step S38, the determination unit 14 determines whether the center of gravity position GL on the ground with respect to the calculated center of gravity position G is within the region of the support polygon Ar, and as a result, the center of gravity position GL on the ground is the support polygon Ar. If it is in the area, this process ends as it is.

一方、判定部14は、地面上の重心位置GLが、支持多角形Arの領域から外れる場合、地面上の重心位置GLが支持多角形Arの境界から閾値Thよりもさらに離れているかを判定する(ステップS42)。判定部14は、地面上の重心位置GLが支持多角形Arの領域の最も近くから閾値Th以下の位置にある場合、キャラクタの足を踏み替え(ステップS40)、本処理を終了する。例えば、図9の例のように、重心位置GLの一例である地面上の重心位置GL1が支持多角形Arの領域の、重心位置GL1の最も近くから距離P1だけ離れている場合、距離P1が閾値Th以下である場合、キャラクタの遊脚側の足の踏み替えが行われる。 On the other hand, when the center of gravity position GL on the ground deviates from the region of the support polygon Ar, the determination unit 14 determines whether the center of gravity position GL on the ground is further away from the boundary of the support polygon Ar than the threshold value Th. (Step S42). When the center of gravity position GL on the ground is at a position equal to or less than the threshold value Th from the closest to the region of the support polygon Ar, the determination unit 14 steps on the character's foot (step S40) and ends this process. For example, as in the example of FIG. 9, when the center of gravity position GL1 on the ground, which is an example of the center of gravity position GL, is separated by the distance P1 from the nearest of the center of gravity position GL1 in the region of the support polygon Ar, the distance P1 is When it is equal to or less than the threshold value Th, the foot on the free leg side of the character is changed.

一方、ステップS42において、判定部14は、地面上の重心位置GLが支持多角形Arの最も近くから閾値Thよりも離れている場合、キャラクタを転倒させるように制御し(ステップS44)、本処理を終了する。例えば、図9の例のように、重心位置GLの一例である地面上の重心位置GL2が支持多角形Arの領域の、重心位置GL2の最も近くから距離P2だけ離れている場合、距離P2が閾値Thよりも大きい場合、キャラクタを転倒させる。なお、算出部13は、例えば、各頂点の対角線の交点等を支持多角形Arの中心点Oとし、中心点Oから地面上の重心位置GLまでの線上の支持多角形Arの領域外の長さを求め、その長さを重心位置GLからの距離としてもよい。 On the other hand, in step S42, the determination unit 14 controls the character to tip over when the center of gravity position GL on the ground is farther than the threshold value Th from the nearest support polygon Ar (step S44), and this process is performed. To finish. For example, as in the example of FIG. 9, when the center of gravity position GL2 on the ground, which is an example of the center of gravity position GL, is separated from the nearest of the center of gravity position GL2 by the distance P2 in the region of the support polygon Ar, the distance P2 is If it is larger than the threshold Th, the character is overturned. In the calculation unit 13, for example, the intersection of the diagonal lines of each vertex is set as the center point O of the support polygon Ar, and the length outside the region of the support polygon Ar on the line from the center point O to the center of gravity position GL on the ground. The length may be obtained and the length may be used as the distance from the center of gravity position GL.

本実施形態に係る動作制御方法によれば、地面上の重心位置GLが支持多角形Arの領域から外れた場合、キャラクタの身体のバランスが崩れていると判定し、キャラクタの遊脚側の足を踏み替えるか又はキャラクタを転倒させるかのいずれかの動作を行う。一方、地面上の重心位置GLが支持多角形Arの領域内の場合、キャラクタの身体のバランスが崩れていないと判定し、足の踏み替えを行わない。これにより、キャラクタの身体の状態に応じてキャラクタの転倒又は足の踏み替を行うか否かを判定することで、キャラクタの動作をよりリアルでスムーズに行うことができる。 According to the motion control method according to the present embodiment, when the center of gravity position GL on the ground deviates from the region of the supporting polygon Ar, it is determined that the character's body is out of balance, and the foot on the free leg side of the character. Either step on or overturn the character. On the other hand, when the center of gravity position GL on the ground is within the region of the supporting polygon Ar, it is determined that the balance of the character's body is not lost, and the foot is not changed. As a result, it is possible to perform the movement of the character more realistically and smoothly by determining whether or not the character falls or the foot is changed according to the physical condition of the character.

また、本実施形態に係る動作制御方法によれば、予測した動作に対して足の踏み替え動作を行うか否かをリアルタイムに判定し、判定結果に基づきキャラクタの足の踏み替え又は転倒を行う。このため、予め設計データを作成する手間が省け、キャラクタのアニメーション作成に関する開発時間を短縮することができる。 Further, according to the motion control method according to the present embodiment, it is determined in real time whether or not the foot stepping motion is performed for the predicted motion, and the character's foot stepping or falling is performed based on the determination result. .. Therefore, it is possible to save the trouble of creating design data in advance and shorten the development time for creating character animation.

本実施形態に係る動作制御方法は、いかなるキャラクタにも使用することができる。例えば、人等の2足歩行を行う動物のキャラクタや4足歩行を行う動物のキャラクタに使用することができる。また、多足の昆虫のキャラクタに使用してもよい。 The motion control method according to this embodiment can be used for any character. For example, it can be used for a character of an animal such as a person who walks on two legs or a character of an animal which walks on four legs. It may also be used for multi-legged insect characters.

なお、判定部14は、キャラクタが2足歩行の場合、該キャラクタの支持脚に対して遊脚となる足を踏み替えるか否かを判定する。一方、判定部14は、キャラクタが4足歩行の場合、該キャラクタの支持脚に対して遊脚となる前足及び後足の少なくともいずれかを踏み替えるか否かを判定する。 When the character is bipedal, the determination unit 14 determines whether or not to step on the foot that becomes the free leg with respect to the support leg of the character. On the other hand, when the character is walking on four legs, the determination unit 14 determines whether or not at least one of the forefoot and the hindfoot, which are the swing legs, is stepped on the supporting leg of the character.

また、キャラクタの足や手等の大きさは、支持多角形Arの面積に反映され、キャラクタの動作速度は、重心位置Gの算出結果や予測したキャラクタの動作の算出結果に反映される。この結果、キャラクタの身体パーツの大きさや動作速度に応じて、足の踏み替えや転倒を行うかの判断をリアルタイムに行うことで、体格や動作の異なるキャラクタに応じて、異なるタイミングに足を踏み替え又は転倒の動作を行うことで、キャラクタ毎によりスムーズな動作を行うことができる。 Further, the size of the character's feet, hands, etc. is reflected in the area of the support polygon Ar, and the movement speed of the character is reflected in the calculation result of the center of gravity position G and the calculation result of the predicted movement of the character. As a result, by making a real-time determination of whether to step on or fall according to the size and movement speed of the character's body parts, the foot is stepped on at different timings according to the characters with different physiques and movements. By performing the operation of changing or tipping over, a smoother operation can be performed for each character.

以上、情報処理装置、動作制御プログラム及び動作制御方法を上記実施形態により説明したが、本発明にかかる情報処理装置、動作制御プログラム及び動作制御方法は上記実施形態に限定されるものではなく、本発明の範囲内で種々の変形及び改良が可能である。上記複数の実施形態に記載された事項は、矛盾しない範囲で組み合わせることができる。 Although the information processing apparatus, the motion control program and the motion control method have been described above by the above-described embodiment, the information processing apparatus, the motion control program and the motion control method according to the present invention are not limited to the above-described embodiment. Various modifications and improvements are possible within the scope of the invention. The matters described in the above-mentioned plurality of embodiments can be combined within a consistent range.

9 受付部
10 情報処理装置
11 ゲーム実行部
12 動作制御部
13 算出部
14 判定部
15 画像処理部
16 サウンド処理部
17 表示部
18 音出力部
19 通信部
31 記憶部
34 動作制御プログラム
35 ゲーム処理プログラム
Ar 支持多角形
G 重心位置
GL 地面上の重心位置
9 Reception unit 10 Information processing device 11 Game execution unit 12 Operation control unit 13 Calculation unit 14 Judgment unit 15 Image processing unit 16 Sound processing unit 17 Display unit 18 Sound output unit 19 Communication unit 31 Storage unit 34 Operation control program 35 Game processing program Ar Supporting polygon G Center of gravity position GL Position of center of gravity on the ground

Claims (6)

キャラクタの動作に基づき、該キャラクタが地面に接地する領域と該キャラクタの重心位置とを算出する算出部と、
算出した前記キャラクタが地面に接地する領域と前記キャラクタの重心位置とに基づき、該キャラクタの足を踏み替えるか否かを判定する判定部と、
キャラクタの現在の動作から、所定時間後の該キャラクタの動作を予測する動作制御部と、を有し、
前記算出部は、予測した前記所定時間後の該キャラクタの動作に基づき、該キャラクタが地面に接地する領域を算出し、
前記算出部は、前記キャラクタが地面に接地する領域として前記キャラクタの身体の接地位置の最外地点を結ぶ多角形を算出し、
前記判定部は、予測した前記所定時間後の前記キャラクタの重心位置に対応する地面上の重心位置が、該多角形の領域から外れたときに該キャラクタの足を踏み替えるタイミングであると判定し、該キャラクタの直前の動作に基づき該キャラクタの足を踏み替えさせ、
前記キャラクタの重心位置に対応する地面上の重心位置が、該多角形の領域から外れていないときには該キャラクタの足を踏み替えるタイミングでないと判定し、該キャラクタの足の踏み替えを行わない、情報処理装置。
A calculation unit that calculates the area where the character touches the ground and the position of the center of gravity of the character based on the movement of the character.
A determination unit that determines whether or not to step on the character's foot based on the calculated area where the character touches the ground and the position of the center of gravity of the character.
It has a motion control unit that predicts the motion of the character after a predetermined time from the current motion of the character.
The calculation unit calculates a region where the character touches the ground based on the predicted movement of the character after the predetermined time.
The calculation unit calculates a polygon connecting the outermost points of the ground contact position of the character's body as a region where the character touches the ground.
The determination unit determines that it is the timing to step on the character's foot when the position of the center of gravity on the ground corresponding to the predicted position of the center of gravity of the character after the predetermined time deviates from the polygonal region. , The character's foot is changed based on the action immediately before the character,
When the position of the center of gravity on the ground corresponding to the position of the center of gravity of the character does not deviate from the polygonal region, it is determined that it is not the timing to step on the foot of the character, and the foot of the character is not stepped. Processing equipment.
前記判定部は、前記地面上の重心位置が前記多角形の領域から所定の閾値よりも離れている場合、前記キャラクタの足を踏み替える代わりに、該キャラクタを転倒させると判定する、
請求項に記載の情報処理装置。
When the position of the center of gravity on the ground is farther than a predetermined threshold value from the polygonal region, the determination unit determines that the character is toppled instead of stepping on the foot of the character.
The information processing apparatus according to claim 1 .
前記判定部は、前記キャラクタが2足歩行の場合、該キャラクタの支持脚に対して遊脚となる足を踏み替えるか否かを判定する、
請求項1又は2に記載の情報処理装置。
When the character is bipedal, the determination unit determines whether or not to step on the foot that becomes the free leg with respect to the support leg of the character.
The information processing apparatus according to claim 1 or 2 .
前記判定部は、前記キャラクタが4足歩行の場合、該キャラクタの支持脚に対して遊脚となる前足及び後足の少なくともいずれかを踏み替えるか否かを判定する、
請求項1~のいずれか一項に記載の情報処理装置。
When the character is walking on four legs, the determination unit determines whether or not at least one of the forefoot and the hindfoot, which are swing legs, is stepped on the supporting leg of the character.
The information processing apparatus according to any one of claims 1 to 3 .
キャラクタの動作に基づき、該キャラクタが地面に接地する領域と該キャラクタの重心位置とを算出し、
算出した前記キャラクタが地面に接地する領域と前記キャラクタの重心位置とに基づき、該キャラクタの足を踏み替えるか否かを判定し、
キャラクタの現在の動作から、所定時間後の該キャラクタの動作を予測し、
予測した前記所定時間後の該キャラクタの動作に基づき、該キャラクタが地面に接地する領域を算出し、
前記キャラクタが地面に接地する領域として前記キャラクタの身体の接地位置の最外地点を結ぶ多角形を算出し、
予測した前記所定時間後の前記キャラクタの重心位置に対応する地面上の重心位置が、該多角形の領域から外れたときに該キャラクタの足を踏み替えるタイミングであると判定し、該キャラクタの直前の動作に基づき該キャラクタの足を踏み替えさせ、
前記キャラクタの重心位置に対応する地面上の重心位置が、該多角形の領域から外れていないときには該キャラクタの足を踏み替えるタイミングでないと判定し、該キャラクタの足の踏み替えを行わない、
処理をコンピュータに実行させる動作制御プログラム。
Based on the movement of the character, the area where the character touches the ground and the position of the center of gravity of the character are calculated.
Based on the calculated area where the character touches the ground and the position of the center of gravity of the character, it is determined whether or not to step on the character's foot .
From the current movement of the character, the movement of the character after a predetermined time is predicted, and the movement of the character is predicted.
Based on the predicted movement of the character after the predetermined time, the area where the character touches the ground is calculated.
A polygon connecting the outermost points of the grounding position of the character's body is calculated as an area where the character touches the ground.
It is determined that the position of the center of gravity on the ground corresponding to the predicted position of the center of gravity of the character after the predetermined time is the timing to step on the character's foot when it deviates from the area of the polygon, and immediately before the character. The character's foot is changed based on the movement of
When the position of the center of gravity on the ground corresponding to the position of the center of gravity of the character does not deviate from the polygonal region, it is determined that it is not the timing to step on the foot of the character, and the foot of the character is not stepped on.
An operation control program that causes a computer to execute processing.
キャラクタの動作に基づき、該キャラクタが地面に接地する領域と該キャラクタの重心位置とを算出し、
算出した前記キャラクタが地面に接地する領域と前記キャラクタの重心位置とに基づき、該キャラクタの足を踏み替えるか否かを判定し、
キャラクタの現在の動作から、所定時間後の該キャラクタの動作を予測し、
予測した前記所定時間後の該キャラクタの動作に基づき、該キャラクタが地面に接地する領域を算出し、
前記キャラクタが地面に接地する領域として前記キャラクタの身体の接地位置の最外地点を結ぶ多角形を算出し、
予測した前記所定時間後の前記キャラクタの重心位置に対応する地面上の重心位置が、該多角形の領域から外れたときに該キャラクタの足を踏み替えるタイミングであると判定し、該キャラクタの直前の動作に基づき該キャラクタの足を踏み替えさせ、
前記キャラクタの重心位置に対応する地面上の重心位置が、該多角形の領域から外れていないときには該キャラクタの足を踏み替えるタイミングでないと判定し、該キャラクタの足の踏み替えを行わない、
ステップをコンピュータが実行する動作制御方法。
Based on the movement of the character, the area where the character touches the ground and the position of the center of gravity of the character are calculated.
Based on the calculated area where the character touches the ground and the position of the center of gravity of the character, it is determined whether or not to step on the character's foot .
From the current movement of the character, the movement of the character after a predetermined time is predicted, and the movement of the character is predicted.
Based on the predicted movement of the character after the predetermined time, the area where the character touches the ground is calculated.
A polygon connecting the outermost points of the grounding position of the character's body is calculated as an area where the character touches the ground.
It is determined that the position of the center of gravity on the ground corresponding to the predicted position of the center of gravity of the character after the predetermined time is the timing to step on the character's foot when it deviates from the area of the polygon, and immediately before the character. The character's foot is changed based on the movement of
When the position of the center of gravity on the ground corresponding to the position of the center of gravity of the character does not deviate from the polygonal region, it is determined that it is not the timing to step on the foot of the character, and the foot of the character is not stepped on.
An operation control method in which a computer performs a step.
JP2017215400A 2017-11-08 2017-11-08 Information processing device, operation control program and operation control method Active JP7005294B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017215400A JP7005294B2 (en) 2017-11-08 2017-11-08 Information processing device, operation control program and operation control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017215400A JP7005294B2 (en) 2017-11-08 2017-11-08 Information processing device, operation control program and operation control method

Publications (2)

Publication Number Publication Date
JP2019087074A JP2019087074A (en) 2019-06-06
JP7005294B2 true JP7005294B2 (en) 2022-01-21

Family

ID=66763125

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017215400A Active JP7005294B2 (en) 2017-11-08 2017-11-08 Information processing device, operation control program and operation control method

Country Status (1)

Country Link
JP (1) JP7005294B2 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003136439A (en) 2001-11-06 2003-05-14 Sony Corp Robot device, and method and program for controlling gait of robot device
JP2007334443A (en) 2006-06-12 2007-12-27 Kyushu Institute Of Technology Avatar operation control system, its program, and method
US20090135187A1 (en) 2007-11-28 2009-05-28 Institute For Information Industry System and method for dynamically generating response motions of virtual characters in real time and computer-readable recording medium thereof

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003136439A (en) 2001-11-06 2003-05-14 Sony Corp Robot device, and method and program for controlling gait of robot device
JP2007334443A (en) 2006-06-12 2007-12-27 Kyushu Institute Of Technology Avatar operation control system, its program, and method
US20090135187A1 (en) 2007-11-28 2009-05-28 Institute For Information Industry System and method for dynamically generating response motions of virtual characters in real time and computer-readable recording medium thereof

Also Published As

Publication number Publication date
JP2019087074A (en) 2019-06-06

Similar Documents

Publication Publication Date Title
US9208613B2 (en) Action modeling device, method, and program
US20110293144A1 (en) Method and System for Rendering an Entertainment Animation
JP3926307B2 (en) Three-dimensional image drawing apparatus and method, program, and recording medium
US20230334744A1 (en) Method and apparatus for generating walk animation of virtual role, device and storage medium
JP2006314633A (en) Game program and game machine
CN113706666A (en) Animation data processing method, non-volatile storage medium, and electronic device
JP2014027975A (en) Program, information storage medium, game device, and server
JP7005294B2 (en) Information processing device, operation control program and operation control method
US10099135B2 (en) Relative inverse kinematics graphical user interface tool
US6683612B2 (en) Animated image generating method and apparatus, readable storage medium storing animated image processing program and video game system
US8926427B2 (en) Video game with screen flip and dual sets of collision data
JP7138204B2 (en) Gap Simulation of Stretchable Characters in Computer Games
EP2692399A1 (en) Object display device
JP2003051030A (en) Program, method and device for generating moving image
JP2018088102A (en) Program, computer device and determination method
JP7071134B2 (en) Information processing device, operation control program and operation control method
JP4451897B2 (en) GAME PROGRAM, GAME DEVICE, AND GAME CONTROL METHOD
JP5378027B2 (en) GAME PROGRAM, STORAGE MEDIUM, AND COMPUTER DEVICE
JP2011143121A (en) Program, information storage medium and image generator
JP5318070B2 (en) Robust motion selection to control a physical biped character
JP2008079748A (en) Image sound output device, image sound output method, and image sound output program
CN118135118A (en) Three-dimensional modeling attitude data processing method and system
CN116681808A (en) Method and device for generating model animation, electronic equipment and storage medium
JP2023096266A (en) Information processing apparatus, program, and drawing method
JP2019113938A (en) Information processing apparatus, display control program, and display control method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200828

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210624

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210706

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210816

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: 20211221

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220105

R150 Certificate of patent or registration of utility model

Ref document number: 7005294

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150