JP6049011B2 - Deformation method of 3D model - Google Patents

Deformation method of 3D model Download PDF

Info

Publication number
JP6049011B2
JP6049011B2 JP2012219159A JP2012219159A JP6049011B2 JP 6049011 B2 JP6049011 B2 JP 6049011B2 JP 2012219159 A JP2012219159 A JP 2012219159A JP 2012219159 A JP2012219159 A JP 2012219159A JP 6049011 B2 JP6049011 B2 JP 6049011B2
Authority
JP
Japan
Prior art keywords
model
axis
displacement
function
dimensional model
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
JP2012219159A
Other languages
Japanese (ja)
Other versions
JP2014071793A (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.)
Capcom Co Ltd
Original Assignee
Capcom 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 Capcom Co Ltd filed Critical Capcom Co Ltd
Priority to JP2012219159A priority Critical patent/JP6049011B2/en
Publication of JP2014071793A publication Critical patent/JP2014071793A/en
Application granted granted Critical
Publication of JP6049011B2 publication Critical patent/JP6049011B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)

Description

この発明は、ビデオゲームに登場するモンスターなどの三次元モデルを変形する方法に関する。   The present invention relates to a method of deforming a three-dimensional model such as a monster appearing in a video game.

仮想の三次元空間を映像で表示するビデオゲームにおいて、モンスター等のオブジェクトの姿勢を変えたり変形させる場合、オブジェクト(モデル)に関節を設け、この関節の角度や位置を制御することでキャラクタの姿勢や形状を変えていた(たとえば特許文献1)。   In a video game that displays a virtual three-dimensional space as a video, when changing or deforming the posture of an object such as a monster, a joint is provided on the object (model), and the posture of the character is controlled by controlling the angle and position of the joint. And the shape was changed (for example, Patent Document 1).

しかし、モンスターなどの複雑な形状のオブジェクトは、動作も複雑であり、全ての動作を表現するためにオブジェクトに関節を設けたのでは、関節の数が極めて多数になってしまい、モデルの作成が面倒であるうえに、関節を動かして動作を表現するアニメーターの作業も増加するという問題点がある。   However, objects with complicated shapes such as monsters have complex movements, and if joints are provided on the objects to express all movements, the number of joints becomes extremely large, making it impossible to create models. In addition to being troublesome, there is a problem that the work of animators that express movements by moving joints also increases.

一方、オブジェクトを変形させる手法として、オブジェクトを直接変形させる手法も存在する。ビデオゲームのオブジェクトは、一般的にポリゴンの集合体で形成されているため、このポリゴンを変形させることで、具体的にはポリゴンの頂点を上下に変位させることでオブジェクトの形状を変化させることができる。   On the other hand, as a method for deforming an object, there is a method for directly deforming an object. Since video game objects are generally formed of a collection of polygons, it is possible to change the shape of the object by deforming the polygons, specifically by moving the vertices of the polygons up and down. it can.

この場合、複数のポリゴンの頂点の変位量を一括して記憶するためにはディスプレイスメントマップというテーブルが必要である。ビデオゲームの場合、30fpsまたは60fpsでフレームが更新されるため、オブジェクトを時系列に滑らかに変形させるためには、フレーム毎にディスプレイスメントマップが必要になり、大量のメモリが必要になるという問題点がある。   In this case, a table called a displacement map is necessary to collectively store the displacement amounts of the vertices of a plurality of polygons. In the case of a video game, since the frame is updated at 30 fps or 60 fps, in order to smoothly deform the object in time series, a displacement map is required for each frame, and a large amount of memory is required. There is.

また、特許文献2のように演算によってポリゴンの頂点の変位量を算出することも提案されているが、ゲームの進行中に多数のポリゴンの頂点の変位量をリアルタイムに計算するためには大きい演算パワーが必要になり、ゲームの進行に支障を来す可能性があった。   Also, as disclosed in Patent Document 2, it has been proposed to calculate the displacement amount of the vertex of the polygon by calculation. However, a large operation is required to calculate the displacement amount of the vertex of many polygons in real time while the game is in progress. Power was needed, which could interfere with the progress of the game.

特開2004−021866号公報JP 2004-021866 A

特開2008−217352号公報JP 2008-217352 A

そこで、この発明は、三次元モデルの変形、特に時間軸に沿った変形を容易に且つ少ないメモリで実現することができる三次元モデルの変形方法を提供することを目的とする。   SUMMARY OF THE INVENTION An object of the present invention is to provide a method for deforming a three-dimensional model, which can easily deform a three-dimensional model, particularly a deformation along a time axis, with a small amount of memory.

本発明は、x−y−zの座標空間に複数の制御点を有する三次元モデルを形成し、該形成された三次元モデルを変形させる関数を設け、前記三次元モデルの表面を覆うテクスチャ面であるu−v座標面を基準面として、前記複数の制御点の位置を前記基準平面にマッピングし、前記マッピングされた複数の制御点の一部または全部の各々に、前記基準面に含まれない変位軸を設定し、前記関数を前記基準面のu軸またはv軸に対応づけ、前記変位軸が設定された制御点の前記関数が対応づけられた軸の座標値に対応する関数値を前記制御点の前記変位軸方向への変位量とし、前記変位軸が設定された制御点を前記変位軸に沿って前記変位量だけ移動させて変形した前記三次元モデルを描画することを特徴とする。なお、前記関数として、一次元または二次元の関数値テーブルを設けてもよい。また、前記三次元モデルを、関節を有するオブジェクトとし、関節の角度変化または変位に前記制御点の変位を重畳した形状で描画されてもよい。 The present invention provides a texture surface that forms a three-dimensional model having a plurality of control points in an xyz coordinate space, provides a function for deforming the formed three-dimensional model, and covers the surface of the three-dimensional model The positions of the plurality of control points are mapped to the reference plane using the uv coordinate plane as a reference plane, and some or all of the mapped control points are included in the reference plane. A non-displacement axis is set, the function is associated with the u-axis or the v-axis of the reference plane, and a function value corresponding to the coordinate value of the axis with which the function of the control point where the displacement axis is set is associated. A displacement amount of the control point in the displacement axis direction is drawn, and the three-dimensional model deformed by moving the control point on which the displacement axis is set by the displacement amount along the displacement axis is drawn. To do. Note that a one-dimensional or two-dimensional function value table may be provided as the function. Further, the three-dimensional model may be an object having a joint, and may be drawn in a shape in which the displacement of the control point is superimposed on the angle change or displacement of the joint.

前記変位量を時間的に変化させ、この変位量の変化に応じて前記面の描画を繰り返し行ってもよい。この場合、時間を変数とする関数を用いて係数を算出し、この関数を前記変位量に乗算することで前記変位量を時間的に変化させてもよい。また、時間を変数とする関数として、所定時間ごとの係数を記憶した関数値テーブルを設けてもよい。   The displacement amount may be changed with time, and the drawing of the surface may be repeatedly performed according to the change of the displacement amount. In this case, a coefficient may be calculated using a function having time as a variable, and the displacement amount may be temporally changed by multiplying the displacement amount by this function. In addition, a function value table storing coefficients for every predetermined time may be provided as a function having time as a variable.

前記変位軸は、前記制御点における前記面に対する法線方向に設定されるものであってもよい。また、前記変位軸は、各制御点ごとに独立した方向に設定されるものであってもよい。   The displacement axis may be set in a normal direction with respect to the surface at the control point. The displacement axis may be set in an independent direction for each control point.

この発明によれば、三次元モデルの変形を簡略な処理且つ少ないメモリで実現することが可能になる。   According to the present invention, it is possible to realize deformation of a three-dimensional model with simple processing and a small amount of memory.

この発明が適用されるオブジェクトの例を示す図である。It is a figure which shows the example of the object to which this invention is applied. 簡略な三次元モデルの例を示す図である。It is a figure which shows the example of a simple three-dimensional model. モデルの頂点に設定されるy軸(変位軸)の例を示す図である。It is a figure which shows the example of the y-axis (displacement axis) set to the vertex of a model. モデルの変形に用いられる変形用関数と時間関数の例を示す図である。It is a figure which shows the example of the function for a deformation | transformation used for a deformation | transformation of a model, and a time function. 本発明の方法によって変形されたモデルの一例を示す図である。It is a figure which shows an example of the model deform | transformed by the method of this invention. 本発明の方法によって変形されたモデルの一例を示す図である。It is a figure which shows an example of the model deform | transformed by the method of this invention. この発明が適用されるビデオゲーム機のブロック図である。1 is a block diagram of a video game machine to which the present invention is applied.

図1は、ビデオゲームに登場するオブジェクト(モンスター)のワイヤフレームモデルを示す図である。モンスター等のオブジェクトは、簡略な平面図形(素体:主として三角形)であるポリゴンを配列して作成されたモデルで形状が構成される。より詳細には、図2に示すような二次元または三次元の簡略なモデルであるパーツを複数組み合わせることによって、図1に示すような複雑な形状が作成される。   FIG. 1 is a diagram showing a wire frame model of an object (monster) appearing in a video game. An object such as a monster is formed of a model created by arranging polygons that are simple plane figures (elementary body: mainly triangles). More specifically, a complicated shape as shown in FIG. 1 is created by combining a plurality of parts which are simple models of two or three dimensions as shown in FIG.

なお、図1に示したモデルは、ポリゴンの辺と頂点のみが描かれたワイヤフレームモデルである。このワイヤフレームモデルの上に、表面の色彩模様を表すテクスチャを被せることにより、実際に表示されるオブジェクトの外観が構成される。   The model shown in FIG. 1 is a wire frame model in which only the sides and vertices of a polygon are drawn. By covering the wire frame model with a texture representing the color pattern of the surface, the appearance of the actually displayed object is configured.

モンスター等のオブジェクトは、歩く、飛ぶ、呼吸するなどの動作をし、その動作は、オブジェクトの外観形状を変形させることで表現される。この外観形状の変形は、一般的には、複数のパーツを相互に関節で接続し、関節の角度を変化させることでパーツの位置関係を変化させ、これによりオブジェクトの外観形状を変化させる。   An object such as a monster performs an action such as walking, flying, and breathing, and the action is expressed by deforming the appearance of the object. The deformation of the external shape generally involves connecting a plurality of parts with joints and changing the joint angle to change the positional relationship of the parts, thereby changing the external shape of the object.

そして、この発明では、たとえば、モンスターが呼吸するときの体の動きや心臓のビートなどの比較的単純な動き表現する場合、関節を用いずに、モデル(パーツ)自体の形状を時間経過に沿って滑らかに変形させることでこれらの動きを表現する。   In the present invention, for example, when expressing a relatively simple movement such as a body movement or a heart beat when a monster breathes, the shape of the model (parts) itself is not changed over time. Express these movements by transforming them smoothly.

以下、図2〜図6を参照してモデルの形状を変形させる手法について説明する。   Hereinafter, a method of changing the shape of the model will be described with reference to FIGS.

図2において、図2(A)は、略正方形の二次元モデル(パーツ)の例を示している。また、図2(B)は略円筒形の三次元モデル(パーツ)の例を示している。いずれのモデルも複数のポリゴン(三角形)の組み合わせで構成されている。なお、これらのモデルの例では、モデルを構成する全てのポリゴンが同じ形状をしているが、モデルを構成する全てのポリゴンがそれぞれ異なる形状であってもよい。このモデルを構成するポリゴンの頂点(以下、モデルの頂点と呼ぶ)を、モデルの表面である基準座標面から外れた位置に移動させることでモデルの形状を変化させる。頂点が本発明の制御点に対応する。   In FIG. 2, FIG. 2 (A) shows an example of a substantially square two-dimensional model (part). FIG. 2B shows an example of a substantially cylindrical three-dimensional model (part). Each model is composed of a combination of a plurality of polygons (triangles). In these model examples, all the polygons constituting the model have the same shape, but all the polygons constituting the model may have different shapes. The shape of the model is changed by moving the vertices of the polygons constituting the model (hereinafter referred to as model vertices) to a position deviating from the reference coordinate plane that is the surface of the model. The vertex corresponds to the control point of the present invention.

モデルの頂点(モデルを構成するポリゴンの頂点)の位置を特定するために、モデル表面をテクスチャ適用の基準座標面であるu−v座標にマッピングする。図2(A)の二次元モデルの場合には、略正方形のモデル表面の横方向にu軸が設定され、縦方向にv軸が設定される。図2(B)の三次元モデルの場合、円筒の側面に円筒の軸に沿ってu軸が設定され、円筒の側面の周に沿ってv軸が設定される。この図の例では、モデルのオリジナル形状どおりの座標(寸法)でu−v座標にマッピングされた例を示しているが、オリジナル形状と異なる座標でu−v座標にマッピングされてもよい。このu−v座標により、モデルを構成するポリゴンの各頂点の位置が座標(u,v)で表される。   In order to specify the position of the vertex of the model (the vertex of the polygon constituting the model), the model surface is mapped to the uv coordinates that are the reference coordinate planes for texture application. In the case of the two-dimensional model shown in FIG. 2A, the u axis is set in the horizontal direction of the substantially square model surface, and the v axis is set in the vertical direction. In the case of the three-dimensional model in FIG. 2B, the u-axis is set along the cylinder axis on the side surface of the cylinder, and the v-axis is set along the circumference of the side surface of the cylinder. In the example of this figure, the example mapped to the uv coordinates with the coordinates (dimensions) according to the original shape of the model is shown, but may be mapped to the uv coordinates with coordinates different from the original shape. The position of each vertex of the polygon constituting the model is expressed by coordinates (u, v) by the uv coordinates.

モデルの頂点を基準座標面から外れた位置に移動させるため、各頂点Pにおいて、その頂点における基準座標面に対する法線方向にy軸を設定し、頂点Pのy座標であるP(y)を定める。図2(A)の平面のモデルの場合、図3(A)に示すように、P(y)は、基準座標面を0とし、上方向が+、下方向が−である。図2(B)の円筒形のモデルの場合、図3(B)に示すように、基準座標面を0とし、円筒の外方向が+、内方向が−である。P(y)として0以外の値が設定されると、モデルの描画(レンダリング)時に、頂点Pが基準座標面からy軸方向にP(y)だけ移動した位置に描画される。これにより、モデルが変形される。   In order to move the vertex of the model to a position deviating from the reference coordinate plane, at each vertex P, the y-axis is set in the normal direction with respect to the reference coordinate plane at that vertex, and P (y) that is the y coordinate of the vertex P is set. Determine. In the plane model of FIG. 2A, as shown in FIG. 3A, P (y) has a reference coordinate plane of 0, an upward direction of +, and a downward direction of −. In the cylindrical model of FIG. 2B, as shown in FIG. 3B, the reference coordinate plane is 0, the outer direction of the cylinder is +, and the inner direction is −. If a value other than 0 is set as P (y), the vertex P is drawn at a position moved by P (y) from the reference coordinate plane in the y-axis direction during model drawing (rendering). As a result, the model is deformed.

このように、頂点をy軸に沿って移動させることでモデルを変形することが可能であるが、モデルの全ての頂点について、そのy座標値P(y)を個別に設定するためには、モデルの全頂点のP(y)が書き込まれたディスプレイスメントマップを設ける必要がある。このようなディスプレイスメントマップは大きなデータ量のものになる。また、モデルを時間軸に沿って滑らかに動かそうとすると、このディスプレイスメントマップが映像フレーム毎に必要になり膨大なデータ量が必要になる。そこで、図4(A)に示すようなモデル変形用の関数f(x)を設け、この関数を用いてモデルの各頂点の変位量を決定する。図4(A)は、変数xに対する関数値y=f(x)を表すグラフであり、一例としてf(x)=−1/2cos(2πx)を図示している。すなわち、モデル変形用の一次関数は、変域であるx軸、値域であるy軸とも0〜1に正規化されている。   In this way, it is possible to deform the model by moving the vertices along the y-axis, but in order to individually set the y coordinate value P (y) for all the vertices of the model, It is necessary to provide a displacement map in which P (y) of all vertices of the model is written. Such a displacement map has a large amount of data. Also, if the model is to be moved smoothly along the time axis, this displacement map is required for each video frame, and a huge amount of data is required. Therefore, a model deformation function f (x) as shown in FIG. 4A is provided, and the displacement amount of each vertex of the model is determined using this function. FIG. 4A is a graph showing the function value y = f (x) with respect to the variable x. As an example, f (x) = − 1 / 2cos (2πx) is illustrated. That is, the linear function for model deformation is normalized to 0 to 1 for both the x-axis that is the domain and the y-axis that is the range.

この関数f(x)を、x軸方向、y軸方向ともに適切に伸縮させてモデルのu軸方向(行方向)に対応づけ、各頂点のu座標値に対応する関数値をその頂点のy座標値とする。   The function f (x) is appropriately expanded and contracted in both the x-axis direction and the y-axis direction to correspond to the u-axis direction (row direction) of the model, and the function value corresponding to the u-coordinate value of each vertex is set to the y-axis of the vertex. Use coordinate values.

v軸方向(列方向)は、全て同じ値としてもよい、すなわち、全ての行に同じように一次関数f(x)を適用してもよい。そうすると、図2(A)のモデルは図5に示すような形状に変形される。   The v-axis direction (column direction) may all be the same value, that is, the linear function f (x) may be applied to all rows in the same manner. Then, the model of FIG. 2A is deformed into a shape as shown in FIG.

また、別の方式として、v軸方向にもu軸と同じように関数f(x)を対応づけて各頂点のv座標値に対応する関数値を求め、上記の処理で求められたu座標値に対応する関数値と加算してその頂点のy座標値としてもよい。すなわち、各頂点Pnのy座標値は、たとえば、P(y)=f(u)+f(v)と計算される。そうすると、図2(A)のモデルは、図6に示すような形状に変形される。
モデル変形用の関数f(x)は、図4(A)に示したものに限定されない。さらに、関数は、任意の係数を乗算する、任意の定数を加算するなど自由に変形して使用することが可能である。また、一次関数の全区間(全変域)を用いなくてもよく、また、全区間または一部区間を繰り返し用いてもよい。
As another method, the function value corresponding to the v coordinate value of each vertex is obtained by associating the function f (x) in the v axis direction in the same manner as the u axis, and the u coordinate obtained by the above processing is obtained. The function value corresponding to the value may be added to obtain the y coordinate value of the vertex. That is, the y coordinate value of each vertex Pn is calculated as, for example, P (y) = f (u) + f (v). Then, the model of FIG. 2A is deformed into a shape as shown in FIG.
The function f (x) for model deformation is not limited to that shown in FIG. Further, the function can be freely modified and used, such as multiplying an arbitrary coefficient or adding an arbitrary constant. Moreover, it is not necessary to use all the sections (all domains) of the linear function, and all sections or some sections may be used repeatedly.

そして、モデルの変形量を時間的に滑らかに増減させることにより、モンスターが呼吸している動きや、心臓の鼓動などの動きを表現することができる。たとえば、各頂点のy座標値に乗算する重み係数aを時間的に変化させることによって、モデルの変形量を時間的に変化させればよい。重み係数aを時間的に変化させるために、時間関数g(t)を用いればよい。図4(B)に時間関数g(t)の一例を示す。この関数は単調増加の一次関数である。時間tの経過に応じてa=g(t)を演算して、各頂点のyに乗算することにより、モデルの変形量が徐々に滑らかに大きくなってゆく動きを表現することができる。この動きの例を図6(A)〜(D)に示す。   The movement of the monster breathing and the movement of the heart can be expressed by increasing or decreasing the amount of deformation of the model smoothly over time. For example, the deformation amount of the model may be changed temporally by changing the weighting factor a by which the y coordinate value of each vertex is multiplied. In order to change the weighting factor a with time, a time function g (t) may be used. FIG. 4B shows an example of the time function g (t). This function is a monotonically increasing linear function. By calculating a = g (t) according to the elapse of time t and multiplying y at each vertex, it is possible to express a movement in which the deformation amount of the model gradually and smoothly increases. Examples of this movement are shown in FIGS.

なお、時間関数g(t)もモデル変化用関数f(x)と同様に、図4(B)に示したものに限定されない。さらに、関数は、任意の係数を乗算する、任意の定数を加算するなど自由に変形して使用することが可能である。また、一次関数の全区間(全変域)を用いなくてもよく、また、全区間または一部区間を繰り返し用いてもよい。また、関数を逆方向に読み出してもよい。   Note that the time function g (t) is not limited to that shown in FIG. 4B as is the case with the model changing function f (x). Further, the function can be freely modified and used, such as multiplying an arbitrary coefficient or adding an arbitrary constant. Moreover, it is not necessary to use all the sections (all domains) of the linear function, and all sections or some sections may be used repeatedly. The function may be read in the reverse direction.

なお、図4に示した関数f(x)、g(t)は、関数式として記憶されていてもよく、適当な間隔でプロットされた関数値テーブルとして記憶されていてもよい。また、f(x)、g(x)として数値テーブルを用いた場合、そのテーブルの内容は、数学的に表現できる関数の値である必要はなく、ランダムに設定された値であってもよい。また、テーブルの作成をユーザに開放し、ユーザが自由に入力した値がテーブルに書き込まれていてもよい。   Note that the functions f (x) and g (t) shown in FIG. 4 may be stored as a function expression, or may be stored as a function value table plotted at an appropriate interval. Further, when numerical tables are used as f (x) and g (x), the contents of the tables need not be values of functions that can be expressed mathematically, and may be values set at random. . Further, the creation of the table may be opened to the user, and a value freely input by the user may be written in the table.

図6において、図6(A)は、図4(B)の時間関数g(t)において、g(T1)=a1を係数としてy座標値に乗算した場合のモデルの形状を示す図である。同様に、図6(B)、(C)、(D)は、それぞれ、図4(B)の時間関数g(t)において、g(T2)=a2、g(T3)=a3、g(T4)=a4を係数としてy座標値に乗算した場合のモデルの形状を示している。このように、単調増加の時間関数を係数として掛けると、中央部が徐々に高くなるように図2(A)のモデルを変形させることができる。   6A is a diagram illustrating the shape of the model when the y-coordinate value is multiplied by g (T1) = a1 as a coefficient in the time function g (t) of FIG. 4B. . Similarly, FIGS. 6B, 6C, and 6D respectively show g (T2) = a2, g (T3) = a3, g (g) in the time function g (t) of FIG. 4B. The shape of the model when the y-coordinate value is multiplied by T4) = a4 as a coefficient is shown. In this way, when the monotonically increasing time function is multiplied as a coefficient, the model of FIG. 2A can be deformed so that the central portion gradually increases.

また、時間関数をg(−t)として、図4(B)のグラフを逆から読み出すようにすれば、中央部が徐々に低くなるように図2(A)のモデルを変形させることができる。さらに、時間関数としてg(t)およびg(−t)を用い、aを0から1の間を往復させると、モデルを、たとえば心臓の鼓動のように往復運動させることができる。   Also, if the time function is g (−t) and the graph of FIG. 4B is read from the reverse, the model of FIG. 2A can be deformed so that the central portion gradually decreases. . Further, using g (t) and g (-t) as a time function and reciprocating a between 0 and 1, the model can be reciprocated, for example, like a heartbeat.

以上は、y軸を基準座標面に対する法線方向に設定する場合について説明した。しかし、y軸は基準座標面に対する法線方向以外の方向に設定してもよい。この場合、モデルの全ての頂点に対して同じ方向にy軸を設定してもよく、各頂点毎に、または、全頂点をいくつかのグループにまとめて各グループ毎に、y軸の方向を指定してもよい。これにより、モデルの変形の自由度をさらに高めることが可能になる。   The case where the y axis is set in the normal direction with respect to the reference coordinate plane has been described above. However, the y axis may be set in a direction other than the normal direction with respect to the reference coordinate plane. In this case, the y-axis may be set in the same direction for all the vertices of the model, and the direction of the y-axis is set for each vertex, or for all the vertices grouped into several groups. May be specified. Thereby, it is possible to further increase the degree of freedom of deformation of the model.

なお、以上の説明では、モデルの全ての頂点を変形(y軸方向への変位)の対象にしていたが、一部の頂点のみ変形の対象としてもよい。   In the above description, all the vertices of the model are targeted for deformation (displacement in the y-axis direction), but only some vertices may be targeted for deformation.

また、モデル変形用の関数f(x)として一次元の関数を用いたが、これ以外の関数、たとえば二次元の関数f(x,y)を用いてもよい。   In addition, although a one-dimensional function is used as the model deformation function f (x), other functions such as a two-dimensional function f (x, y) may be used.

以上説明したモデルの頂点の変位を、関節の角度変化・変位と組み合わせることにより、オブジェクトの複雑な動作を比較的容易に表現することが可能になる。   By combining the displacement of the vertex of the model described above with the angle change / displacement of the joint, it becomes possible to represent the complex motion of the object relatively easily.

図7は、上述したモデルを描画するゲームシステムの構成例を示す図である。ゲームシステム10は、演算部11、記憶部12、入力部13、描画部14、および、表示部15を有している。入力部13はプレイヤによって操作される複数の操作部材を有し、これら操作部材の操作状態に対応した操作信号を発生する。記憶部12には、上述のモデル情報、モデル変形用関数、時間関数を含むゲームの実行に必要な種々のデータが記録される。   FIG. 7 is a diagram illustrating a configuration example of a game system for drawing the above-described model. The game system 10 includes a calculation unit 11, a storage unit 12, an input unit 13, a drawing unit 14, and a display unit 15. The input unit 13 has a plurality of operation members operated by the player, and generates operation signals corresponding to the operation states of these operation members. The storage unit 12 stores various data necessary for executing the game including the above-described model information, model deformation function, and time function.

演算部11は、入力部13から入力される操作信号に応じてゲームの進行状況を決定するための演算を実行する。この演算により、モンスターなどのオブジェクトの動作や姿勢が決定される。描画部14は、ゲーム画像を描画する機能部であり、演算部11によって演算されたオブジェクトの動作や姿勢に基づいてポリゴンモデルからなるオブジェクトを描画する。描画部14によって描画されたオブジェクト画像を含むゲーム画像は表示部15に入力され、表示部15がこのゲーム画像を表示する。   The calculation unit 11 executes a calculation for determining the progress of the game in accordance with the operation signal input from the input unit 13. By this calculation, the motion and posture of an object such as a monster are determined. The drawing unit 14 is a functional unit that draws a game image, and draws an object composed of a polygon model based on the motion and posture of the object calculated by the calculation unit 11. A game image including the object image drawn by the drawing unit 14 is input to the display unit 15, and the display unit 15 displays the game image.

以上の構成のゲームシステム10は、家庭用据置型ビデオゲーム機、携帯ゲーム機、アーケードゲーム機、パーソナルコンピュータなどのハードウェアとゲームプログラムとの協働によって実現される。   The game system 10 having the above configuration is realized by the cooperation of a game program with hardware such as a home-use video game machine, a portable game machine, an arcade game machine, and a personal computer.

この実施形態では、複数の(モデル)パーツを関節で接続する形態を例にあげて説明したが、1つのモデルの内部に関節を設け、関節の位置や角度を変えることでモデル自体の形状を変化させる形態でも、本発明を適用可能である。すなわち、その関節の補助または代用としてポリゴンの頂点の変位を用いることができる。   In this embodiment, an example in which a plurality of (model) parts are connected by joints has been described as an example, but a joint is provided inside one model, and the shape of the model itself can be changed by changing the position and angle of the joint. The present invention can be applied even in a changed form. That is, the displacement of the vertex of the polygon can be used as an auxiliary or substitute for the joint.

以上の説明では、ビデオゲームに登場するモンスターの外観形状を変化させることを例にあげて説明したが、本発明はモンスターの形状の変化以外にも適用可能である。また、適用分野はビデオゲームに限定されない。   In the above description, the case where the appearance shape of a monster appearing in a video game is changed has been described as an example, but the present invention can be applied to other than the change of the shape of a monster. Also, the application field is not limited to video games.

10 ゲームシステム
14 描画部

10 Game system 14 Drawing part

Claims (3)

x−y−zの座標空間に複数の制御点を有する三次元モデルを形成し、
該形成された三次元モデルを変形させる関数を設け、
前記三次元モデルの表面を覆うテクスチャ面であるu−v座標面を基準面として、前記複数の制御点の位置を前記基準平面にマッピングし、
前記マッピングされた複数の制御点の一部または全部の各々に、前記基準面に含まれない変位軸を設定し、
前記関数を前記基準面のu軸またはv軸に対応づけ、
前記変位軸が設定された制御点の前記関数が対応づけられた軸の座標値に対応する関数値を前記制御点の前記変位軸方向への変位量とし、
前記変位軸が設定された制御点を前記変位軸に沿って前記変位量だけ移動させて変形した前記三次元モデルを描画する
三次元モデルの変形方法。
forming a three-dimensional model having a plurality of control points in an xyz coordinate space;
A function for deforming the formed three-dimensional model is provided,
Mapping the positions of the plurality of control points to the reference plane using a uv coordinate plane that is a texture plane covering the surface of the three-dimensional model as a reference plane;
A displacement axis not included in the reference plane is set for each of some or all of the plurality of mapped control points,
Associating the function with the u-axis or v-axis of the reference plane;
The function value corresponding to the coordinate value of the axis to which the function of the control point to which the displacement axis is set is associated is set as the amount of displacement in the direction of the displacement axis of the control point ,
A three-dimensional model deformation method for drawing the deformed three- dimensional model by moving the control point on which the displacement axis is set by the displacement amount along the displacement axis.
前記三次元モデルは、関節を有するオブジェクトであり、  The three-dimensional model is an object having a joint,
前記三次元モデルは、前記関節の角度変化または変位に前記制御点の変位を重畳した形状で描画される  The three-dimensional model is drawn in a shape in which the displacement of the control point is superimposed on the angular change or displacement of the joint.
請求項1に記載の三次元モデルの変形方法。  The method for deforming a three-dimensional model according to claim 1.
前記変位軸は、各制御点ごとに独立した方向に設定される請求項1または請求項に記載の三次元モデルの変形方法。 The method of deforming a three-dimensional model according to claim 1 or 2 , wherein the displacement axis is set in an independent direction for each control point.
JP2012219159A 2012-10-01 2012-10-01 Deformation method of 3D model Active JP6049011B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012219159A JP6049011B2 (en) 2012-10-01 2012-10-01 Deformation method of 3D model

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012219159A JP6049011B2 (en) 2012-10-01 2012-10-01 Deformation method of 3D model

Publications (2)

Publication Number Publication Date
JP2014071793A JP2014071793A (en) 2014-04-21
JP6049011B2 true JP6049011B2 (en) 2016-12-21

Family

ID=50746901

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012219159A Active JP6049011B2 (en) 2012-10-01 2012-10-01 Deformation method of 3D model

Country Status (1)

Country Link
JP (1) JP6049011B2 (en)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11213175A (en) * 1998-01-22 1999-08-06 Hitachi Ltd Production of program and program recording medium
JP3445568B2 (en) * 2000-09-13 2003-09-08 コナミ株式会社 Water surface image forming method, computer-readable storage medium for realizing the method, and game system
JP3954318B2 (en) * 2001-03-09 2007-08-08 独立行政法人科学技術振興機構 3D model deformation system
JP2004021866A (en) * 2002-06-19 2004-01-22 Matsushita Electric Ind Co Ltd Object shape changing device
JP4467590B2 (en) * 2007-03-02 2010-05-26 株式会社スクウェア・エニックス Drawing apparatus, drawing method, and drawing program
US8232999B2 (en) * 2008-01-22 2012-07-31 Dreamworks Animation Llc Fast oceans at near infinite resolution

Also Published As

Publication number Publication date
JP2014071793A (en) 2014-04-21

Similar Documents

Publication Publication Date Title
US8917240B2 (en) Virtual desktop coordinate transformation
JP5118220B2 (en) Motion modeling apparatus and method, and program
US7819748B2 (en) Game apparatus and storage medium storing game program
US10262447B2 (en) Systems and methods for virtual entity animation
US8180613B1 (en) Wrinkles on fabric software
JP2010026818A (en) Image processing program, image processor, and image processing method
US9892485B2 (en) System and method for mesh distance based geometry deformation
JP2020080007A (en) Information processor, information processing program, information processing system, and information processing method
JP4636741B2 (en) Image processing apparatus and three-dimensional shape display program
CN106716500B (en) Information processing device and depth definition method
JP6049011B2 (en) Deformation method of 3D model
US20230377268A1 (en) Method and apparatus for multiple dimension image creation
JP7293036B2 (en) Information processing device, information processing program, information processing system and information processing method
CN115272539A (en) Clothing data processing method based on virtual scene, storage medium and related equipment
JP4930373B2 (en) Image processing program and image processing system using the same
JP5843679B2 (en) Image reproduction program and game system
JP3973992B2 (en) 3D model deformation system
JP2009251887A (en) Image generation system, program, and information storage medium
JP4450047B2 (en) Display object generation method in information processing apparatus, program for controlling execution thereof, and recording medium storing the program
KR101653802B1 (en) 3 dimenstional graphic data capturing system and method thereof
JP4726355B2 (en) Image processing apparatus and image processing program
US20160125646A1 (en) Image processing apparatus, image processing method, and image prodessing program
JP5378027B2 (en) GAME PROGRAM, STORAGE MEDIUM, AND COMPUTER DEVICE
CN117237485A (en) Special effect generation method, device, equipment and storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150930

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160726

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160802

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161003

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161116

R150 Certificate of patent or registration of utility model

Ref document number: 6049011

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250