JP4467590B2 - Drawing apparatus, drawing method, and drawing program - Google Patents

Drawing apparatus, drawing method, and drawing program Download PDF

Info

Publication number
JP4467590B2
JP4467590B2 JP2007053113A JP2007053113A JP4467590B2 JP 4467590 B2 JP4467590 B2 JP 4467590B2 JP 2007053113 A JP2007053113 A JP 2007053113A JP 2007053113 A JP2007053113 A JP 2007053113A JP 4467590 B2 JP4467590 B2 JP 4467590B2
Authority
JP
Japan
Prior art keywords
movement
vector data
vector
action
acceleration
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
JP2007053113A
Other languages
Japanese (ja)
Other versions
JP2008217352A (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.)
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 JP2007053113A priority Critical patent/JP4467590B2/en
Publication of JP2008217352A publication Critical patent/JP2008217352A/en
Application granted granted Critical
Publication of JP4467590B2 publication Critical patent/JP4467590B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Description

本発明は、複数の基準点を含む三次元画像によって表現されるオブジェクトを描画するための技術に関する。   The present invention relates to a technique for drawing an object represented by a three-dimensional image including a plurality of reference points.

従来から、RPG(ロールプレイングゲーム:プレイヤがゲームの世界の中であるキャラクタの役割を演じ、様々な経験を通して成長していく過程を楽しみながら、所定の目的を達成していくゲーム。)と呼ばれるゲームなどのビデオゲームが各種提供されている。   Conventionally, it is called RPG (Role Playing Game: A game in which a player plays the role of a character in the game world and enjoys the process of growing through various experiences while achieving a predetermined purpose). Various video games such as games are offered.

近年のビデオゲームにおける画像描画では、非常にリアルな表現が可能になっている。ところが、ビデオゲームにおいて布などの平面状のオブジェクトが風などになびく様子を表現する際には、一般に、モーフィングアニメーション(「ある形状から別の形状へ徐々に変化していく様子を表現するために作成された中間画像を用いて、その変化の様子を表現した動画」を意味する。)を用いてオブジェクトが揺らめく様子を表現する簡易な手法が用いられているため、単調な表現になってしまっていた。   In image drawing in recent video games, very realistic expression is possible. However, when expressing how a flat object such as cloth flutters in the wind or the like in a video game, in general, a morphing animation ("To express how a shape gradually changes from one shape to another." This means a moving image that expresses the state of the change using the created intermediate image.)) And uses a simple method to express how the object fluctuates. It was.

しかしながら、単調な表現とならないように、風の流れと連動したシミュレーションを行うこととすると、その計算が非常に複雑になるため、ビデオゲームのようなオブジェクトの描画を短時間で完成させる必要があるものに採用するのは適切でない。   However, in order to avoid a monotonous expression, it is necessary to complete the drawing of an object like a video game in a short time because the calculation becomes very complicated if the simulation is linked with the flow of the wind. It is not appropriate to adopt it for things.

シミュレーションを行う必要がないものとしては、布などの平面状のオブジェクトが風などによって揺らめく様子を仮想世界上でリアルに表現するためのものとして、オブジェクトを形成する骨格のベクトルと風や、風と同じようにオブジェクトに影響を与える慣性などの力のベクトルとによる演算を行うようにしたものがある(特許文献1参照)。   The ones that do not need to be simulated are to express the state in which a flat object such as a cloth fluctuates due to the wind in the virtual world. Similarly, there is a method in which calculation is performed using a force vector such as inertia that affects an object (see Patent Document 1).

また、風の動きではなく、液体状のものがゲーム内のオブジェクトの表面に沿って流れる動きを再現する際に、オブジェクト表面の法線ベクトルと、液体の流れのベクトルを演算することで液体シミュレーションを行うようにしたものがある(特許文献2参照)。   In addition, when recreating the movement of a liquid that flows along the surface of an object in the game, instead of the movement of the wind, a liquid simulation is performed by calculating the normal vector of the object surface and the vector of the liquid flow. (See Patent Document 2).

特開2005−56251号公報JP 2005-56251 A 特開2003−91738号公報JP 2003-91738 A

上述した特許文献1−2に記載された発明は、シミュレーションのための膨大な演算を行う必要はないが、依然として複雑な演算を必要とするため、布などの平面状のオブジェクトが風などによって揺らめく様子を、簡単な演算でリアルに表現することはできないという問題があった。   The invention described in Patent Document 1-2 described above does not need to perform an enormous calculation for simulation, but still requires a complicated calculation, so that a planar object such as a cloth fluctuates due to wind or the like. There was a problem that the situation could not be expressed realistically with simple calculations.

本発明は、上記の問題を解消すべく、布などの平面状のオブジェクトが風などによって揺らめく様子を、簡単な演算でリアルに表現することができるようにすることを目的とする。   In order to solve the above-described problem, an object of the present invention is to make it possible to realistically express how a planar object such as a cloth fluctuates due to a wind or the like by a simple calculation.

本発明の描画装置は、複数の基準点を含む三次元画像によって表現されるオブジェクトを描画する描画装置であって、前記複数の基準点を含む前記オブジェクトを描画する描画手段と、前記オブジェクトに含まれる複数の基準点それぞれの法線ベクトルを示す法線ベクトルデータを記憶する法線ベクトルデータ記憶手段と、前記オブジェクトに含まれる複数の基準点それぞれの移動加速度である移動加速度ベクトルを示す加速度ベクトルデータを記憶する加速度ベクトルデータ記憶手段と、前記オブジェクトの外形に影響を及ぼす風などの作用の内容を示す作用ベクトルを示す作用ベクトルデータを算出する作用ベクトルデータ算出手段と、該作用ベクトルデータ算出手段によって算出された作用ベクトルデータと、前記オブジェクトに含まれる各基準点の法線ベクトルを示す法線ベクトルデータと、前記オブジェクトに含まれる各基準点の移動加速度である移動加速度ベクトルを示す加速度ベクトルデータとにもとづいて当該各基準点それぞれの移動先を特定可能な移動ベクトルデータを算出する移動ベクトルデータ算出手段と、該移動ベクトルデータ算出手段によって算出された各基準点それぞれの移動先を示す移動点を算出する移動点算出手段と、を備え、前記描画手段は、前記移動点算出手段によって算出されたそれぞれの移動点に対応するそれぞれの基準点を移動させ、当該移動点を新たな基準点として前記オブジェクトを描画し、前記移動ベクトルデータ算出手段は、単位作用ベクトルと法線ベクトルとの内積の絶対値を算出し、その算出結果と作用ベクトルとの積を算出し、算出した積に移動加速度ベクトルを加算することで移動ベクトルを示す移動ベクトルデータを算出することを特徴とする。 The drawing apparatus of the present invention is a drawing apparatus that draws an object represented by a three-dimensional image including a plurality of reference points, and includes a drawing unit that draws the object including the plurality of reference points, and the object Normal vector data storage means for storing normal vector data indicating normal vectors of a plurality of reference points, and acceleration vector data indicating movement acceleration vectors which are movement accelerations of the plurality of reference points included in the object Acceleration vector data storage means for storing action vector data, action vector data calculation means for calculating action vector data indicating action vectors indicating the contents of actions such as wind affecting the outer shape of the object, and action vector data calculation means. Calculated action vector data and included in the object And the normal vector data indicating a vector of each reference point that, based on the acceleration vector data representing the movement acceleration vector is a movement acceleration of the reference point included in the object, move the respective said each reference point Movement vector data calculation means for calculating movement vector data that can identify the data, and movement point calculation means for calculating a movement point indicating the movement destination of each reference point calculated by the movement vector data calculation means, The drawing means moves each reference point corresponding to each movement point calculated by the movement point calculation means, draws the object using the movement point as a new reference point , and the movement vector data calculation means Calculates the absolute value of the inner product of the unit action vector and the normal vector, and the product of the calculation result and the action vector. Calculated, and calculates a movement vector data indicating the motion vector by adding the movement acceleration vector calculated product.

上記の構成としたことで、布などの平面状のオブジェクトが風などによって揺らめく様子を、簡単な演算でリアルに表現することができるようになる。   With the above configuration, it is possible to realistically express how a planar object such as a cloth fluctuates due to wind or the like with a simple calculation.

また、本発明の描画方法は、複数の基準点を含む三次元画像によって表現されるオブジェクトを描画する描画方法であって、前記複数の基準点を含む前記オブジェクトを描画する描画処理と、前記オブジェクトの外形に影響を及ぼす風などの作用の内容を示す作用ベクトルを示す作用ベクトルデータを算出する作用ベクトルデータ算出処理と、該作用ベクトルデータ算出処理にて算出した作用ベクトルデータと、前記オブジェクトに含まれる複数の基準点それぞれの法線ベクトルを示す法線ベクトルデータを記憶する法線ベクトルデータ記憶手段に記憶された当該法線ベクトルデータと、前記オブジェクトに含まれる複数の基準点それぞれの移動加速度である移動加速度ベクトルを示す加速度ベクトルデータを記憶する加速度ベクトルデータ記憶手段に記憶された当該加速度ベクトルデータとにもとづいて、所定の演算式を用いて、当該各基準点それぞれの移動先を特定可能な移動ベクトルデータを算出する移動ベクトルデータ算出処理と、該移動ベクトルデータ算出処理にて算出した各基準点それぞれの移動先を示す移動点を算出する移動点算出処理と、含み、前記描画処理では、前記移動点算出処理にて算出したそれぞれの移動点に対応するそれぞれの基準点を移動させ、当該移動点を新たな基準点として前記オブジェクトを描画し、前記移動ベクトルデータ算出処理では、単位作用ベクトルと法線ベクトルとの内積の絶対値を算出し、その算出結果と作用ベクトルとの積を算出し、算出した積に移動加速度ベクトルを加算することで移動ベクトルを示す移動ベクトルデータを算出することを特徴とする。 The drawing method of the present invention is a drawing method for drawing an object represented by a three-dimensional image including a plurality of reference points, the drawing process for drawing the object including the plurality of reference points, and the object Included in the object is action vector data calculation processing for calculating action vector data indicating action vectors indicating the contents of the action such as wind that affects the outer shape of the action vector, action vector data calculated by the action vector data calculation process, and The normal vector data stored in the normal vector data storage means for storing normal vector data indicating the normal vectors of each of the plurality of reference points, and the movement acceleration of each of the plurality of reference points included in the object. Acceleration vector data for storing acceleration vector data indicating a certain moving acceleration vector Based on the said acceleration vector data stored in憶means, using a predetermined arithmetic expression, a movement vector data calculation process of calculating the movement vector data capable of identifying the respective reference point each destination, the mobile A movement point calculation process for calculating a movement point indicating a movement destination of each reference point calculated in the vector data calculation process, and the drawing process corresponds to each movement point calculated in the movement point calculation process Each reference point to be moved, the object is drawn with the movement point as a new reference point, and in the movement vector data calculation process, the absolute value of the inner product of the unit action vector and the normal vector is calculated, The product of the calculation result and the action vector is calculated, and the movement vector data indicating the movement vector is obtained by adding the movement acceleration vector to the calculated product. Characterized in that it out.

さらに、本発明の描画プログラムは、複数の基準点を含む三次元画像によって表現されるオブジェクトを描画させる描画プログラムであって、コンピュータに、前記複数の基準点を含む前記オブジェクトを描画する描画処理と、前記オブジェクトの外形に影響を及ぼす風などの作用の内容を示す作用ベクトルを示す作用ベクトルデータを算出する作用ベクトルデータ算出処理と、該作用ベクトルデータ算出処理にて算出した作用ベクトルデータと、前記オブジェクトに含まれる複数の基準点それぞれの法線ベクトルを示す法線ベクトルデータを記憶する法線ベクトルデータ記憶手段に記憶された当該法線ベクトルデータと、前記オブジェクトに含まれる複数の基準点それぞれの移動加速度である移動加速度ベクトルを示す加速度ベクトルデータを記憶する加速度ベクトルデータ記憶手段に記憶された当該加速度ベクトルデータとにもとづいて、所定の演算式を用いて、当該各基準点それぞれの移動先を特定可能な移動ベクトルデータを算出する移動ベクトルデータ算出処理と、該移動ベクトルデータ算出処理にて算出した各基準点それぞれの移動先を示す移動点を算出する移動点算出処理と、実行させ、前記描画処理では、前記移動点算出処理にて算出したそれぞれの移動点に対応するそれぞれの基準点を移動させ、当該移動点を新たな基準点として前記オブジェクトを描画する処理を実行させ、前記移動ベクトルデータ算出処理では、単位作用ベクトルと法線ベクトルとの内積の絶対値を算出し、その算出結果と作用ベクトルとの積を算出し、算出した積に移動加速度ベクトルを加算することで移動ベクトルを示す移動ベクトルデータを算出する処理を実行させるためのものである。

Further, the drawing program of the present invention is a drawing program for drawing an object represented by a three-dimensional image including a plurality of reference points, wherein the computer includes a drawing process for drawing the object including the plurality of reference points. , Action vector data calculation processing for calculating action vector data indicating action vectors indicating the contents of action such as wind that affects the outer shape of the object, action vector data calculated by the action vector data calculation process, Normal vector data stored in normal vector data storage means for storing normal vector data indicating normal vectors of a plurality of reference points included in the object, and each of the plurality of reference points included in the object Acceleration vector data indicating the movement acceleration vector, which is the movement acceleration Based on the stored the acceleration vector data to the acceleration vector data storage means for storing, using a predetermined arithmetic expression, movement vector data for calculating a movement vector data capable of identifying the respective reference point each destination A calculation process, and a movement point calculation process for calculating a movement point indicating a movement destination of each reference point calculated in the movement vector data calculation process. In the movement vector data calculation process, the unit action vector and the normal vector are executed by moving the respective reference points corresponding to the respective movement points and drawing the object using the movement point as a new reference point. The absolute value of the inner product is calculated, the product of the calculation result and the action vector is calculated, and the moving acceleration vector is added to the calculated product. Calculation is intended for executing a process of calculating the movement vector data indicating a movement vector by.

本発明によれば、布などの平面状のオブジェクトが風などによって揺らめく様子を、簡単な演算でリアルに表現することができるようになる。   According to the present invention, it is possible to realistically represent a state in which a planar object such as a cloth fluctuates due to wind or the like by a simple calculation.

以下、本発明の一実施の形態について図面を参照して説明する。   Hereinafter, an embodiment of the present invention will be described with reference to the drawings.

図1は、本発明の一実施の形態における描画装置の一例を示すビデオゲーム装置100の構成の例を示すブロック図である。図1に示すように、本例のビデオゲーム装置100は、ビデオゲーム装置本体10と、表示装置50と、サウンド出力装置60とを含む。ビデオゲーム装置本体10は、例えば市販のビデオゲーム機によって構成される。また、表示装置50は、例えばテレビジョン装置や液晶表示装置などによって構成され、画像表示部51を有している。   FIG. 1 is a block diagram showing an example of the configuration of a video game apparatus 100 showing an example of a drawing apparatus according to an embodiment of the present invention. As shown in FIG. 1, the video game apparatus 100 of this example includes a video game apparatus main body 10, a display device 50, and a sound output device 60. The video game apparatus body 10 is configured by, for example, a commercially available video game machine. The display device 50 is configured by, for example, a television device or a liquid crystal display device, and includes an image display unit 51.

ビデオゲーム装置本体10は、制御部11と、RAM12と、ハードディスクドライブ(HDD)13と、サウンド処理部14と、グラフィック処理部15と、DVD/CD−ROMドライブ16と、通信インターフェイス17と、インターフェイス部18と、フレームメモリ19と、メモリーカードスロット20と、入力インターフェイス部21とを含む。   The video game apparatus body 10 includes a control unit 11, a RAM 12, a hard disk drive (HDD) 13, a sound processing unit 14, a graphic processing unit 15, a DVD / CD-ROM drive 16, a communication interface 17, and an interface. A unit 18, a frame memory 19, a memory card slot 20, and an input interface unit 21 are included.

制御部11、RAM12、ハードディスクドライブ(HDD)13、サウンド処理部14、グラフィック処理部15、DVD/CD−ROMドライブ16、通信インターフェイス17、及びインターフェイス部18は、それぞれ内部バス22に接続されている。   The control unit 11, RAM 12, hard disk drive (HDD) 13, sound processing unit 14, graphic processing unit 15, DVD / CD-ROM drive 16, communication interface 17, and interface unit 18 are each connected to an internal bus 22. .

制御部11は、CPUやROMなどを含み、HDD13や記憶媒体70に格納された制御プログラムに従ってビデオゲーム装置100全体の制御を行う。制御部11は、タイマ割り込みを発生させるため等に用いられる内部タイマを備えている。RAM12は、制御部11のワークエリアとして用いられる。HDD13は、制御プログラムや各種のデータを保存するための記憶領域である。   The control unit 11 includes a CPU, a ROM, and the like, and controls the entire video game apparatus 100 according to a control program stored in the HDD 13 or the storage medium 70. The control unit 11 includes an internal timer that is used to generate a timer interrupt. The RAM 12 is used as a work area for the control unit 11. The HDD 13 is a storage area for storing control programs and various data.

サウンド処理部14は、例えばスピーカによって構成されるサウンド出力装置60に接続される。サウンド処理部14は、制御プログラムに従って処理を実行している制御部11からのサウンド出力指示に従って、サウンド出力装置60に対してサウンド信号を出力する。なお、サウンド出力装置60は、表示装置50あるいはビデオゲーム装置本体10に内蔵されていてもよい。   The sound processing unit 14 is connected to a sound output device 60 configured by, for example, a speaker. The sound processing unit 14 outputs a sound signal to the sound output device 60 in accordance with a sound output instruction from the control unit 11 executing processing according to the control program. The sound output device 60 may be built in the display device 50 or the video game apparatus main body 10.

グラフィック処理部15は、画面表示がなされる画像表示部51を有する表示装置50に接続される。グラフィック処理部15は、制御部11からの描画命令に従って、フレームメモリ19に画像を展開するとともに、画像表示部51に画像を表示させるためのビデオ信号を表示装置50に対して出力する。ビデオ信号によって表示される画像の切替時間は、例えば、1フレームあたり1/30秒とされる。   The graphic processing unit 15 is connected to a display device 50 having an image display unit 51 that displays a screen. The graphic processing unit 15 develops an image in the frame memory 19 according to a drawing command from the control unit 11 and outputs a video signal for causing the image display unit 51 to display an image to the display device 50. The switching time of the image displayed by the video signal is, for example, 1/30 second per frame.

DVD/CD−ROMドライブ16には、DVD−ROMやCD−ROMなどのゲーム用の制御プログラムが格納された記憶媒体70が装着される。DVD/CD−ROMドライブ16は、装着された記憶媒体70から、制御プログラムなどの各種データを読み出す処理を行う。   The DVD / CD-ROM drive 16 is loaded with a storage medium 70 storing a game control program such as a DVD-ROM or a CD-ROM. The DVD / CD-ROM drive 16 performs processing for reading various data such as a control program from the mounted storage medium 70.

通信インターフェイス17は、インターネットなどの通信ネットワーク80に無線あるいは有線によって接続される。ビデオゲーム装置本体10は、通信インターフェイス17における通信機能を用いて、通信ネットワーク80を介して例えば他のコンピュータとの通信を行う。   The communication interface 17 is connected to a communication network 80 such as the Internet by wireless or wired. The video game apparatus body 10 communicates with, for example, another computer via the communication network 80 using the communication function in the communication interface 17.

インターフェイス部18には、入力インターフェイス部21と、メモリカードスロット20とが接続される。インターフェイス部18は、プレイヤによるキーパッド30の操作にもとづく入力インターフェイス部21からの指示データをRAM12に格納する。すると、RAM12に格納された指示データに従って、制御部11が各種の演算処理を実行する。   An input interface unit 21 and a memory card slot 20 are connected to the interface unit 18. The interface unit 18 stores in the RAM 12 instruction data from the input interface unit 21 based on the operation of the keypad 30 by the player. Then, according to the instruction data stored in the RAM 12, the control unit 11 executes various arithmetic processes.

また、インターフェイス部18は、制御部11からの指示に従って、RAM12に記憶されているゲームの進行状況を示すデータをメモリカードスロット20に装着されているメモリーカード90に格納する処理や、メモリーカード90に保存されている中断時のゲームのデータを読み出してRAM12に転送する処理などを行う。   In addition, the interface unit 18 stores data indicating the progress of the game stored in the RAM 12 in the memory card 90 installed in the memory card slot 20 according to an instruction from the control unit 11, The game data stored at the time of interruption is read out and transferred to the RAM 12.

ビデオゲーム装置100でゲームを行うための制御プログラムなどの各種のデータは、例えば記憶媒体70に記憶されている。記憶媒体70に記憶されている制御プログラムなどの各種のデータは、記憶媒体70が装着されているDVD/CD−ROMドライブ16によって読み出され、RAM12にロードされる。制御部11は、RAM12にロードされた制御プログラムに従って、グラフィック処理部15に対して描画命令を出力する処理や、サウンド処理部14に対してサウンド出力の指示を出力する処理などの各種の処理を実行する。なお、制御部11が処理を実行している間は、ワークメモリとして用いられるRAM12に、ゲームの進行状況によって中間的に発生するデータ(例えば、ゲームの得点、プレイヤキャラクタの状態を示すデータなど)が保存される。   Various data such as a control program for playing a game on the video game apparatus 100 is stored in the storage medium 70, for example. Various data such as a control program stored in the storage medium 70 is read by the DVD / CD-ROM drive 16 in which the storage medium 70 is mounted and loaded into the RAM 12. The control unit 11 performs various processes such as a process of outputting a drawing command to the graphic processing unit 15 and a process of outputting a sound output instruction to the sound processing unit 14 according to the control program loaded in the RAM 12. Execute. It should be noted that while the control unit 11 is executing processing, data that is generated intermediately in the RAM 12 used as a work memory depending on the progress of the game (for example, data indicating the score of the game, the state of the player character, etc.) Is saved.

この実施の形態に係る3次元ビデオゲームは、仮想3次元空間に設けられたフィールド上でゲームが進行していくものであるものとする。なお、フィールドが形成された仮想3次元空間は、ワールド座標系によって示されるものとする。フィールドは、複数の面で構成され、各構成面の頂点の座標を特徴点として表したものである。   The three-dimensional video game according to this embodiment is assumed to be a game that progresses on a field provided in a virtual three-dimensional space. Note that the virtual three-dimensional space in which the field is formed is indicated by the world coordinate system. The field is composed of a plurality of surfaces, and the coordinates of the vertices of each component surface are represented as feature points.

次に、本例のビデオゲーム装置100の動作について説明する。
ここでは、説明を簡単にするため、本発明に特に関わる処理以外は、説明を省略している場合があるものとする。なお、本例では、RPGについてのビデオゲーム制御が実行されるものとする。
Next, the operation of the video game apparatus 100 of this example will be described.
Here, in order to simplify the description, the description may be omitted except for the processing particularly related to the present invention. In this example, it is assumed that video game control for RPG is executed.

図2は、本例のビデオゲーム装置100におけるメイン処理の例を示すフローチャートである。メイン処理は、1フレーム分の画像を生成するための処理、及びビデオゲームの制御に必要な処理であり、1/30秒ごとのタイマ割り込みに応じて実行される。なお、「1/30秒ごと」は一例であり、メイン処理は、例えば、1フィールド期間(1/60秒)ごとのタイマ割り込みに応じて実行されるものとしても、処理量によっては2フレーム期間(1/15秒)ごとのタイマ割り込みに応じて実行されるものとしてもよい。   FIG. 2 is a flowchart showing an example of main processing in the video game apparatus 100 of the present example. The main process is a process for generating an image for one frame and a process necessary for controlling the video game, and is executed in response to a timer interrupt every 1/30 seconds. Note that “every 1/30 seconds” is an example, and the main process may be executed in response to a timer interrupt for each field period (1/60 seconds), for example, depending on the amount of processing. It may be executed in response to a timer interrupt every (1/15 seconds).

メイン処理において、制御部11は、ゲーム開始前であればプレイヤによるキーパッド30の操作によりゲームの開始指示があったか否かを判定し、ゲームの実行中であれば場面変更(例えばフィールドの変更)を行うタイミングとなったか否かを判定する(ステップS101)。場面変更を行うタイミングは、例えば、これまで画像表示部51に表示していた場面(例えば、仮想3次元空間によって表されている場面)を終了し、新たな場面に切り替えるために、画像表示部51に新たな場面を示す仮想3次元空間を表示するタイミングを意味する。   In the main process, the control unit 11 determines whether or not the game is instructed to start by operating the keypad 30 before the game starts, and changes the scene (for example, changes in the field) if the game is being executed. It is determined whether or not it is time to perform (step S101). The timing for changing the scene is, for example, in order to end a scene (for example, a scene represented by a virtual three-dimensional space) that has been displayed on the image display unit 51 so far and switch to a new scene. 51 indicates the timing for displaying a virtual three-dimensional space indicating a new scene.

ゲームの開始指示があったと判定したとき、あるいは場面変更を行うタイミングとなったと判定したときは(ステップS101のY)、制御部11は、制御プログラムに従って、初期画面(ゲーム開始時の初期画面、場面変更時の初期画面)を決定する(ステップS102)。なお、ゲームに用いられる画面やキャラクタなどの各種のデータは、記憶媒体70に格納されている。   When it is determined that there is an instruction to start the game, or when it is determined that it is time to change the scene (Y in step S101), the control unit 11 performs an initial screen (an initial screen at the start of the game, The initial screen when changing the scene is determined (step S102). Various data such as screens and characters used in the game are stored in the storage medium 70.

次いで、制御部11は、仮想カメラの視点の位置、視軸の方向、および視角の大きさを、制御プログラムに従って決定し、透視変換を行うための仮想カメラの初期設定を行う(ステップS103)。そして、ステップS115に移行する。   Next, the control unit 11 determines the position of the viewpoint of the virtual camera, the direction of the visual axis, and the size of the viewing angle according to the control program, and performs initial setting of the virtual camera for performing perspective transformation (step S103). Then, the process proceeds to step S115.

ゲームの実行中であり場面変更を行うタイミングでないと判定したときは(ステップS101のN)、制御部11は、プレイヤによるキーパッド30の操作にもとづく指示データを受け付ける(ステップS104)。ステップS104にて移動に関する行動を指示するための指示データを受け付けた場合には(ステップS105のY)、制御部11は、受け付けた移動指示データに応じて移動処理を実行し(ステップS106)、移動処理に伴って派生するプレイヤキャラクタの位置情報にもとづいて移動情報を生成する(ステップS107)。そして、ステップS113に移行する。   When it is determined that the game is being executed and it is not time to change the scene (N in Step S101), the control unit 11 receives instruction data based on the operation of the keypad 30 by the player (Step S104). When instruction data for instructing an action related to movement is received in step S104 (Y in step S105), the control unit 11 executes a movement process according to the received movement instruction data (step S106). Movement information is generated based on the position information of the player character derived from the movement process (step S107). Then, the process proceeds to step S113.

ステップS104にて戦闘に関する行動を指示するための指示データを受け付けた場合には(ステップS108のY)、制御部11は、受け付けたバトル指示データに応じてバトル処理を実行し(ステップS109)、バトル処理によって決定された戦闘結果や戦闘経過にもとづいてバトル情報を生成する(ステップS110)。そして、ステップS113に移行する。   When the instruction data for instructing the action related to the battle is received in step S104 (Y in step S108), the control unit 11 executes a battle process in accordance with the received battle instruction data (step S109). Battle information is generated based on the battle result and battle progress determined by the battle process (step S110). Then, the process proceeds to step S113.

ステップS104にてその他の指示のための指示データを受け付けた場合には(ステップS111のY)、制御部11は、受け付けたその他指示データに応じた処理(例えば、会話、買物、拾得等)を実行し(ステップS112)、この処理結果に応じたその他の諸情報を生成する。そして、ステップS113に移行する。   When instruction data for other instructions is received in step S104 (Y in step S111), the control unit 11 performs processing (for example, conversation, shopping, picking up, etc.) according to the received other instruction data. This is executed (step S112), and other various information according to the processing result is generated. Then, the process proceeds to step S113.

ステップS113にて、制御部11は、ステップS107にて生成した移動情報をRAM12の所定のデータ領域に格納することにより、プレイヤキャラクタの現在位置を更新する。また、ステップS113にて、制御部11は、ステップS110にて生成したバトル情報や、ステップS112の後に生成したその他の諸情報をRAM12の所定のデータ領域に格納することにより、プレイヤキャラクタの各種の行動履歴を記憶保持する。   In step S113, the control unit 11 updates the current position of the player character by storing the movement information generated in step S107 in a predetermined data area of the RAM 12. Further, in step S113, the control unit 11 stores the battle information generated in step S110 and other information generated after step S112 in a predetermined data area of the RAM 12, thereby allowing the player character to perform various types of information. The action history is stored and retained.

次いで、制御部11は、RAM12に一旦格納されたプレイヤキャラクタの行動履歴を示す情報にもとづいて、行動評価処理を実行する(ステップS114)。   Next, the control unit 11 executes an action evaluation process based on the information indicating the action history of the player character once stored in the RAM 12 (step S114).

そして、制御部11は、仮想カメラの設定内容等に応じて、仮想カメラから表示すべきプレイヤキャラクタやノンプレイヤキャラクタを含む仮想3次元空間を仮想スクリーン上に透視変換して、画像表示部51に表示させる2次元画像を生成するための表示処理を行う(ステップS115)。表示処理を終了すると、今回のメイン処理を終了する。その後、次のフレーム期間の開始タイミングにおいてタイマ割り込みが発生すると、次回のメイン処理が実行されることとなる。そして、メイン処理が繰り返し実行されることで、キャラクタ画像がフレーム期間毎に切り替えられて、画像表示部51にて動画が表示されることになる。   Then, the control unit 11 perspective-transforms the virtual three-dimensional space including the player character and the non-player character to be displayed from the virtual camera on the virtual screen according to the setting contents of the virtual camera and the like on the image display unit 51. A display process for generating a two-dimensional image to be displayed is performed (step S115). When the display process is terminated, the main process is terminated. Thereafter, when a timer interrupt occurs at the start timing of the next frame period, the next main processing is executed. Then, by repeatedly executing the main process, the character image is switched for each frame period, and the moving image is displayed on the image display unit 51.

ここで、ステップS115の表示処理について簡単に説明する。ステップS115では、制御部11は、先ず、プレイヤキャラクタやノンプレイヤキャラクタを含む仮想3次元空間を構成するポリゴンの頂点の座標のうち、少なくとも仮想スクリーン上に透視変換される範囲に含まれるポリゴンの頂点の座標を、ワールド座標系の座標から視点座標系の座標に変換する。次いで、制御部11は、プレイヤキャラクタやノンプレイヤキャラクタについての視点座標系におけるポリゴンの頂点の座標とをグラフィック処理部15に送信し、グラフィック処理部15に対して描画命令を出力する。   Here, the display process in step S115 will be briefly described. In step S115, the control unit 11 firstly, among the coordinates of the vertices of the polygons constituting the virtual three-dimensional space including the player character and the non-player character, at least the vertices of the polygons included in the range to be perspectively transformed on the virtual screen. Is converted from coordinates in the world coordinate system to coordinates in the viewpoint coordinate system. Next, the control unit 11 transmits the coordinates of the vertexes of the polygons in the viewpoint coordinate system for the player character and the non-player character to the graphic processing unit 15, and outputs a drawing command to the graphic processing unit 15.

描画命令が入力されると、グラフィック処理部15は、視点座標系の座標にもとづいて、各面を構成する各点について、前側にある点のデータが残るようにZバッファの内容を更新する。Zバッファの内容を更新すると、グラフィック処理部15は、前側にある残った点についての画像データをフレームメモリ19に展開する。また、グラフィック処理部15は、展開される画像データに対して、シェーディングやテクスチャマッピングなどの処理も行う。   When a drawing command is input, the graphic processing unit 15 updates the contents of the Z buffer so that the point data on the front side remains for each point constituting each surface based on the coordinates of the viewpoint coordinate system. When the contents of the Z buffer are updated, the graphic processing unit 15 develops image data for the remaining points on the front side in the frame memory 19. The graphic processing unit 15 also performs processing such as shading and texture mapping on the developed image data.

そして、グラフィック処理部15は、フレームメモリ19に展開された画像データを順次読み出し、同期信号を付加してビデオ信号を生成し、表示装置50に出力する。表示装置50は、グラフィック処理部15から出力されたビデオ信号に対応した画像を画像表示部51に表示する。1フレーム時間ごとに画像表示部51の画像が切り替えられていくことで、プレイヤは、プレイヤキャラクタやノンプレイヤキャラクタがフィールド上を移動する様子を含む画像を見ることができる。   The graphic processing unit 15 sequentially reads the image data developed in the frame memory 19, adds a synchronization signal, generates a video signal, and outputs the video signal to the display device 50. The display device 50 displays an image corresponding to the video signal output from the graphic processing unit 15 on the image display unit 51. By switching the image of the image display unit 51 every frame time, the player can see an image including a state in which the player character and the non-player character move on the field.

次に、本例のビデオゲーム装置100の動作について説明する。   Next, the operation of the video game apparatus 100 of this example will be described.

図3は、本例のビデオゲーム装置100におけるオブジェクト描画処理の例を示すフローチャートである。ここでは、例えば図4に示すような平面状で、かつ風などの影響を受けて形状が変化するオブジェクトを描画する際の処理について説明する。なお、本発明に特に関わる処理以外は、説明を省略している場合があるものとする。このオブジェクト描画処理は、上述した表示処理(ステップS115)の一部である。   FIG. 3 is a flowchart showing an example of object drawing processing in the video game apparatus 100 of the present example. Here, for example, a description will be given of processing for drawing an object having a flat shape as shown in FIG. It should be noted that explanations may be omitted except for processing particularly related to the present invention. This object drawing process is a part of the display process (step S115) described above.

オブジェクト描画処理によって描画されるオブジェクトは、例えば、旗やカーテンなどを表現するための布状オブジェクトである。このオブジェクトの構造は、本例では、例えば図5に示すように、針金細工のような輪郭線で表現した所謂「ワイヤーフレーム」によって特定され、各ワイヤの接点それぞれが基準点として把握される。すなわち、布状オブジェクトは、各ワイヤの接点それぞれを基準点とするワイヤーフレームによって表現される。このように、布状オブジェクトは、複数の基準点を含む三次元画像によって表現される。各基準点は、例えば、オブジェクトを形成するポリゴンの頂点や自由曲面の制御点などの各定義点とされる。   An object drawn by the object drawing process is, for example, a cloth object for expressing a flag, a curtain, or the like. In this example, as shown in FIG. 5, for example, the structure of this object is specified by a so-called “wire frame” expressed by a contour line such as wirework, and each contact point of each wire is grasped as a reference point. That is, the cloth-like object is represented by a wire frame that uses the contact points of each wire as reference points. As described above, the cloth-like object is expressed by a three-dimensional image including a plurality of reference points. Each reference point is, for example, each definition point such as a vertex of a polygon forming an object or a control point of a free-form surface.

オブジェクト描画処理において、制御部11は、先ず、描画対象となるオブジェクトにおける各基準点の座標データ及び法線ベクトルデータを、記憶媒体70(オブジェクトの初期状態を表示する際のデータ(初期値)を読み出す場合)あるいはRAM12(オブジェクトの変化状態を表示する際のデータを読み出す場合)から読み出す(ステップS201)。法線ベクトルデータは、例えば図6に示すように、該当する基準点におけるオブジェクトの面の向きをそれぞれ特定するために、その基準点の法線ベクトルを示すデータである。オブジェクトにおける各基準点の座標データ及び法線ベクトルデータは、その初期値が記憶媒体70からRAM12に読み出され、RAM12上に設けられた法線ベクトルデータ管理領域にて管理される。   In the object drawing process, the control unit 11 first stores the coordinate data and normal vector data of each reference point in the object to be drawn as the storage medium 70 (data (initial value) when displaying the initial state of the object). The data is read from the RAM 12 (in the case of reading out) or from the RAM 12 (in the case of reading out data when displaying the change state of the object) (step S201). For example, as shown in FIG. 6, the normal vector data is data indicating a normal vector of the reference point in order to specify the orientation of the object surface at the corresponding reference point. The initial values of the coordinate data and normal vector data of each reference point in the object are read from the storage medium 70 to the RAM 12 and managed in a normal vector data management area provided on the RAM 12.

次に、制御部11は、作用ベクトルデータを算出する(ステップS202)。作用ベクトルデータは、オブジェクトの外形変化に影響を及ぼす風向きや風力などの作用の内容(向き、強さ)を示すベクトルデータである。本例では、作用ベクトルデータは、作用の要因となる風データ(風向き、風力)にもとづいて算出されるものとする。   Next, the control unit 11 calculates action vector data (step S202). The action vector data is vector data indicating the contents (direction and strength) of actions such as wind direction and wind force that affect the change in the outer shape of the object. In this example, it is assumed that the action vector data is calculated based on wind data (wind direction, wind force) that causes the action.

次いで、制御部11は、描画対象となるオブジェクトにおける各基準点の加速度ベクトルデータが後述する加速度ベクトルデータ管理領域に記憶されていれば、その加速度ベクトルデータをRAM12から読み出す(ステップS203)。加速度ベクトルデータは、それぞれ、描画対象となるオブジェクトに含まれる複数の基準点それぞれの移動加速度である移動加速度ベクトルを示すベクトルデータである。オブジェクトにおける各基準点の加速度ベクトルデータは、RAM12上に設けられた加速度ベクトルデータ管理領域にて管理される。   Next, if the acceleration vector data of each reference point in the object to be drawn is stored in an acceleration vector data management area described later, the control unit 11 reads the acceleration vector data from the RAM 12 (step S203). The acceleration vector data is vector data indicating a movement acceleration vector that is a movement acceleration of each of a plurality of reference points included in an object to be drawn. The acceleration vector data of each reference point in the object is managed in an acceleration vector data management area provided on the RAM 12.

次に、制御部11は、所定の演算式に当てはめて、各基準点の移動ベクトルを算出する(ステップS204)。本例では、所定の演算式として、下記の式1が用いられる。すなわち、制御部11は、式1を用いて、「単位移動ベクトル(windNormal)」と「法線ベクトル(crsNormal)」との内積の絶対値(abs)を求め、その結果と移動ベクトル(windVector)との積を算出し、移動加速度ベクトル(crsVelocity)が読み出されていれば移動加速度ベクトルを加算することで、各基準点の移動ベクトルを算出する。なお、移動加速度ベクトル(crsVelocity)が読み出されていなければ、「単位移動ベクトル(windNormal)」と「法線ベクトル(crsNormal)」との内積の絶対値(abs)と、移動ベクトル(windVector)との積を、各基準点の移動ベクトルとして算出する。   Next, the control unit 11 calculates a movement vector of each reference point by applying it to a predetermined arithmetic expression (step S204). In this example, the following formula 1 is used as the predetermined calculation formula. That is, the control unit 11 obtains the absolute value (abs) of the inner product of “unit movement vector (windNormal)” and “normal vector (crsNormal)” using Expression 1, and the result and the movement vector (windVector). The movement vector of each reference point is calculated by adding the movement acceleration vector if the movement acceleration vector (crsVelocity) is read. If the movement acceleration vector (crsVelocity) is not read, the absolute value (abs) of the inner product of the `` unit movement vector (windNormal) '' and `` normal vector (crsNormal) '', the movement vector (windVector) and Is calculated as a movement vector of each reference point.

Figure 0004467590
Figure 0004467590

具体的には、制御部11は、例えば図7(A)に示すようなある基準点の法線ベクトル(crsNormal)と単位移動ベクトルである風単位ベクトル(windNormal)について、図7(B)に示すような内積ベクトルを求める。そして、制御部11は、その内積ベクトルが示す値の絶対値(abs)を求め、その結果と移動ベクトルである風ベクトル(windVector)との積(図7(C)参照)算出し、移動加速度ベクトル(crsVelocity)が読み出されていれば移動加速度ベクトルを加算(図7(D)参照)することで、各基準点の移動ベクトルを算出する。このような演算処理を、制御部11は、各基準点について実行する。   Specifically, the control unit 11 uses, for example, a normal vector (crsNormal) of a certain reference point and a wind unit vector (windNormal) that is a unit movement vector as shown in FIG. Find the inner product vector as shown. And the control part 11 calculates | requires the absolute value (abs) of the value which the inner product vector shows, calculates the product (refer FIG.7 (C)) of the result and the wind vector (windVector) which is a movement vector, and movement acceleration If the vector (crsVelocity) has been read, the movement acceleration vector is added (see FIG. 7D) to calculate the movement vector of each reference point. The control unit 11 executes such arithmetic processing for each reference point.

各基準点の移動ベクトルを算出すると、制御部11は、ステップS201で読み出した各基準点の座標データと算出した各基準点の移動ベクトルとを用いて、各基準点の移動位置を算出する(ステップS205)。各基準点の移動位置である新基準点は、例えば図8に示すように、旧基準点から該当する移動ベクトルが示す向き及び大きさ(長さ)だけ移動した点となる。   When the movement vector of each reference point is calculated, the control unit 11 calculates the movement position of each reference point using the coordinate data of each reference point read in step S201 and the calculated movement vector of each reference point ( Step S205). For example, as shown in FIG. 8, the new reference point, which is the movement position of each reference point, is a point moved from the old reference point by the direction and size (length) indicated by the corresponding movement vector.

そして、制御部11は、算出した移動位置を基準点として、オブジェクトを描画する(ステップS206)。   Then, the control unit 11 draws an object using the calculated movement position as a reference point (step S206).

上記のステップS201〜ステップS206の処理を繰り返し実行することで、制御部11は、風などの外的要因によってオブジェクトが例えば図9に示すように揺らめいている様子を表示装置50の表示画面51に表示する。   By repeatedly executing the processes in steps S201 to S206, the control unit 11 displays on the display screen 51 of the display device 50 a state in which the object is flickering as shown in FIG. indicate.

以上に説明したように、上述した一実施の形態では、オブジェクトに含まれる複数の基準点それぞれの法線ベクトルを示す法線ベクトルデータを記憶するRAM12及び記憶媒体70を備え、制御部11が、複数の基準点を含む三次元画像によって表現されるオブジェクトを描画する描画処理(ステップS206)と、オブジェクトの外形に影響を及ぼす風などの作用の内容を示す作用ベクトルを示す作用ベクトルデータを算出する作用ベクトルデータ算出処理(ステップS202)と、算出した作用ベクトルデータと、オブジェクトに含まれる各基準点の法線ベクトルを示す法線ベクトルデータとにもとづいて、所定の演算式を用いて、当該各基準点それぞれの移動先を特定可能な移動ベクトルデータを算出する移動ベクトルデータ算出処理(ステップS204)と、算出した各基準点それぞれの移動先を示す移動点を算出する移動点算出処理(ステップS205)と、を実行し、描画処理にて、移動点算出処理にて算出したそれぞれの移動点に対応するそれぞれの基準点を移動させ、当該移動点を新たな基準点としてオブジェクトを描画する構成としたので、布などの平面状のオブジェクトが風などによって揺らめく様子を、簡単な演算でリアルに表現することができるようになる。   As described above, in the above-described embodiment, the control unit 11 includes the RAM 12 and the storage medium 70 that store normal vector data indicating the normal vectors of the plurality of reference points included in the object. A drawing process (step S206) for drawing an object expressed by a three-dimensional image including a plurality of reference points, and action vector data indicating action vectors indicating action contents such as wind affecting the outer shape of the object are calculated. Based on the action vector data calculation process (step S202), the calculated action vector data, and the normal vector data indicating the normal vector of each reference point included in the object, A movement vector data calculation process for calculating movement vector data that can specify the movement destination of each reference point. (Step S204) and a movement point calculation process (Step S205) for calculating a movement point indicating the movement destination of each calculated reference point, and a drawing process and a movement point calculation process. Each reference point corresponding to the moving point is moved, and the object is drawn using the moving point as a new reference point, so it is easy to calculate how a flat object such as cloth fluctuates due to wind. To be able to express realistically.

すなわち、布などの平面状のオブジェクトが風などによって揺らめく様子をリアルに表現する際の、制御部11の表示制御負担を軽減することができる。   In other words, it is possible to reduce the display control burden of the control unit 11 when the planar object such as the cloth is realistically expressed as being shaken by the wind.

また、上述した実施の形態では、複数の基準点を含む三次元画像によって表現されるオブジェクトに含まれる複数の基準点それぞれの移動加速度である移動加速度ベクトルを示す加速度ベクトルデータを記憶するRAM12を備え、制御部11が、移動ベクトルデータ算出処理(ステップS204)にて、オブジェクトに含まれる各基準点の移動加速度である移動加速度ベクトルを示す加速度ベクトルデータをも用いて、移動ベクトルデータを算出する構成としているので、オブジェクトが風などによって揺らめく様子を加速度ベクトルをも考慮してリアルに表現することが可能となる。   In the above-described embodiment, the RAM 12 stores acceleration vector data indicating the movement acceleration vector that is the movement acceleration of each of the plurality of reference points included in the object represented by the three-dimensional image including the plurality of reference points. In the movement vector data calculation process (step S204), the control unit 11 also calculates the movement vector data using the acceleration vector data indicating the movement acceleration vector that is the movement acceleration of each reference point included in the object. Therefore, it is possible to realistically express how the object fluctuates due to wind or the like in consideration of the acceleration vector.

また、上述した実施の形態では、所定の演算式は、移動加速度ベクトル+=移動ベクトル×|単位移動ベクトル・法線ベクトル|であり、制御部11が、移動ベクトルデータ算出処理(ステップS204)にて、その演算式を用いて移動ベクトルデータを算出するように構成しているので、布などの平面状のオブジェクトが風などによって揺らめく様子を、各基準点における法線ベクトルやゲーム中の仮想世界で吹いている風などによる作用ベクトルを用いた簡単な演算でリアルに表現することができるようになり、ビデオゲームのようなオブジェクトの描画を短時間で完成させる必要があるものについても対応することが可能となる。すなわち、ビデオゲームにおけるオブジェクトの描画を簡単で高速に行うことが可能となる。   In the above-described embodiment, the predetermined arithmetic expression is the movement acceleration vector + = movement vector × | unit movement vector / normal vector |, and the control unit 11 performs the movement vector data calculation process (step S204). Because the movement vector data is calculated using the calculation formula, the normal vector at each reference point and the virtual world in the game can be seen. It will be possible to express realistically with simple calculations using action vectors due to the wind blowing in, etc., and also support what needs to complete drawing of objects like video games in a short time Is possible. That is, it becomes possible to draw an object in a video game easily and at high speed.

なお、上述した実施の形態では、複数の基準点を含む三次元画像によって表現されるオブジェクトを表示する描画装置の例として、ビデオゲーム装置100を挙げて説明していたが、オブジェクトを表示するものであれば、どのような装置であっても好適に適用することができる。   In the above-described embodiment, the video game apparatus 100 has been described as an example of a drawing apparatus that displays an object represented by a three-dimensional image including a plurality of reference points. Any device can be suitably applied.

本発明によれば、布などの平面状のオブジェクトが風などによって揺らめく様子を、簡単な演算でリアルに表現することができるビデオゲーム装置などの描画装置に適用するのに有用である。   INDUSTRIAL APPLICABILITY According to the present invention, the present invention is useful for application to a drawing apparatus such as a video game apparatus that can realistically express a state in which a planar object such as a cloth fluctuates due to wind or the like by a simple calculation.

本発明の一実施の形態におけるビデオゲーム装置の構成例を示すブロック図である。It is a block diagram which shows the structural example of the video game device in one embodiment of this invention. メイン処理の例を示すフローチャートである。It is a flowchart which shows the example of a main process. オブジェクト描画処理の例を示すフローチャートである。It is a flowchart which shows the example of an object drawing process. 布などの平面状のオブジェクトを正面からみた正面図である。It is the front view which looked at planar objects, such as cloth, from the front. ワイヤーフレームによって表現されたオブジェクトの例を示す説明図である。It is explanatory drawing which shows the example of the object expressed by the wire frame. オブジェクトにおける各基準点に設定された法線ベクトルの例を示す説明図である。It is explanatory drawing which shows the example of the normal vector set to each reference point in an object. ベクトル演算の例を説明するための説明図である。It is explanatory drawing for demonstrating the example of vector calculation. 旧基準点と新基準点とを説明するための説明図である。It is explanatory drawing for demonstrating an old reference point and a new reference point. 布などの平面状のオブジェクトが揺らめいている様子を正面からみた正面図である。It is the front view which looked at a mode that planar objects, such as cloth, are shaking.

符号の説明Explanation of symbols

10 ビデオゲーム装置本体
11 制御部
12 RAM
13 HDD
14 サウンド処理部
15 グラフィック処理部
16 DVD/CD−ROM
17 通信インターフェイス
18 インターフェイス部
19 フレームメモリ
20 メモリーカードスロット
21 入力インターフェイス部
22 内部バス
30 キーパッド
50 表示装置
51 画像表示部
60 サウンド出力装置
70 記憶媒体
80 通信ネットワーク
90 メモリーカード
100 ビデオゲーム装置
10 Video Game Device Body 11 Control Unit 12 RAM
13 HDD
14 sound processing unit 15 graphic processing unit 16 DVD / CD-ROM
DESCRIPTION OF SYMBOLS 17 Communication interface 18 Interface part 19 Frame memory 20 Memory card slot 21 Input interface part 22 Internal bus 30 Keypad 50 Display device 51 Image display part 60 Sound output device 70 Storage medium 80 Communication network 90 Memory card 100 Video game device

Claims (3)

複数の基準点を含む三次元画像によって表現されるオブジェクトを描画する描画装置であって、
前記複数の基準点を含む前記オブジェクトを描画する描画手段と、
前記オブジェクトに含まれる複数の基準点それぞれの法線ベクトルを示す法線ベクトルデータを記憶する法線ベクトルデータ記憶手段と、
前記オブジェクトに含まれる複数の基準点それぞれの移動加速度である移動加速度ベクトルを示す加速度ベクトルデータを記憶する加速度ベクトルデータ記憶手段と、
前記オブジェクトの外形に影響を及ぼす風などの作用の内容を示す作用ベクトルを示す作用ベクトルデータを算出する作用ベクトルデータ算出手段と、
該作用ベクトルデータ算出手段によって算出された作用ベクトルデータと、前記オブジェクトに含まれる各基準点の法線ベクトルを示す法線ベクトルデータと、前記オブジェクトに含まれる各基準点の移動加速度である移動加速度ベクトルを示す加速度ベクトルデータとにもとづいて当該各基準点それぞれの移動先を特定可能な移動ベクトルデータを算出する移動ベクトルデータ算出手段と、
該移動ベクトルデータ算出手段によって算出された各基準点それぞれの移動先を示す移動点を算出する移動点算出手段と、を備え、
前記描画手段は、前記移動点算出手段によって算出されたそれぞれの移動点に対応するそれぞれの基準点を移動させ、当該移動点を新たな基準点として前記オブジェクトを描画し、
前記移動ベクトルデータ算出手段は、単位作用ベクトルと法線ベクトルとの内積の絶対値を算出し、その算出結果と作用ベクトルとの積を算出し、算出した積に移動加速度ベクトルを加算することで移動ベクトルを示す移動ベクトルデータを算出する
ことを特徴とする描画装置。
A drawing device for drawing an object represented by a three-dimensional image including a plurality of reference points,
Drawing means for drawing the object including the plurality of reference points;
Normal vector data storage means for storing normal vector data indicating normal vectors of each of a plurality of reference points included in the object;
Acceleration vector data storage means for storing acceleration vector data indicating a movement acceleration vector that is a movement acceleration of each of a plurality of reference points included in the object;
Action vector data calculating means for calculating action vector data indicating an action vector indicating the content of action such as wind that affects the outer shape of the object;
Action vector data calculated by the action vector data calculating means, normal vector data indicating a normal vector of each reference point included in the object, and movement acceleration that is a movement acceleration of each reference point included in the object based on the acceleration vector data indicating a vector, and motion vector data calculation means for calculating a movement vector data capable of identifying the respective reference point each destination,
Movement point calculation means for calculating a movement point indicating the movement destination of each reference point calculated by the movement vector data calculation means,
The drawing means moves each reference point corresponding to each movement point calculated by the movement point calculation means, draws the object using the movement point as a new reference point ,
The movement vector data calculation means calculates the absolute value of the inner product of the unit action vector and the normal vector, calculates the product of the calculation result and the action vector, and adds the movement acceleration vector to the calculated product. A drawing apparatus characterized by calculating movement vector data indicating a movement vector .
複数の基準点を含む三次元画像によって表現されるオブジェクトを描画する描画方法であって、
前記複数の基準点を含む前記オブジェクトを描画する描画処理と、
前記オブジェクトの外形に影響を及ぼす風などの作用の内容を示す作用ベクトルを示す作用ベクトルデータを算出する作用ベクトルデータ算出処理と、
該作用ベクトルデータ算出処理にて算出した作用ベクトルデータと、前記オブジェクトに含まれる複数の基準点それぞれの法線ベクトルを示す法線ベクトルデータを記憶する法線ベクトルデータ記憶手段に記憶された当該法線ベクトルデータと、前記オブジェクトに含まれる複数の基準点それぞれの移動加速度である移動加速度ベクトルを示す加速度ベクトルデータを記憶する加速度ベクトルデータ記憶手段に記憶された当該加速度ベクトルデータとにもとづいて、所定の演算式を用いて、当該各基準点それぞれの移動先を特定可能な移動ベクトルデータを算出する移動ベクトルデータ算出処理と、
該移動ベクトルデータ算出処理にて算出した各基準点それぞれの移動先を示す移動点を算出する移動点算出処理と、含み、
前記描画処理では、前記移動点算出処理にて算出したそれぞれの移動点に対応するそれぞれの基準点を移動させ、当該移動点を新たな基準点として前記オブジェクトを描画し、
前記移動ベクトルデータ算出処理では、単位作用ベクトルと法線ベクトルとの内積の絶対値を算出し、その算出結果と作用ベクトルとの積を算出し、算出した積に移動加速度ベクトルを加算することで移動ベクトルを示す移動ベクトルデータを算出する
ことを特徴とする描画方法。
A drawing method for drawing an object represented by a three-dimensional image including a plurality of reference points,
A drawing process for drawing the object including the plurality of reference points;
Action vector data calculation processing for calculating action vector data indicating action vectors indicating the contents of action such as wind that affects the outer shape of the object;
The method stored in the normal vector data storage means for storing the action vector data calculated in the action vector data calculation process and the normal vector data indicating the normal vectors of the plurality of reference points included in the object. Based on the line vector data and the acceleration vector data stored in the acceleration vector data storage means for storing the acceleration vector data indicating the movement acceleration vector that is the movement acceleration of each of the plurality of reference points included in the object , a predetermined value is obtained. A movement vector data calculation process for calculating movement vector data that can specify the movement destination of each reference point,
A movement point calculation process for calculating a movement point indicating a movement destination of each reference point calculated in the movement vector data calculation process,
In the drawing process, each reference point corresponding to each movement point calculated in the movement point calculation process is moved, the object is drawn using the movement point as a new reference point ,
In the movement vector data calculation process, the absolute value of the inner product of the unit action vector and the normal vector is calculated, the product of the calculation result and the action vector is calculated, and the movement acceleration vector is added to the calculated product. A drawing method characterized by calculating movement vector data indicating a movement vector .
複数の基準点を含む三次元画像によって表現されるオブジェクトを描画させる描画プログラムであって、
コンピュータに、
前記複数の基準点を含む前記オブジェクトを描画する描画処理と、
前記オブジェクトの外形に影響を及ぼす風などの作用の内容を示す作用ベクトルを示す作用ベクトルデータを算出する作用ベクトルデータ算出処理と、
該作用ベクトルデータ算出処理にて算出した作用ベクトルデータと、前記オブジェクトに含まれる複数の基準点それぞれの法線ベクトルを示す法線ベクトルデータを記憶する法線ベクトルデータ記憶手段に記憶された当該法線ベクトルデータと、前記オブジェクトに含まれる複数の基準点それぞれの移動加速度である移動加速度ベクトルを示す加速度ベクトルデータを記憶する加速度ベクトルデータ記憶手段に記憶された当該加速度ベクトルデータとにもとづいて、所定の演算式を用いて、当該各基準点それぞれの移動先を特定可能な移動ベクトルデータを算出する移動ベクトルデータ算出処理と、
該移動ベクトルデータ算出処理にて算出した各基準点それぞれの移動先を示す移動点を算出する移動点算出処理と、実行させ、
前記描画処理では、前記移動点算出処理にて算出したそれぞれの移動点に対応するそれぞれの基準点を移動させ、当該移動点を新たな基準点として前記オブジェクトを描画する処理を実行させ、
前記移動ベクトルデータ算出処理では、単位作用ベクトルと法線ベクトルとの内積の絶対値を算出し、その算出結果と作用ベクトルとの積を算出し、算出した積に移動加速度ベクトルを加算することで移動ベクトルを示す移動ベクトルデータを算出する処理を実行させる
ための描画プログラム。
A drawing program for drawing an object represented by a three-dimensional image including a plurality of reference points,
On the computer,
A drawing process for drawing the object including the plurality of reference points;
Action vector data calculation processing for calculating action vector data indicating action vectors indicating the contents of action such as wind that affects the outer shape of the object;
The method stored in the normal vector data storage means for storing the action vector data calculated in the action vector data calculation process and the normal vector data indicating the normal vectors of the plurality of reference points included in the object. Based on the line vector data and the acceleration vector data stored in the acceleration vector data storage means for storing the acceleration vector data indicating the movement acceleration vector that is the movement acceleration of each of the plurality of reference points included in the object , a predetermined value is obtained. A movement vector data calculation process for calculating movement vector data that can specify the movement destination of each reference point,
A movement point calculation process for calculating a movement point indicating a movement destination of each reference point calculated in the movement vector data calculation process;
In the drawing process, each reference point corresponding to each movement point calculated in the movement point calculation process is moved, and a process of drawing the object using the movement point as a new reference point is executed.
In the movement vector data calculation process, the absolute value of the inner product of the unit action vector and the normal vector is calculated, the product of the calculation result and the action vector is calculated, and the movement acceleration vector is added to the calculated product. A drawing program for executing a process of calculating movement vector data indicating a movement vector .
JP2007053113A 2007-03-02 2007-03-02 Drawing apparatus, drawing method, and drawing program Active JP4467590B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007053113A JP4467590B2 (en) 2007-03-02 2007-03-02 Drawing apparatus, drawing method, and drawing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007053113A JP4467590B2 (en) 2007-03-02 2007-03-02 Drawing apparatus, drawing method, and drawing program

Publications (2)

Publication Number Publication Date
JP2008217352A JP2008217352A (en) 2008-09-18
JP4467590B2 true JP4467590B2 (en) 2010-05-26

Family

ID=39837327

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007053113A Active JP4467590B2 (en) 2007-03-02 2007-03-02 Drawing apparatus, drawing method, and drawing program

Country Status (1)

Country Link
JP (1) JP4467590B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6049011B2 (en) * 2012-10-01 2016-12-21 株式会社カプコン Deformation method of 3D model
JP5961589B2 (en) * 2013-07-10 2016-08-02 日本電信電話株式会社 Video generation apparatus, method, and program

Also Published As

Publication number Publication date
JP2008217352A (en) 2008-09-18

Similar Documents

Publication Publication Date Title
JP4180065B2 (en) Image generation method, image generation apparatus, and image generation program
US8915784B2 (en) Program, information storage medium, and image generation system
JP4651435B2 (en) Program, information storage medium, and image generation system
US7737978B2 (en) Display, displaying method, information recording medium, and program
JP4445898B2 (en) GAME PROGRAM AND GAME DEVICE USING INPUT TO POINTING DEVICE
EP1830322A1 (en) A method, an apparatus and a computer program product for generating an image
JP4719579B2 (en) Image processing program and image processing apparatus
US8909506B2 (en) Program, information storage medium, information processing system, and information processing method for controlling a movement of an object placed in a virtual space
JP2007300974A (en) Program, information storage medium and image generation system
JP3926307B2 (en) Three-dimensional image drawing apparatus and method, program, and recording medium
JP4205747B2 (en) Image processing apparatus, image processing apparatus control method, and program
JP2005316948A (en) Image processing apparatus, method and program
JP2009213559A (en) Game apparatus
JP4467590B2 (en) Drawing apparatus, drawing method, and drawing program
JP3428562B2 (en) Method and recording medium for processing movement of object, and game device
JP4749198B2 (en) Program, information storage medium, and image generation system
EP1854520B1 (en) Game program and game apparatus
JP5063022B2 (en) Program, information storage medium, and image generation system
JP2005245525A (en) Image display program and information processing device
JP5558008B2 (en) Program, information storage medium, and game system
JP2009251887A (en) Image generation system, program, and information storage medium
JP2006268818A (en) Program, information storage medium and image generation system
JP7307362B2 (en) Game program and game device
JP5328841B2 (en) Program, information storage medium, information processing system, and information processing method
JP5377867B2 (en) Program, information storage medium, and game system

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20081022

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090115

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20090223

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20090223

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091117

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100118

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100223

R150 Certificate of patent or registration of utility model

Ref document number: 4467590

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130305

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130305

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

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

Free format text: PAYMENT UNTIL: 20130305

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20130305

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140305

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250