JP2018088102A - Program, computer device and determination method - Google Patents

Program, computer device and determination method Download PDF

Info

Publication number
JP2018088102A
JP2018088102A JP2016230637A JP2016230637A JP2018088102A JP 2018088102 A JP2018088102 A JP 2018088102A JP 2016230637 A JP2016230637 A JP 2016230637A JP 2016230637 A JP2016230637 A JP 2016230637A JP 2018088102 A JP2018088102 A JP 2018088102A
Authority
JP
Japan
Prior art keywords
virtual skeleton
collided
virtual
position information
collision
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.)
Granted
Application number
JP2016230637A
Other languages
Japanese (ja)
Other versions
JP6329616B1 (en
Inventor
直 笠原
Nao Kasahara
直 笠原
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.)
Square Enix Co Ltd
Original Assignee
Square Enix 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 Square Enix Co Ltd filed Critical Square Enix Co Ltd
Priority to JP2016230637A priority Critical patent/JP6329616B1/en
Application granted granted Critical
Publication of JP6329616B1 publication Critical patent/JP6329616B1/en
Publication of JP2018088102A publication Critical patent/JP2018088102A/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a program capable of performing a collision determination between objects with a low processing load even in a state where it is generally difficult to perform the collision determination.SOLUTION: A program causes a computer device to function as location information acquisition means for acquiring location information on location of a virtual skeleton of an object and collision determination means for determining that the object has collided with another object when the acquired location information on location of the virtual skeleton of the object satisfies prescribed conditions.SELECTED DRAWING: Figure 2

Description

本発明は、処理負荷の低い、オブジェクト間の衝突を判定するプログラム、コンピュータ装置、及び、判定方法に関する。   The present invention relates to a program, a computer apparatus, and a determination method for determining a collision between objects with a low processing load.

ビデオゲームにおいて、アニメーションを容易に制作する方法として、人間等の現実の動きを測定してコンピュータ装置に取り込み、仮想空間においてオブジェクトにアニメーションさせるモーションキャプチャという手法がある。   In a video game, as a method of easily creating an animation, there is a method of motion capture in which an actual motion of a human or the like is measured and captured in a computer device, and an object is animated in a virtual space.

また、アニメーションをリアルに描写するために、コンピュータ制御によりキャラクタのモーションを補正する技術もある(例えば、特許文献1)。モーションを補正する技術として、例えば、インバース・キネマティクスや、プロシージャル・アニメーションが挙げられる。これらの方法は、コンピュータ制御によりモーションを自動的、あるいは半自動的に生成することにより、自然なアニメーションを実現するものである。   In addition, there is a technique for correcting the motion of a character by computer control in order to depict an animation realistically (for example, Patent Document 1). Examples of techniques for correcting motion include inverse kinematics and procedural animation. These methods realize natural animation by generating motion automatically or semi-automatically by computer control.

さらに、アニメーション制作において、オブジェクト同士が衝突したか否かをオブジェクトのモーション情報から判定する衝突判定に関する技術がある。オブジェクトが衝突した場合には、オブジェクトの動きに関する変化等の効果が生じる。   Furthermore, in animation production, there is a technique related to collision determination that determines whether objects collide with each other based on object motion information. When the object collides, an effect such as a change related to the movement of the object occurs.

特開2001−351124号公報JP 2001-351124 A

モーションキャプチャにより制作されたモーションを用いて衝突判定を行うには、開発者が衝突判定における、いわゆる当たり判定とよばれる範囲を設定したうえで判定を行う必要があった。モーションが変更になれば、再度開発者の設定が必要となり、作業コストは甚大であった。また、衝突判定の処理も、レイキャスト等の物理的衝突判定方法が用いられるが、物理的衝突判定は処理負荷が高く、高い性能を有するコンピュータ装置が必要であった。さらに、例えば、カットシーンにおいて、モーションキャプチャを用いてオブジェクトのモーションを制作する場合に、モーションの原点をオブジェクトの基準座標とすると、仮想空間内の地面との衝突(接触)判定ができない状況があった。   In order to perform a collision determination using a motion produced by motion capture, it is necessary for the developer to set a range called a hit determination in the collision determination and perform the determination. If the motion is changed, the developer needs to be set again, and the work cost is enormous. Also, the collision determination process uses a physical collision determination method such as ray casting. However, the physical collision determination has a high processing load and requires a computer device having high performance. Furthermore, for example, when creating motion of an object using motion capture in a cut scene, if the origin of motion is the reference coordinate of the object, there is a situation where collision (contact) with the ground in the virtual space cannot be determined. It was.

コンピュータ制御によるモーションの自動生成技術は、自然なアニメーションを提供する一方、オブジェクトが衝突するタイミングを開発者が把握できず、衝突により生じる視覚的効果や音響等を自然に表現することが困難であった。また、生成されたアニメーションにおいて、本来は起立しているはずのキャラクタ等の足が、予期せず地面の座標から離れてしまった場合に、地面との衝突判定である接地判定ができず、足音が発せられない等、不自然な状況があった。   While the computer-controlled automatic motion generation technology provides natural animation, it is difficult for developers to grasp the timing of object collision, and it is difficult to naturally express visual effects and sound generated by collision. It was. In addition, in the generated animation, if a foot of a character or the like that should have stood up unexpectedly moves away from the coordinates of the ground, the grounding determination that is a collision determination with the ground cannot be performed, and the footsteps There was an unnatural situation such as not being emitted.

本発明の少なくとも1つの実施の形態の目的は、処理負荷が低く、かつ、オブジェクト間の衝突判定を行うことが一般的に難しい状況においても衝突判定を行うことが可能なプログラム、コンピュータ装置、及び、判定方法を提供することを目的とする。   An object of at least one embodiment of the present invention is to provide a program, a computer device, and a computer program that can perform collision determination even in a situation where the processing load is low and it is generally difficult to perform collision determination between objects. An object is to provide a determination method.

非限定的な観点によると、コンピュータ装置を、オブジェクトが有する仮想骨格の位置に関する位置情報を取得する位置情報取得手段、取得した位置情報が所定の条件を満たす場合に、オブジェクトが他のオブジェクトと衝突したと判定する衝突判定手段として機能させるプログラムである。   According to a non-limiting viewpoint, the computer device can acquire position information related to the position of the virtual skeleton of the object, and the object can collide with another object when the acquired position information satisfies a predetermined condition. This is a program that functions as a collision determination unit that determines that a failure has occurred.

非限定的な観点によると、オブジェクトが有する仮想骨格の位置に関する位置情報を取得する位置情報取得手段と、取得した位置情報が所定の条件を満たす場合に、オブジェクトが他のオブジェクトと衝突したと判定する衝突判定手段とを備える、コンピュータ装置である。   According to a non-limiting viewpoint, position information acquisition means for acquiring position information related to the position of the virtual skeleton possessed by the object, and when the acquired position information satisfies a predetermined condition, it is determined that the object has collided with another object. And a collision determination means.

非限定的な観点によると、コンピュータ装置において実行される判定方法であって、オブジェクトが有する仮想骨格の位置に関する位置情報を取得するステップと、取得した位置情報が所定の条件を満たす場合に、オブジェクトが他のオブジェクトと衝突したと判定するステップとを有する判定方法である。   According to a non-limiting viewpoint, the determination method is executed in a computer device, and includes a step of acquiring position information related to a position of a virtual skeleton possessed by an object, and an object when the acquired position information satisfies a predetermined condition. Determining that has collided with another object.

本発明の各実施形態により1または2以上の不足が解決される。   Each embodiment of the present invention solves one or more deficiencies.

本発明の実施の形態の少なくとも1つに対応する、コンピュータ装置の構成を示すブロック図である。It is a block diagram which shows the structure of the computer apparatus corresponding to at least 1 of embodiment of this invention. 本発明の実施の形態の少なくとも1つに対応する、プログラム実行処理のフローチャートである。It is a flowchart of the program execution process corresponding to at least 1 of embodiment of this invention. 本発明の実施の形態の少なくとも1つに対応する、コンピュータ装置の構成を示すブロック図である。It is a block diagram which shows the structure of the computer apparatus corresponding to at least 1 of embodiment of this invention. 本発明の実施の形態の少なくとも1つに対応する、プログラム実行処理のフローチャートである。It is a flowchart of the program execution process corresponding to at least 1 of embodiment of this invention. 本発明の実施の形態の少なくとも1つに対応する、コンピュータ装置の構成を示すブロック図である。It is a block diagram which shows the structure of the computer apparatus corresponding to at least 1 of embodiment of this invention. 本発明の実施の形態の少なくとも1つに対応する、プログラム実行処理のフローチャートである。It is a flowchart of the program execution process corresponding to at least 1 of embodiment of this invention. 本発明の実施の形態の少なくとも1つに対応する、オブジェクトが衝突したか否か判定するための衝突条件マスタテーブルを表す図である。It is a figure showing the collision condition master table for determining whether the object collided corresponding to at least 1 of embodiment of this invention. 本発明の実施の形態の少なくとも1つに対応する、オブジェクトの歩行モーション中における接地判定方法を説明する図である。It is a figure explaining the ground-contact determination method in the walking motion of the object corresponding to at least 1 of embodiment of this invention. 本発明の実施の形態の少なくとも1つに対応する、シミュレーションにより動作するオブジェクトの発音タイミングについて説明する図である。It is a figure explaining the sounding timing of the object which operate | moves by simulation corresponding to at least 1 of embodiment of this invention. 本発明の実施の形態の少なくとも1つに対応する、発音する音を決定するための発音マスタテーブルを表す図である。It is a figure showing the pronunciation master table for determining the sound to sound corresponding to at least 1 of embodiment of this invention.

以下、添付図面を参照して、本発明の実施の形態について説明する。以下、効果に関する記載は、本発明の実施の形態の効果の一側面であり、ここに記載するものに限定されない。また、以下で説明するフローチャートを構成する各処理の順序は、処理内容に矛盾や不整合が生じない範囲で順不同である。   Embodiments of the present invention will be described below with reference to the accompanying drawings. Hereinafter, the description regarding the effect is one aspect of the effect of the embodiment of the present invention, and is not limited to what is described here. In addition, the order of the processes constituting the flowchart described below is out of order as long as no contradiction or inconsistency occurs in the process contents.

[第一の実施の形態]
本発明の第一の実施の形態について説明をする。図1は、本発明の実施の形態の少なくとも1つに対応する、コンピュータ装置の構成を示すブロック図である。コンピュータ装置1は、位置情報取得部101、及び、衝突判定部102を少なくとも備える。
[First embodiment]
A first embodiment of the present invention will be described. FIG. 1 is a block diagram showing a configuration of a computer apparatus corresponding to at least one of the embodiments of the present invention. The computer apparatus 1 includes at least a position information acquisition unit 101 and a collision determination unit 102.

位置情報取得部101は、オブジェクトが有する仮想骨格の位置に関する位置情報を取得する機能を有する。衝突判定部102は、取得した位置情報が所定の条件を満たす場合に、オブジェクトが他のオブジェクトと衝突したと判定する機能を有する。   The position information acquisition unit 101 has a function of acquiring position information regarding the position of the virtual skeleton of the object. The collision determination unit 102 has a function of determining that an object has collided with another object when the acquired position information satisfies a predetermined condition.

本発明の第一の実施の形態におけるプログラム実行処理について説明する。図2は、本発明の実施の形態の少なくとも1つに対応する、プログラム実行処理のフローチャートである。   The program execution process in the first embodiment of the present invention will be described. FIG. 2 is a flowchart of a program execution process corresponding to at least one of the embodiments of the present invention.

コンピュータ装置1は、オブジェクトが有する仮想骨格の位置に関する位置情報を取得する(ステップS1)。ステップS1において取得した位置情報が所定の条件を満たす場合に、オブジェクトが他のオブジェクトと衝突したと判定し(ステップS2)、終了する。   The computer apparatus 1 acquires position information regarding the position of the virtual skeleton that the object has (step S1). If the position information acquired in step S1 satisfies a predetermined condition, it is determined that the object has collided with another object (step S2), and the process ends.

第一の実施の形態の一側面として、オブジェクトが有する仮想骨格の位置情報に基づいて衝突判定を行うことで、処理負荷が低く、かつ、地面との衝突判定を行うことが一般的に難しい状況においても衝突判定を行うことができる。   As one aspect of the first embodiment, by performing collision determination based on the position information of the virtual skeleton possessed by the object, the processing load is low and it is generally difficult to perform collision determination with the ground It is also possible to make a collision determination at.

第一の実施の形態において、「コンピュータ装置」とは、例えば、デスクトップ型又はノート型パーソナルコンピュータ、タブレットコンピュータ、又は、PDA等をいい、表示画面にタッチパネルセンサを備える携帯型端末であってもよい。   In the first embodiment, the “computer device” refers to, for example, a desktop or notebook personal computer, a tablet computer, or a PDA, and may be a portable terminal that includes a touch panel sensor on a display screen. .

「オブジェクト」とは、例えば、仮想空間内で有形の物体をいう。「仮想骨格」とは、例えば、オブジェクトの骨格であって、オブジェクトの動作や姿勢を定義する際に用いられるものをいう。「位置情報」とは、例えば、3次元仮想空間を形成する座標系の座標に基づいて定めることができる位置に関する情報である。   “Object” refers to a tangible object in a virtual space, for example. The “virtual skeleton” is, for example, an object skeleton that is used when defining the motion and posture of an object. “Position information” is information on a position that can be determined based on the coordinates of a coordinate system forming a three-dimensional virtual space, for example.

[第二の実施の形態]
次に、本発明の第二の実施の形態の概要について説明をする。図3は、本発明の実施の形態の少なくとも1つに対応する、コンピュータ装置の構成を示すブロック図である。コンピュータ装置1は、位置情報取得部111、衝突判定部112、及び、発音部113を少なくとも備える。
[Second Embodiment]
Next, the outline of the second embodiment of the present invention will be described. FIG. 3 is a block diagram showing a configuration of a computer apparatus corresponding to at least one of the embodiments of the present invention. The computer apparatus 1 includes at least a position information acquisition unit 111, a collision determination unit 112, and a sound generation unit 113.

位置情報取得部111は、オブジェクトが有する仮想骨格の位置に関する位置情報を取得する機能を有する。衝突判定部112は、取得した位置情報が所定の条件を満たす場合に、オブジェクトが他のオブジェクトと衝突したと判定する機能を有する。発音部113は、衝突判定手段によりオブジェクトが他のオブジェクトと衝突したと判定されたタイミングにおいて、発音処理を実行する機能を有する。   The position information acquisition unit 111 has a function of acquiring position information regarding the position of the virtual skeleton of the object. The collision determination unit 112 has a function of determining that an object has collided with another object when the acquired position information satisfies a predetermined condition. The sound generation unit 113 has a function of executing sound generation processing at the timing when the collision determination unit determines that the object has collided with another object.

本発明の第二の実施の形態におけるプログラム実行処理について説明する。図4は、本発明の実施の形態の少なくとも1つに対応する、プログラム実行処理のフローチャートである。   The program execution process in the second embodiment of the present invention will be described. FIG. 4 is a flowchart of the program execution process corresponding to at least one of the embodiments of the present invention.

コンピュータ装置1は、オブジェクトが有する仮想骨格の位置に関する位置情報を取得する(ステップS11)。次に、ステップS11において取得した位置情報が所定の条件を満たす場合に、オブジェクトが他のオブジェクトと衝突したと判定する(ステップS12)。オブジェクトが他のオブジェクトと衝突したと判定されたタイミングにおいて(ステップS12においてYES)、発音処理を実行し(ステップS13)、終了する。   The computer apparatus 1 acquires position information related to the position of the virtual skeleton that the object has (step S11). Next, when the position information acquired in step S11 satisfies a predetermined condition, it is determined that the object has collided with another object (step S12). At a timing when it is determined that the object collides with another object (YES in step S12), a sound generation process is executed (step S13), and the process ends.

第二の実施の形態の一側面として、オブジェクトが衝突したと判定されたタイミングにおいて発音することで、衝突判定を行うことが難しい状況においても、違和感のないタイミングで発音させることができる。   As one aspect of the second embodiment, by sounding at a timing when it is determined that an object has collided, it is possible to generate sound at a timing that does not cause a sense of incongruity even in a situation where it is difficult to perform a collision determination.

第二の実施の形態において、「コンピュータ装置」、「オブジェクト」、「仮想骨格」、及び、「位置情報」とは、それぞれ第一の実施の形態において記載した内容と同一である。   In the second embodiment, “computer device”, “object”, “virtual skeleton”, and “position information” are the same as those described in the first embodiment.

第二の実施の形態において、「発音処理」とは、例えば、音を発生させる処理をいう。   In the second embodiment, “sound generation processing” refers to, for example, processing for generating sound.

[第三の実施の形態]
次に、本発明の第三の実施の形態の概要について説明をする。第三の実施の形態のコンピュータ装置は、図1のブロック図に示されるものと同じ構成を採用することができる。また、第三の実施の形態のプログラム実行処理のフローは、図2のフローチャートに示されるものと同じ構成を採用することができる。
[Third embodiment]
Next, the outline of the third embodiment of the present invention will be described. The computer apparatus of the third embodiment can employ the same configuration as that shown in the block diagram of FIG. Further, the flow of the program execution process of the third embodiment can adopt the same configuration as that shown in the flowchart of FIG.

第三の実施の形態において、衝突判定部102が、仮想骨格の位置、移動速度、及び/若しくは、加速度、並びに/又は、仮想骨格と仮想骨格から形成される仮想関節の角度及び/若しくは角速度が所定の条件を満たす場合に、オブジェクトが他のオブジェクトと衝突したと判定するものである。   In the third embodiment, the collision determination unit 102 determines the position, moving speed, and / or acceleration of the virtual skeleton and / or the angle and / or angular velocity of the virtual joint formed from the virtual skeleton and the virtual skeleton. When the predetermined condition is satisfied, it is determined that the object has collided with another object.

第三の実施の形態の一側面として、仮想骨格の位置、移動速度、加速度、仮想骨格と仮想骨格から形成される仮想関節の角度、角速度のいずれかを用いて、オブジェクトの衝突を判定することにより、オブジェクトの様々な状態に応じた衝突タイミングを、柔軟に設定することができる。   As one aspect of the third embodiment, the collision of the object is determined using any one of the position of the virtual skeleton, the moving speed, the acceleration, the angle of the virtual joint formed from the virtual skeleton and the virtual skeleton, and the angular velocity. Thus, the collision timing according to various states of the object can be set flexibly.

第三の実施の形態において、「コンピュータ装置」、「オブジェクト」、「仮想骨格」、及び、「位置情報」とは、それぞれ第一の実施の形態において記載した内容と同一である。また、「発音処理」とは第二の実施の形態において記載した内容と同一である。   In the third embodiment, “computer device”, “object”, “virtual skeleton”, and “position information” are the same as those described in the first embodiment. The “sound generation process” is the same as that described in the second embodiment.

第三の実施の形態において、「移動速度」とは、例えば、オブジェクトが移動する速度をいい、速度の正負によりオブジェクトの移動する方向を表すものである。「加速度」とは、例えば、オブジェクトの移動速度の変化の度合いをいう。「仮想関節」とは、例えば、オブジェクトを形成する骨格同士をつなぐ部分をいい、骨格間の動きを伝達する役割をもつものをいう。「角速度」とは、例えば、オブジェクトを形成する仮想骨格が回転する速さをいう。   In the third embodiment, “movement speed” refers to, for example, the speed at which an object moves, and represents the direction in which the object moves depending on whether the speed is positive or negative. “Acceleration” refers to, for example, the degree of change in the moving speed of an object. The “virtual joint” refers to, for example, a portion that connects skeletons forming an object and has a role of transmitting movement between the skeletons. “Angular velocity” refers to the speed at which a virtual skeleton forming an object rotates, for example.

[第四の実施の形態]
本発明の第四の実施の形態の概要について説明する。図5は、本発明の実施の形態の少なくとも1つに対応する、コンピュータ装置の構成を示すブロック図である。
[Fourth embodiment]
An outline of the fourth embodiment of the present invention will be described. FIG. 5 is a block diagram showing a configuration of a computer apparatus corresponding to at least one of the embodiments of the present invention.

コンピュータ装置1は、制御部11、RAM(Random Access Memory)12、ストレージ部13、サウンド処理部14、グラフィックス処理部15、DVD/CD−ROMドライブ16、通信インタフェース17、及びインタフェース部18からなり、それぞれ内部バスにより接続されている。   The computer apparatus 1 includes a control unit 11, a RAM (Random Access Memory) 12, a storage unit 13, a sound processing unit 14, a graphics processing unit 15, a DVD / CD-ROM drive 16, a communication interface 17, and an interface unit 18. Are connected by an internal bus.

制御部11は、CPU(Central Processing Unit)やROM(Read Only Memory)から構成される。制御部11は、ストレージ部13や記録媒体24に格納されたプログラムを実行し、コンピュータ装置1の制御を行う。また、制御部11は時間を計時する内部タイマを備えている。   The control unit 11 includes a CPU (Central Processing Unit) and a ROM (Read Only Memory). The control unit 11 executes a program stored in the storage unit 13 or the recording medium 24 to control the computer device 1. Moreover, the control part 11 is provided with the internal timer which time-measures.

RAM12は、制御部11のワークエリアである。ストレージ部13は、プログラムやデータを保存するための記憶領域である。   The RAM 12 is a work area for the control unit 11. The storage unit 13 is a storage area for storing programs and data.

DVD/CD−ROMドライブ16は、DVD−ROMやCD−ROMなどのプログラムが格納された記録媒体24を装着することが可能である。記録媒体24には、ゲームの実行やコンテンツの再生を行うためのプログラム及びデータが記憶されている。DVD/CD−ROMドライブ16により、コンテンツの進行に必要なプログラム及びデータが記録媒体24から読み出され、RAM12にロードされる。   The DVD / CD-ROM drive 16 can be loaded with a recording medium 24 in which a program such as a DVD-ROM or a CD-ROM is stored. The recording medium 24 stores a program and data for executing a game and reproducing content. The DVD / CD-ROM drive 16 reads programs and data necessary for the progress of the content from the recording medium 24 and loads them into the RAM 12.

制御部11は、コンテンツの進行に必要なプログラム及びデータをRAM12から読み出して処理を行う。制御部11は、RAM12にロードされたプログラム及びデータを処理することで、サウンド出力の指示をサウンド処理部14に出力し、描画命令をグラフィックス処理部15に出力する。   The control unit 11 reads a program and data necessary for the progress of content from the RAM 12 and performs processing. The control unit 11 processes the program and data loaded in the RAM 12 to output a sound output instruction to the sound processing unit 14 and output a drawing command to the graphics processing unit 15.

サウンド処理部14は、スピーカであるサウンド出力装置21に接続されている。制御部11がサウンド出力の指示をサウンド処理部14に出力すると、サウンド処理部14はサウンド出力装置21にサウンド信号を出力する。   The sound processing unit 14 is connected to a sound output device 21 that is a speaker. When the control unit 11 outputs a sound output instruction to the sound processing unit 14, the sound processing unit 14 outputs a sound signal to the sound output device 21.

グラフィックス処理部15は表示装置22に接続されている。表示装置22は表示画面23を有している。制御部11が描画命令をグラフィックス処理部15に出力すると、グラフィックス処理部15は、フレームメモリ(フレームバッファ)19に画像を展開し、表示画面23上に画像を表示するためのビデオ信号を出力する。グラフィックス処理部15は、フレーム単位で1枚の画像の描画を実行する。画像の1フレーム時間は、例えば30分の1秒である。   The graphics processing unit 15 is connected to the display device 22. The display device 22 has a display screen 23. When the control unit 11 outputs a drawing command to the graphics processing unit 15, the graphics processing unit 15 develops an image in a frame memory (frame buffer) 19 and outputs a video signal for displaying the image on the display screen 23. Output. The graphics processing unit 15 performs drawing of one image for each frame. One frame time of an image is, for example, 1/30 second.

インタフェース部18には、例えば、コントローラやキーボード等の入力部20が接続される。ユーザによる入力部20に対する入力情報は、RAM12に格納され、制御部11は入力情報をもとに各種の演算処理を実行する。また、インタフェース部18には、メモリカード等の外部記憶媒体を接続することも可能である。インタフェース部18は、制御部11からの指示にしたがって、RAM12に記憶されているコンテンツの進行状況に関するデータを外部記憶媒体に記憶させる処理や、外部記憶媒体に記憶されているデータを読み出してRAM12に転送する処理を行う。   For example, an input unit 20 such as a controller or a keyboard is connected to the interface unit 18. Information input to the input unit 20 by the user is stored in the RAM 12, and the control unit 11 executes various arithmetic processes based on the input information. Further, an external storage medium such as a memory card can be connected to the interface unit 18. In accordance with an instruction from the control unit 11, the interface unit 18 stores data related to the progress of content stored in the RAM 12 in the external storage medium, reads out data stored in the external storage medium, and stores the data in the RAM 12. Perform the transfer process.

通信インタフェース17は無線又は有線により通信ネットワーク2に接続されており、外部のコンピュータ装置と必要に応じて操作指示情報やコンテンツの進行状況に関する情報の送受信を行う。   The communication interface 17 is connected to the communication network 2 wirelessly or by wire, and transmits / receives operation instruction information and information regarding the progress of the content to / from an external computer device as necessary.

第四の実施の形態の一例として、ユーザが操作するキャラクタが3次元仮想空間内を自由に動き回ることができるロールプレイングゲーム(Role Playing Game。以下、RPGという)のプログラムを挙げる。ゲームは、ユーザの操作によりキャラクタを動作させる場面と、予めストレージ部13に記録された動画を再生する場面とから構成されるものであってもよい。   As an example of the fourth embodiment, a role playing game (RPG) program in which a character operated by a user can freely move around in a three-dimensional virtual space is given. The game may be composed of a scene in which a character is operated by a user operation and a scene in which a moving image recorded in advance in the storage unit 13 is reproduced.

続いて、本発明の第四の実施の形態におけるプログラム実行処理について説明をする。図6は、本発明の実施の形態の少なくとも1つに対応する、プログラム実行処理のフローチャートである。   Subsequently, a program execution process in the fourth embodiment of the present invention will be described. FIG. 6 is a flowchart of the program execution process corresponding to at least one of the embodiments of the present invention.

プログラムの実行処理が開始されると、ストレージ部13に記録された衝突したか否か判定するための条件である衝突条件を取得する(ステップS21)。衝突条件については、後述する。   When the program execution process is started, a collision condition that is a condition for determining whether or not there is a collision recorded in the storage unit 13 is acquired (step S21). The collision condition will be described later.

次に、表示画面23に表示されるフレームの演算を行う(ステップS22)。ステップS22において演算されたフレームを生成し、表示画面23に表示する(ステップS23)。   Next, the frame displayed on the display screen 23 is calculated (step S22). The frame calculated in step S22 is generated and displayed on the display screen 23 (step S23).

次に、ステップS23において生成されたフレームから、オブジェクトの仮想骨格情報を取得する(ステップS24)。オブジェクトの仮想骨格情報には、仮想空間内に存在するキャラクタや、キャラクタが身に着けている服、アクセサリ等の小物、その他仮想骨格により形成されるオブジェクトに関する情報が含まれる。さらに、仮想骨格及び仮想関節に設定された位置座標、前フレームと現フレームとの位置座標の変化量、移動速度、前フレームと現フレームとの速度の変化量を表す加速度、仮想関節の角度、あるいは、角速度に関する情報が含まれる概念である。ここで、移動速度とは、仮想空間を形成する座標系の軸ごとに設定されるものであってもよく、移動する方向を知ることができるベクトル情報であってもよい。   Next, the virtual skeleton information of the object is acquired from the frame generated in step S23 (step S24). The virtual skeleton information of an object includes information on a character that exists in the virtual space, accessories worn by the character, accessories such as accessories, and other objects formed by the virtual skeleton. Furthermore, the position coordinates set in the virtual skeleton and the virtual joint, the amount of change in the position coordinates between the previous frame and the current frame, the moving speed, the acceleration representing the amount of change in the speed between the previous frame and the current frame, the angle of the virtual joint, Or it is the concept in which the information regarding angular velocity is included. Here, the moving speed may be set for each axis of the coordinate system forming the virtual space, or may be vector information that can know the moving direction.

続いて、取得した仮想骨格情報が衝突条件を満たすか判定する(ステップS25)。図7は、本発明の実施の形態の少なくとも1つに対応する、オブジェクトが衝突したか否か判定するための衝突条件マスタテーブルを表す図である。   Subsequently, it is determined whether the acquired virtual skeleton information satisfies a collision condition (step S25). FIG. 7 is a diagram showing a collision condition master table for determining whether or not an object has collided, corresponding to at least one of the embodiments of the present invention.

衝突条件マスタテーブル30は、条件NO31に関連付けて、チェック対象32、及び、条件内容33が記憶されている。チェック対象32は、衝突条件を判定する対象に関する情報である。条件内容33は、チェック対象32が条件内容に記載された条件を満たしている場合に、衝突したと判定するための条件である。同一の条件NO31に関連付けられた複数の条件内容33は、論理積(AND)により判定される。すなわち、1つの条件NO31に、複数の条件内容33が存在する場合には、すべての条件内容33を満たした場合に限り、衝突したと判定される。   The collision condition master table 30 stores a check target 32 and condition contents 33 in association with the condition NO31. The check target 32 is information related to a target for determining a collision condition. The condition contents 33 are conditions for determining that a collision has occurred when the check target 32 satisfies the conditions described in the condition contents. A plurality of condition contents 33 associated with the same condition NO31 are determined by logical product (AND). That is, when a plurality of condition contents 33 exist in one condition NO31, it is determined that the collision has occurred only when all the condition contents 33 are satisfied.

条件内容33について具体的に説明する。例えば、条件NO31が「0001」の場合には、オブジェクトの仮想骨格あるいは仮想関節(以下、仮想骨格等という)の移動速度が、前フレームにおける同じ仮想骨格等の移動速度と比較した場合に、移動速度の符号が反転したときは、衝突したものと判定する。ここで、オブジェクトが、他のオブジェクトと実際には衝突していない場合であっても、衝突したものとして効果を生じさせてもよい。   The condition contents 33 will be specifically described. For example, when the condition NO31 is “0001”, the movement speed of the virtual skeleton or virtual joint (hereinafter referred to as a virtual skeleton) of the object is compared with the movement speed of the same virtual skeleton in the previous frame. When the sign of speed is reversed, it is determined that a collision has occurred. Here, even if the object does not actually collide with another object, the effect may be generated as a collision.

次に、条件NO31が「0002」の場合であって、オブジェクトが地面に接したか否か判定する接地判定を行う場面について説明する。図8は、本発明の実施の形態の少なくとも1つに対応する、オブジェクトの歩行モーション中における接地判定方法を説明する図である。   Next, a case where the grounding determination is performed in the case where the condition NO31 is “0002” and it is determined whether or not the object has touched the ground will be described. FIG. 8 is a diagram for explaining a ground contact determination method during a walking motion of an object, corresponding to at least one of the embodiments of the present invention.

接地判定は、人型のオブジェクトが両足で歩行する際に、足部及び脚部の仮想骨格に関する情報に基づいて、接地したか否か判定するものである。なお、実線で描いた脚部を右脚、破線で描いた脚部を左脚とする。   The ground contact determination is performed to determine whether or not the humanoid object is grounded based on information on the virtual skeleton of the foot and the leg when the humanoid object walks with both feet. The leg drawn with a solid line is the right leg, and the leg drawn with a broken line is the left leg.

図8(a)は、右足が地面45に接する瞬間のフレームを表す図である。足部及び脚部には、仮想関節40a、40b、及び40cがそれぞれ設定されている。また、仮想関節40a及び40bの間の仮想骨格41aと、仮想関節40b及び40cの間の仮想骨格41bとが成す角度として、角度42が定義されている。右脚は移動しているため、右足の仮想骨格41aは所定の移動速度にて移動している。   FIG. 8A shows a frame at the moment when the right foot is in contact with the ground 45. Virtual joints 40a, 40b, and 40c are set on the foot and the leg, respectively. An angle 42 is defined as an angle formed by the virtual skeleton 41a between the virtual joints 40a and 40b and the virtual skeleton 41b between the virtual joints 40b and 40c. Since the right leg is moving, the virtual skeleton 41a of the right foot is moving at a predetermined moving speed.

図8(b)は、図8(a)の状態から所定の時間が経過した後のフレームを表す図である。左脚を前に進める際に、右足は地面45に接地している。このとき、右足の仮想骨格41aの移動速度は0、すなわち静止している。また、角度42は所定の範囲内の角度を維持している。   FIG. 8B is a diagram illustrating a frame after a predetermined time has elapsed from the state of FIG. When the left leg is advanced forward, the right foot is in contact with the ground 45. At this time, the moving speed of the virtual skeleton 41a of the right foot is 0, that is, it is stationary. The angle 42 maintains an angle within a predetermined range.

図8(c)は、図8(b)の状態から所定の時間が経過した後のフレームを表す図である。左脚が右脚より前に進められた状態であっても、右足は地面45に接地したままであり、角度42は図8(b)に示された所定の範囲内の角度を維持したままである。   FIG. 8C is a diagram illustrating a frame after a predetermined time has elapsed from the state of FIG. Even when the left leg is advanced forward of the right leg, the right leg remains in contact with the ground 45, and the angle 42 remains within the predetermined range shown in FIG. 8B. It is.

図8(d)は、図8(c)の状態から所定の時間が経過した後のフレームを表す図である。左足が接地すると、右足の接地状態は解除され、右足の仮想骨格41aの移動速度は0より大きくなる。また、角度42は図8(b)及び(c)に示された所定の範囲外の角度となる。   FIG. 8D shows a frame after a predetermined time has elapsed from the state of FIG. When the left foot touches down, the ground state of the right foot is released, and the moving speed of the virtual skeleton 41a of the right foot becomes greater than zero. Further, the angle 42 is an angle outside the predetermined range shown in FIGS. 8B and 8C.

つまり、足部の仮想骨格41aの移動速度が、所定の速度以下である状態が複数フレームに渡って継続する場合に、足が接地しているものと判定することができる。さらに、接地したと判定する条件に、仮想関節40bの角度42について、所定の範囲内の角度である状態が複数フレームに渡り継続しているか否かという条件を追加してもよい。なお、オブジェクトの移動速度は、例えば水平方向の移動速度のみに限定して判定するようにしてもよい。   That is, it can be determined that the foot is in contact with the ground when the moving speed of the virtual skeleton 41a of the foot portion is not more than a predetermined speed for a plurality of frames. Furthermore, a condition for determining whether or not the angle 42 in the virtual joint 40b is in an angle within a predetermined range may be added to the condition for determining that the ground has been reached. Note that the moving speed of the object may be determined by limiting to only the moving speed in the horizontal direction, for example.

同様に、手部及び腕部の仮想骨格等の情報を用いて、オブジェクトと壁オブジェクトとの接触判定を行うこともできる。これは、図7において、条件NO31が「0003」の条件内容33を満たす場合である。図示はしないが、手部の仮想骨格の移動速度が所定の条件を満たす場合には、手部が壁オブジェクトに接触していると判定することができる。また、より細かくオブジェクトの動作を区別するために、他の条件を追加してもよい。他の条件とは、例えば、手部を形成する仮想骨格と腕部を形成する仮想骨格とが成す角度が所定の範囲内であること等である。   Similarly, contact determination between an object and a wall object can be performed using information such as a virtual skeleton of the hand part and the arm part. This is a case where the condition NO31 satisfies the condition content 33 of “0003” in FIG. Although not shown, when the moving speed of the virtual skeleton of the hand satisfies a predetermined condition, it can be determined that the hand is in contact with the wall object. Further, other conditions may be added in order to distinguish the movement of the object more finely. The other conditions include, for example, that an angle formed by the virtual skeleton that forms the hand portion and the virtual skeleton that forms the arm portion is within a predetermined range.

続いて、条件NO31が「0004」の場合であって、キャラクタが身に着けているオブジェクト(例えばカバン)について、発音するタイミングを判定する場面について説明する。図9は、本発明の実施の形態の少なくとも1つに対応する、シミュレーションにより動作するオブジェクトの発音タイミングについて説明する図である。オブジェクト51は、仮想関節52a、52b、並びに52c、及び、仮想関節52aと52bとの間に存在する仮想骨格53a、並びに、仮想関節52bと52cとの間に存在する仮想骨格53bにより形成され、シミュレーションにより動作する。   Next, a case where the condition NO31 is “0004” and the timing for sound generation of an object (for example, a bag) worn by the character will be described. FIG. 9 is a diagram illustrating the sound generation timing of an object that operates by simulation, corresponding to at least one of the embodiments of the invention. The object 51 is formed by virtual joints 52a, 52b, and 52c, a virtual skeleton 53a that exists between the virtual joints 52a and 52b, and a virtual skeleton 53b that exists between the virtual joints 52b and 52c. It works by simulation.

図9(a)は、オブジェクトを身に着けたキャラクタが、静止している様子を表す図である。キャラクタがオブジェクト51を身に着けているため、オブジェクト51を形成する仮想骨格53bはキャラクタに矢印方向への力を受け、キャラクタの身体に寄り添うように位置する。   FIG. 9A is a diagram illustrating a state where a character wearing an object is stationary. Since the character wears the object 51, the virtual skeleton 53b that forms the object 51 is positioned so that the character receives a force in the direction of the arrow and is close to the character's body.

ここで、キャラクタの移動等の動作により、オブジェクトがキャラクタの身体から離れた状況になった場合を説明する。図9(b)は、オブジェクトがキャラクタの身体から離れた様子を表す図である。オブジェクト51はキャラクタの身体から離れる方向に移動しているため、仮想骨格53bは、キャラクタの身体から離れる方向である矢印方向への力を受ける。つまり、仮想骨格53bの移動速度は、図9(a)における移動速度とは異なり、重力に反する方向へ移動することとなる。   Here, a case will be described in which the object is separated from the character's body due to the movement of the character or the like. FIG. 9B is a diagram illustrating a state in which the object is separated from the character body. Since the object 51 is moving in a direction away from the character's body, the virtual skeleton 53b receives a force in the direction of the arrow, which is a direction away from the character's body. That is, the movement speed of the virtual skeleton 53b is different from the movement speed in FIG.

この場合に、図7の条件33「速度の正負が逆転したら」という条件を満たし、キャラクタとオブジェクトとの衝突が発生したものとみなすことができる。さらに正確に衝突を判定するために、他の条件を追加してもよい。他の条件とは、例えば、キャラクタを形成する特定の仮想骨格と、オブジェクトを構成する特定の仮想骨格の相対的な位置関係に関する条件や、移動方向に関する条件、あるいは、仮想関節の角度に関する条件等が挙げられる。   In this case, it can be considered that the condition 33 “when the sign of the speed is reversed” in FIG. 7 is satisfied and a collision between the character and the object has occurred. In order to more accurately determine the collision, other conditions may be added. Other conditions include, for example, a condition regarding the relative positional relationship between a specific virtual skeleton forming a character and a specific virtual skeleton constituting an object, a condition regarding a moving direction, a condition regarding an angle of a virtual joint, etc. Is mentioned.

次に、条件NO31が「0006」の場合であって、コンピュータ制御により自動生成されたモーションによりキャラクタが転倒した場合に、発音するタイミングを判定する場面について説明する。図示はしないが、複数のフレームに渡り、例えば、水平方向に対してキャラクタの背骨の仮想骨格が成す角度が所定の角度の範囲内(0°以上、20°以下)となり、かつ、背骨の仮想骨格の移動速度の符号が反転した場合には、キャラクタが転倒したと判定することができ、発音させることができる。   Next, a description will be given of a scene in which the timing of sound generation is determined when the condition NO31 is “0006” and the character falls due to a motion automatically generated by computer control. Although not shown, for example, the angle formed by the virtual skeleton of the character's spine with respect to the horizontal direction is within a predetermined angle range (0 ° or more and 20 ° or less) over a plurality of frames, and the spine is virtual. When the sign of the moving speed of the skeleton is reversed, it can be determined that the character has fallen and can be pronounced.

このように、物理的衝突判定を行うことなく、オブジェクトの仮想骨格等に関する情報から、衝突判定やオブジェクトの状態を特定することが可能となる。   In this way, it is possible to determine the collision determination and the state of the object from the information regarding the virtual skeleton of the object without performing the physical collision determination.

図6に戻り、衝突判定後の発音処理について説明する。ステップS25において衝突条件を満たした場合(ステップS25にてYES)には、発音させるために使用される環境情報を取得する(ステップS26)。環境情報とは、例えば、衝突したオブジェクト(衝突元オブジェクト)と、衝突された他のオブジェクト(衝突先オブジェクト)に関する情報や、オブジェクトが存在する仮想空間に関する情報を含む情報である。環境情報は、表示画面23に表示されたフレームに含まれる情報、あるいは、フレームを生成する際に用いられる情報から取得することができる。   Returning to FIG. 6, the sound generation process after collision determination will be described. If the collision condition is satisfied in step S25 (YES in step S25), environmental information used for sound generation is acquired (step S26). The environment information is, for example, information including information on a collided object (collision source object) and another object collided (collision destination object) and information on a virtual space in which the object exists. The environment information can be acquired from information included in the frame displayed on the display screen 23 or information used when generating the frame.

ステップS26において取得した環境情報を用いて、発音処理を行う(ステップS27)。図10は、本発明の実施の形態の少なくとも1つに対応する、発音する音を決定するための発音マスタテーブルを表す図である。発音マスタテーブル60には、条件NO61、衝突元62、衝突先63、及び、存在空間64に関連付けて、音65が記憶されている。   Sound generation processing is performed using the environmental information acquired in step S26 (step S27). FIG. 10 is a diagram showing a pronunciation master table for determining a sound to be generated, corresponding to at least one of the embodiments of the present invention. In the pronunciation master table 60, a sound 65 is stored in association with the condition NO61, the collision source 62, the collision destination 63, and the existence space 64.

条件NO61は、衝突条件マスタテーブル30に含まれる条件NO31に対応する。衝突元62は、衝突したオブジェクトに関する情報である。衝突先63は、衝突されたオブジェクトに関する情報である。存在空間64は、オブジェクトが存在する仮想空間に関する情報である。衝突元62、衝突先63、及び存在空間64は、ステップS26において取得された環境情報に含まれる情報に対応する。   The condition NO61 corresponds to the condition NO31 included in the collision condition master table 30. The collision source 62 is information regarding the collided object. The collision destination 63 is information regarding the collided object. The existence space 64 is information regarding the virtual space in which the object exists. The collision source 62, the collision destination 63, and the existence space 64 correspond to information included in the environment information acquired in step S26.

音65は、衝突したと判定された際に発せられる音に関する情報である。音65は、音源に関するデータファイル自体であってもよいし、音源データファイルがストレージ部13等に格納されている場合には格納先に関する情報であってもよい。   The sound 65 is information related to a sound that is emitted when it is determined that a collision has occurred. The sound 65 may be a data file related to the sound source itself, or may be information related to the storage location when the sound source data file is stored in the storage unit 13 or the like.

発音する音65の決定について説明する。ステップS25において、条件NO31が「0001」を満たすことにより衝突したと判定された場合には、条件NO61が「0001」であって、後述するが、衝突元62、衝突先63、及び、存在空間64をステップS26において取得した環境情報から特定することにより、音65を決定することができる。   The determination of the sound 65 to be pronounced will be described. In step S25, when it is determined that the collision has occurred because the condition NO31 satisfies “0001”, the condition NO61 is “0001”, which will be described later, but the collision source 62, the collision destination 63, and the existence space will be described later. The sound 65 can be determined by specifying 64 from the environment information acquired in step S26.

例えば、革靴を履いた人型オブジェクトが砂地の大地を歩くシーンでは、ステップS26において取得された環境情報により、衝突元62は「革靴」、衝突先63は「砂」、存在空間64は「通常」と定められる。そして、音65の「砂を踏む音」が決定される。   For example, in a scene in which a humanoid object wearing leather shoes walks on a sandy ground, the collision source 62 is “leather shoes”, the collision destination 63 is “sand”, and the existence space 64 is “normal” according to the environmental information acquired in step S26. ". Then, the sound 65 “sound on the sand” is determined.

存在空間64には、「通常」、「水中」、「洞窟」、「山脈」等、オブジェクトが存在する周囲の環境を表す情報が含まれる。例えば、通常の大気中にいるよりも、水中にいる場合には、音の伝わる速度が速く、発せられる音の聞こえ方が変化することを表現するものである。   The existence space 64 includes information representing the surrounding environment in which the object exists, such as “normal”, “underwater”, “cave”, “mountain range”, and the like. For example, it expresses that when the user is in the water rather than in the normal atmosphere, the speed at which the sound is transmitted is high and the way the sound is heard changes.

図6に戻り、ステップS27において発音した後、あるいは、ステップS25において衝突条件を満たさないと判定された場合(ステップS25にてNO)には、現在のフレームを次に更新する処理を行う(ステップS28)。ステップS22からステップS28までの処理は、オブジェクトがモーションを実行している間、繰り返し実行される。モーションが終了すると、本実施の形態のプログラム実行処理は終了する。   Returning to FIG. 6, after sounding in step S27, or if it is determined in step S25 that the collision condition is not satisfied (NO in step S25), a process of updating the current frame next is performed (step S25). S28). The processing from step S22 to step S28 is repeatedly executed while the object is executing a motion. When the motion ends, the program execution process of the present embodiment ends.

第四の実施の形態では、RPGについて述べたが、これに限定されない。すなわち、オブジェクトのモーションを使用するゲームであれば適用可能であり、アクションゲーム、パズルゲーム、シミュレーションゲーム等であってもよい。   In the fourth embodiment, RPG has been described. However, the present invention is not limited to this. That is, any game that uses the motion of an object is applicable, and may be an action game, a puzzle game, a simulation game, or the like.

第四の実施の形態では、発音処理について、発音マスタテーブルを用いる方法を記載したが、これに限定されない。マスタテーブルを使用せず、特定の条件の場合には特定の音を発するように設計するものであってもよい。   In the fourth embodiment, the method using the pronunciation master table is described for the pronunciation process, but the present invention is not limited to this. The master table may not be used and may be designed to emit a specific sound under specific conditions.

第四の実施の形態の一側面として、オブジェクトの仮想骨格等の情報に基づいて衝突判定を行うことで、オブジェクトの動作を検出することができ、オブジェクトのモーションが変更になった場合であっても開発者の設定が不要で、作業コストを削減することができる。また、物理的衝突判定を毎フレーム行うよりも、処理負荷を低く抑えることができる。さらに、階段や自然地形等で上下に起伏の大きい地面に対して、正確な接地判定ができないような状況や、コンピュータ制御により生成されたアニメーションにおいて予期せず接地判定ができずに足音が発せられないような不自然な状況においても、接地判定をすることができ、違和感なく発音処理を行うことができる。加えて、キャラクタがはしごを登る等、特殊な移動状況にあっても、自動的に足部の接地(はしごを踏み込んだタイミング等)を検出することができる。   As one aspect of the fourth embodiment, it is possible to detect the motion of the object by performing collision determination based on information such as the virtual skeleton of the object, and when the motion of the object is changed. However, no developer setting is required, and the work cost can be reduced. In addition, the processing load can be kept lower than when the physical collision determination is performed every frame. Furthermore, footsteps are generated when ground contact is not accurately detected on ground that is undulating up and down due to staircases or natural terrain, etc. Even in an unnatural situation where there is no such thing, it is possible to make a grounding determination, and sound generation processing can be performed without a sense of discomfort. In addition, even when the character is in a special movement situation such as climbing a ladder, it is possible to automatically detect the grounding of the foot (timing when the ladder is stepped on).

第四の実施の形態の一側面として、衝突先の他のオブジェクトの素材等に応じた、違和感のない音を発することができる。また、衝突元のオブジェクトに応じて異なる音を発音させることで、衝突元のオブジェクトの素材等に応じた、違和感のない音を発することができる。さらに、第四の実施の形態の一側面として、衝突先の他のオブジェクトに応じて異なる音を発音させることで、衝突先の他のオブジェクトの素材等に応じた、違和感のない音を発することができる。   As one aspect of the fourth embodiment, it is possible to emit a sound without a sense of incongruity according to the material of another object at the collision destination. In addition, by generating different sounds according to the collision source object, it is possible to generate a sound with no sense of incongruity according to the material of the collision source object. Furthermore, as one aspect of the fourth embodiment, by generating different sounds according to the other objects of the collision destination, generating a sound without a sense of incongruity according to the material of the other objects of the collision destination Can do.

第四の実施の形態の一側面として、衝突元のオブジェクト及び衝突先の他のオブジェクトに応じて異なる音を発音させることで、衝突し合うオブジェクトに応じた音を発することができ、より現実的な音を提供することができる。   As one aspect of the fourth embodiment, by generating different sounds according to the collision source object and the other objects of the collision destination, it is possible to generate a sound according to the colliding object, which is more realistic. Sound can be provided.

第四の実施の形態の一側面として、仮想骨格の位置、移動速度、及び/若しくは、加速度、並びに/又は、仮想骨格と仮想骨格から形成される仮想関節の角度及び/若しくは角速度が所定の条件を満たす場合に衝突したと判定することで、シミュレーションにより動作するオブジェクトのモーション等、衝突のタイミングが固定されないモーションに対して、衝突タイミングを自動的に検出することが可能となる。   As one aspect of the fourth embodiment, the position, moving speed, and / or acceleration of the virtual skeleton and / or the angle and / or angular velocity of the virtual joint formed from the virtual skeleton and the virtual skeleton are predetermined conditions. By determining that a collision occurs when the condition is satisfied, it is possible to automatically detect the collision timing with respect to a motion whose collision timing is not fixed, such as a motion of an object operating by simulation.

第四の実施の形態の一側面として、仮想骨格等が所定の条件を満たす場合に衝突したと判定することで、シミュレーションにより動作するオブジェクトのモーション等、衝突のタイミングが固定されないモーションに対して、衝突タイミングを自動的に検出することが可能となる。   As one aspect of the fourth embodiment, by determining that the virtual skeleton or the like has collided when the predetermined condition is satisfied, for the motion whose collision timing is not fixed, such as the motion of the object operated by the simulation, The collision timing can be automatically detected.

第四の実施の形態において、「コンピュータ装置」、「オブジェクト」、「仮想骨格」、及び、「位置情報」とは、それぞれ第一の実施の形態において記載した内容と同一である。また、「発音処理」とは、それぞれ第二の実施の形態において記載した内容と同一である。   In the fourth embodiment, “computer device”, “object”, “virtual skeleton”, and “position information” are the same as those described in the first embodiment. The “sound generation process” is the same as that described in the second embodiment.

第四の実施の形態において、「移動速度」、「加速度」、「仮想関節」、及び、「角速度」とは、第三の実施の形態において記載した内容と同一である。   In the fourth embodiment, “movement speed”, “acceleration”, “virtual joint”, and “angular velocity” are the same as those described in the third embodiment.

[付記]
上で述べた実施の形態の説明は、下記の発明を、発明の属する分野における通常の知識を有する者がその実施をすることができるように記載した。
[Appendix]
The above description of the embodiments described the following invention so that a person having ordinary knowledge in the field to which the invention belongs can carry out the invention.

[1] コンピュータ装置を、
オブジェクトが有する仮想骨格の位置に関する位置情報を取得する位置情報取得手段、
取得した位置情報が所定の条件を満たす場合に、オブジェクトが他のオブジェクトと衝突したと判定する衝突判定手段、
として機能させるプログラム。
[1] A computer device
Position information acquisition means for acquiring position information regarding the position of the virtual skeleton possessed by the object;
A collision determination means for determining that the object has collided with another object when the acquired position information satisfies a predetermined condition;
Program to function as.

[2] コンピュータ装置を、
衝突判定手段によりオブジェクトが他のオブジェクトと衝突したと判定されたタイミングにおいて、発音処理を実行する発音手段
として機能させる、[1]に記載のプログラム。
[2] A computer device
The program according to [1], wherein the program is caused to function as sound generation means for executing sound generation processing at a timing when the object is determined to have collided with another object by the collision determination means.

[3] 衝突判定手段が、仮想骨格の位置、移動速度、及び/若しくは、加速度、並びに/又は、仮想骨格と仮想骨格から形成される仮想関節の角度及び/若しくは角速度が所定の条件を満たす場合に、オブジェクトが他のオブジェクトと衝突したと判定するものである、[1]又は[2]に記載のプログラム。 [3] When the collision determination means satisfies the predetermined condition for the position, moving speed, and / or acceleration of the virtual skeleton and / or the angle and / or angular velocity of the virtual joint formed from the virtual skeleton and the virtual skeleton. The program according to [1] or [2], which determines that the object has collided with another object.

[4] 発音手段が、衝突したと判定されたオブジェクトに応じて異なる音を発音する、[2]又は[3]に記載のプログラム。 [4] The program according to [2] or [3], wherein the sound generation unit generates different sounds depending on the object determined to have collided.

[5] 発音手段が、衝突したと判定された他のオブジェクトに応じて異なる音を発音する、[2]〜[4]のいずれかに記載のプログラム。 [5] The program according to any one of [2] to [4], wherein the sound generation unit generates different sounds depending on other objects determined to have collided.

[6] オブジェクトがキャラクタの足部であり、
衝突判定手段が、位置情報取得手段により取得した位置情報に基づいて算出される、足部の仮想骨格の移動速度、及び、足部の仮想骨格と脚部の仮想骨格により形成される仮想関節の角度が所定の条件を満たす場合に、オブジェクトが他のオブジェクトと衝突したと判定する、[1]〜[5]のいずれかに記載のプログラム。
[6] The object is a character's foot,
The collision determination unit calculates the moving speed of the virtual skeleton of the foot and the virtual joint formed by the virtual skeleton of the foot and the virtual skeleton of the leg calculated based on the positional information acquired by the positional information acquiring unit. The program according to any one of [1] to [5], which determines that an object has collided with another object when the angle satisfies a predetermined condition.

[7] オブジェクトがキャラクタの手部であり、
衝突判定手段が、位置情報取得手段により取得した位置情報に基づいて算出される、手部の仮想骨格の移動速度、及び、手部の仮想骨格と腕部の仮想骨格により形成される仮想関節の角度が所定の条件を満たす場合に、オブジェクトが他のオブジェクトと衝突したと判定する、[1]〜[6]のいずれかに記載のプログラム。
[7] The object is the character's hand,
The collision determination means is calculated based on the position information acquired by the position information acquisition means, the moving speed of the virtual skeleton of the hand, and the virtual joint formed by the virtual skeleton of the hand and the virtual skeleton of the arm. The program according to any one of [1] to [6], which determines that an object has collided with another object when the angle satisfies a predetermined condition.

[8] オブジェクトが有する仮想骨格の位置に関する位置情報を取得する位置情報取得手段と、
取得した位置情報が所定の条件を満たす場合に、オブジェクトが他のオブジェクトと衝突したと判定する衝突判定手段と
を備える、コンピュータ装置。
[8] Position information acquisition means for acquiring position information related to the position of the virtual skeleton possessed by the object;
A computer apparatus comprising: a collision determination unit that determines that an object has collided with another object when the acquired position information satisfies a predetermined condition.

[9] コンピュータ装置において実行される判定方法であって、
オブジェクトが有する仮想骨格の位置に関する位置情報を取得するステップと、
取得した位置情報が所定の条件を満たす場合に、オブジェクトが他のオブジェクトと衝突したと判定するステップと
を有する判定方法。
[9] A determination method executed in a computer device,
Obtaining position information regarding the position of the virtual skeleton possessed by the object;
And a step of determining that the object has collided with another object when the acquired position information satisfies a predetermined condition.

1 コンピュータ装置
11 制御部
12 RAM
13 ストレージ部
14 サウンド処理部
15 グラフィックス処理部
16 CD−ROMドライブ
17 通信インタフェース
18 インタフェース部
2 通信ネットワーク
20 入力部
21 サウンド出力装置
22 表示装置
23 表示画面
24 記録媒体
30 衝突条件マスタテーブル
60 発音マスタテーブル
DESCRIPTION OF SYMBOLS 1 Computer apparatus 11 Control part 12 RAM
DESCRIPTION OF SYMBOLS 13 Storage part 14 Sound processing part 15 Graphics processing part 16 CD-ROM drive 17 Communication interface 18 Interface part 2 Communication network 20 Input part 21 Sound output device 22 Display apparatus 23 Display screen 24 Recording medium 30 Collision condition master table 60 Pronunciation master table

Claims (8)

コンピュータ装置を、
オブジェクトが有する仮想骨格の位置に関する位置情報を取得する位置情報取得手段、
取得した位置情報が所定の条件を満たす場合に、オブジェクトが他のオブジェクトと衝突したと判定する衝突判定手段
として機能させるプログラム。
Computer equipment,
Position information acquisition means for acquiring position information regarding the position of the virtual skeleton possessed by the object;
A program that functions as a collision determination unit that determines that an object has collided with another object when the acquired position information satisfies a predetermined condition.
コンピュータ装置を、
衝突判定手段によりオブジェクトが他のオブジェクトと衝突したと判定されたタイミングにおいて、発音処理を実行する発音手段
として機能させる、請求項1に記載のプログラム。
Computer equipment,
The program according to claim 1, wherein the program is caused to function as a sound generation means for executing a sound generation process at a timing when the object is determined to have collided with another object by the collision determination means.
衝突判定手段が、仮想骨格の位置、移動速度、及び/若しくは、加速度、並びに/又は、仮想骨格と仮想骨格から形成される仮想関節の角度及び/若しくは角速度が所定の条件を満たす場合に、オブジェクトが他のオブジェクトと衝突したと判定するものである、請求項1又は2に記載のプログラム。 When the collision determination means satisfies the predetermined condition for the position, movement speed, and / or acceleration of the virtual skeleton and / or the angle and / or angular velocity of the virtual joint formed from the virtual skeleton and the virtual skeleton, The program according to claim 1, wherein the program determines that has collided with another object. 発音手段が、衝突したと判定されたオブジェクトに応じて異なる音を発音する、請求項2又は3に記載のプログラム。 The program according to claim 2 or 3, wherein the sound generation means generates different sounds depending on the object determined to have collided. 発音手段が、衝突したと判定された他のオブジェクトに応じて異なる音を発音する、請求項2〜4のいずれかに記載のプログラム。 The program according to any one of claims 2 to 4, wherein the sound generation means generates different sounds according to other objects determined to have collided. オブジェクトがキャラクタの足部であり、
衝突判定手段が、位置情報取得手段により取得した位置情報に基づいて算出される、足部の仮想骨格の移動速度、及び、足部の仮想骨格と脚部の仮想骨格により形成される仮想関節の角度が所定の条件を満たす場合に、オブジェクトが他のオブジェクトと衝突したと判定する、請求項1〜5のいずれかに記載のプログラム。
The object is the foot of the character,
The collision determination unit calculates the moving speed of the virtual skeleton of the foot and the virtual joint formed by the virtual skeleton of the foot and the virtual skeleton of the leg calculated based on the positional information acquired by the positional information acquiring unit. The program according to claim 1, wherein when the angle satisfies a predetermined condition, it is determined that the object has collided with another object.
オブジェクトが有する仮想骨格の位置に関する位置情報を取得する位置情報取得手段と、
取得した位置情報が所定の条件を満たす場合に、オブジェクトが他のオブジェクトと衝突したと判定する衝突判定手段と
を備える、コンピュータ装置。
Position information acquisition means for acquiring position information related to the position of the virtual skeleton possessed by the object;
A computer apparatus comprising: a collision determination unit that determines that an object has collided with another object when the acquired position information satisfies a predetermined condition.
コンピュータ装置において実行される判定方法であって、
オブジェクトが有する仮想骨格の位置に関する位置情報を取得するステップと、
取得した位置情報が所定の条件を満たす場合に、オブジェクトが他のオブジェクトと衝突したと判定するステップと
を有する判定方法。
A determination method executed in a computer device,
Obtaining position information regarding the position of the virtual skeleton possessed by the object;
And a step of determining that the object has collided with another object when the acquired position information satisfies a predetermined condition.
JP2016230637A 2016-11-28 2016-11-28 Program, computer apparatus, and determination method Active JP6329616B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016230637A JP6329616B1 (en) 2016-11-28 2016-11-28 Program, computer apparatus, and determination method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016230637A JP6329616B1 (en) 2016-11-28 2016-11-28 Program, computer apparatus, and determination method

Publications (2)

Publication Number Publication Date
JP6329616B1 JP6329616B1 (en) 2018-05-23
JP2018088102A true JP2018088102A (en) 2018-06-07

Family

ID=62186774

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016230637A Active JP6329616B1 (en) 2016-11-28 2016-11-28 Program, computer apparatus, and determination method

Country Status (1)

Country Link
JP (1) JP6329616B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110009749A (en) * 2019-04-17 2019-07-12 珠海金山网络游戏科技有限公司 A kind of virtual objects localization method, calculates equipment and storage medium at device
KR102638841B1 (en) * 2023-04-25 2024-02-21 블래스트 주식회사 Method for improving prediction performance of interference between body parts of animated character and device thereof

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06251122A (en) * 1993-03-01 1994-09-09 Nippon Telegr & Teleph Corp <Ntt> Walking action generation processing method
JP2001351124A (en) * 2000-06-05 2001-12-21 Square Co Ltd Computer-readable recording medium with program for displaying scene in which specific character carries out motion for contacting with another character recorded thereon, method, game machine and the program
JP2003044878A (en) * 2001-07-30 2003-02-14 Namco Ltd Image generation system, program, and information storage medium
JP2005021264A (en) * 2003-06-30 2005-01-27 Konami Computer Entertainment Yokyo Inc Game apparatus, control method of computer and program
JP2005056251A (en) * 2003-08-06 2005-03-03 Square Enix Co Ltd Three-dimensional image drawing device and method, program, and recording medium
JP2011125435A (en) * 2009-12-16 2011-06-30 Square Enix Co Ltd Sound effect information generating device, sound effect information generating method, and sound effect information generation program
JP2012133536A (en) * 2010-12-21 2012-07-12 Mitsubishi Precision Co Ltd Method of correcting action of object of three-dimensional computer graphics, apparatus employing such method and program for computer to execute such method
WO2014171200A1 (en) * 2013-04-16 2014-10-23 ソニー株式会社 Information processing device and information processing method, display device and display method, and information processing system

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06251122A (en) * 1993-03-01 1994-09-09 Nippon Telegr & Teleph Corp <Ntt> Walking action generation processing method
JP2001351124A (en) * 2000-06-05 2001-12-21 Square Co Ltd Computer-readable recording medium with program for displaying scene in which specific character carries out motion for contacting with another character recorded thereon, method, game machine and the program
JP2003044878A (en) * 2001-07-30 2003-02-14 Namco Ltd Image generation system, program, and information storage medium
JP2005021264A (en) * 2003-06-30 2005-01-27 Konami Computer Entertainment Yokyo Inc Game apparatus, control method of computer and program
JP2005056251A (en) * 2003-08-06 2005-03-03 Square Enix Co Ltd Three-dimensional image drawing device and method, program, and recording medium
JP2011125435A (en) * 2009-12-16 2011-06-30 Square Enix Co Ltd Sound effect information generating device, sound effect information generating method, and sound effect information generation program
JP2012133536A (en) * 2010-12-21 2012-07-12 Mitsubishi Precision Co Ltd Method of correcting action of object of three-dimensional computer graphics, apparatus employing such method and program for computer to execute such method
WO2014171200A1 (en) * 2013-04-16 2014-10-23 ソニー株式会社 Information processing device and information processing method, display device and display method, and information processing system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110009749A (en) * 2019-04-17 2019-07-12 珠海金山网络游戏科技有限公司 A kind of virtual objects localization method, calculates equipment and storage medium at device
CN110009749B (en) * 2019-04-17 2023-10-20 珠海金山数字网络科技有限公司 Virtual object positioning method, device, computing equipment and storage medium
KR102638841B1 (en) * 2023-04-25 2024-02-21 블래스트 주식회사 Method for improving prediction performance of interference between body parts of animated character and device thereof

Also Published As

Publication number Publication date
JP6329616B1 (en) 2018-05-23

Similar Documents

Publication Publication Date Title
US10022628B1 (en) System for feature-based motion adaptation
US8860732B2 (en) System and method for robust physically-plausible character animation
US8217995B2 (en) Providing a collaborative immersive environment using a spherical camera and motion capture
US8615383B2 (en) Immersive collaborative environment using motion capture, head mounted display, and cave
NL2002841C2 (en) Immersive collaborative environment using motion capture, head mounted display, and cave.
US20110293144A1 (en) Method and System for Rendering an Entertainment Animation
JP2019070909A (en) Information processing apparatus, information processing method, and program
KR20160080064A (en) Virtual sensor in a virtual environment
US20230334744A1 (en) Method and apparatus for generating walk animation of virtual role, device and storage medium
JP2009066064A (en) Program, information storage medium, and game device
JP7431955B2 (en) Virtual character control method, device and computer program in virtual environment
JP3926307B2 (en) Three-dimensional image drawing apparatus and method, program, and recording medium
JP5498437B2 (en) Information processing device, information processing method, information processing program, computer-readable recording medium storing information processing program, thickness region setting device, thickness region setting method, thickness region setting program, computer readable storing thickness region setting program Data structure related to various recording media and surfaces in virtual space
US10984571B2 (en) Preventing transition shocks during transitions between realities
JP2010257081A (en) Image procession method and image processing system
JP6329616B1 (en) Program, computer apparatus, and determination method
JP5546846B2 (en) Sound effect information generating device, sound effect information generating method, and sound effect information generating program
WO2019150781A1 (en) Information processing device, information processing method, and program
CN109710077B (en) Virtual object collision judgment method and device based on VR and locomotive practical training system
JP6452808B2 (en) Low latency simulation apparatus and method using direction prediction, and computer program therefor
US11602691B2 (en) Techniques for virtual reality boundaries and related systems and methods
US8538736B1 (en) System and method for simulating object weight in animations
WO2009039636A1 (en) Interactive sound synthesis
US9111391B2 (en) Image generating device, image generating method, and non-transitory information storage medium
JP6918189B2 (en) Simulation system and program

Legal Events

Date Code Title Description
A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20180322

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180327

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180420

R150 Certificate of patent or registration of utility model

Ref document number: 6329616

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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