JP2016122297A - Modeling system, modeling program, and modeling method - Google Patents

Modeling system, modeling program, and modeling method Download PDF

Info

Publication number
JP2016122297A
JP2016122297A JP2014261192A JP2014261192A JP2016122297A JP 2016122297 A JP2016122297 A JP 2016122297A JP 2014261192 A JP2014261192 A JP 2014261192A JP 2014261192 A JP2014261192 A JP 2014261192A JP 2016122297 A JP2016122297 A JP 2016122297A
Authority
JP
Japan
Prior art keywords
data
modeling
editing
replacement
operation control
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014261192A
Other languages
Japanese (ja)
Other versions
JP6340313B2 (en
Inventor
裕子 石若
Hiroko Ishiwaka
裕子 石若
良恵 河野
Yoshie Kono
良恵 河野
ジャーマン マーセル
German Marcel
ジャーマン マーセル
アンバーグ ブライアン
Amberg Brian
アンバーグ ブライアン
ウェイス チボ
Weiss Cibo
ウェイス チボ
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.)
PS Solutions Corp
Original Assignee
PS Solutions Corp
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 PS Solutions Corp filed Critical PS Solutions Corp
Priority to JP2014261192A priority Critical patent/JP6340313B2/en
Publication of JP2016122297A publication Critical patent/JP2016122297A/en
Application granted granted Critical
Publication of JP6340313B2 publication Critical patent/JP6340313B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

PROBLEM TO BE SOLVED: To create/edit freely a high-definition realistic 3D model with a simple operation without requiring a high level of skill or experience.SOLUTION: A modeling system for generating and editing modeling data on an avatar with a predetermined three-dimensional shape defined on a virtual space includes: a part generation section 312 which forms skeleton data by connecting multiple pieces of bone data defined by predetermined two points on the virtual space, groups skin data associated with the skeleton data and defining an external surface of an object with a polygon, according to a positional relationship, to generate part data by group; a motion management section 311 which generates information on a motion of the part data, as motion control data; and a dataset generation section 313 which stores the part data and the motion control data in a dataset according to a hierarchical structure based on the positional relationship thereof, to generate modeling data.SELECTED DRAWING: Figure 11

Description

本発明は、仮想空間上において、所定の立体的形状が定義されたアバターに関するモデリングデータを生成及び編集するモデリングシステム及びモデリングプログラムに関する。   The present invention relates to a modeling system and a modeling program for generating and editing modeling data related to an avatar in which a predetermined three-dimensional shape is defined in a virtual space.

従来、コンピュータグラフィックスの分野において、仮想空間上の3Dモデルを作成する場合、ボーンをジョイントにより連結して構成されたスケルトンと呼ばれる骨構造を用いる手法が採用されている。詳述すると、先ず、ポリゴンで構成される3次元モデルの内部に多数の骨となるボーンと、関節となるジョイントとから成るスケルトンデータを構築する。次いで、人体等の3Dモデルの皮膚や筋肉、頭髪、顔の各部等を、スケルトンデータに関連づけられたポリゴンで作り込んでいく。具体的には、皮膚としては、一般にウェイトと呼ばれる骨構造に連動して変形するポリゴンの制御情報を作成する必要がある。   Conventionally, in the field of computer graphics, when creating a 3D model in a virtual space, a technique using a bone structure called a skeleton configured by connecting bones by joints has been adopted. More specifically, first, skeleton data composed of a number of bones and a number of joints is built inside a three-dimensional model composed of polygons. Next, the skin, muscle, hair, face, and the like of the 3D model such as the human body are created with polygons associated with the skeleton data. Specifically, it is necessary for the skin to create control information for polygons that are deformed in conjunction with a bone structure generally called a weight.

近年では、テレビゲームやインターネットゲームなどの分野で、ユーザーが自分の分身となる3Dモデル、所謂「アバター」を作成し、このアバターを介して、ゲームやサービスに参加する形態が普及しつつある。このアバターについては、顔の形や、目・鼻などのパーツの色や形をユーザーが変更して自由に顔やスタイルをデザインすることが求められる(例えば、特許文献1参照。)。   In recent years, in the fields of video games, Internet games, and the like, a form in which a user creates a 3D model, a so-called “avatar”, to become his or her own character and participates in a game or a service via this avatar is becoming widespread. For this avatar, it is required that the user freely design the face and style by changing the shape of the face and the color and shape of the parts such as eyes and nose (see, for example, Patent Document 1).

特開2002−92641号公報JP 2002-92641 A

しかしながら、厳密な3Dモデルとしてパーツを編集するためには、例えば、人物のモデルや部分的なパーツが変更されると、そのパーツに関連する骨構造のみならず、そのパーツを動かすための筋肉や動作制御などの付随情報を変更する必要が生じ、場合によってはウェイトを再編集する必要も生じる。このような作業は複雑であるため、手間がかかるばかりでなく作業者には豊富な経験が求められる。   However, in order to edit a part as a strict 3D model, for example, when a person's model or a partial part is changed, not only the bone structure related to the part but also muscles for moving the part, The accompanying information such as operation control needs to be changed, and in some cases, the weight needs to be re-edited. Since such work is complicated, it is not only time-consuming but also requires a wealth of experience.

このため従来では、ユーザーが自由にアバターを編集させる場合には、顔のパーツなどを二次元的なデータとしておき、顔部の3Dパーツの表面に貼り付けるようにして、擬似的に3D化することで対応しているが、近年では、3D映像の精細化が進んでおり、よりリアルなアバターを、より簡単な操作で作成できるシステムの要請が高まっている。   For this reason, conventionally, when a user freely edits an avatar, a facial part or the like is set as two-dimensional data and is pasted on the surface of the 3D part of the facial part to make it pseudo 3D. However, in recent years, 3D video has become more refined, and there is an increasing demand for a system that can create a more realistic avatar by a simpler operation.

そこで、本発明は、上記のような問題を解決するものであり、より精細でリアリティーのある3Dモデルを、高度な技能や経験を要することなく、簡単な操作で自由に作成・編集できるモデリングシステム、モデリングプログラム、及びモデリング方法を提供することを目的とする。   Therefore, the present invention solves the above-described problems, and a modeling system capable of freely creating and editing a more detailed and realistic 3D model with a simple operation without requiring advanced skills and experience. An object is to provide a modeling program and a modeling method.

上記課題を解決するために、本発明は、仮想空間上において、所定の立体的形状が定義されたアバターに関するモデリングデータを生成及び編集するモデリングシステムであって、
前記仮想空間上における所定の2点により定義されるボーンデータを複数連結してスケルトンデータを構成し、前記スケルトンデータに対して関連づけられオブジェクトの外表面をポリゴンによって定義するスキンデータを、位置関係に従ってグループ化し、グループ毎にパーツデータを生成するパーツ生成部と、
各パーツデータの動作に関する情報を動作制御データとして生成する動作管理部と、
パーツデータ及び動作制御データを、相互の位置関係に基づいた階層構造に従ってデータセットに格納し、モデリングデータを生成するデータセット生成部と
を備えることを特徴とする。
In order to solve the above problems, the present invention is a modeling system for generating and editing modeling data related to an avatar in which a predetermined three-dimensional shape is defined in a virtual space,
A plurality of bone data defined by two predetermined points in the virtual space are connected to form skeleton data, and skin data associated with the skeleton data and defining the outer surface of the object by polygons is defined according to the positional relationship. A parts generation unit that groups and generates part data for each group;
An operation management unit that generates information on the operation of each part data as operation control data;
A data set generation unit that stores part data and motion control data in a data set according to a hierarchical structure based on a mutual positional relationship and generates modeling data is provided.

他の発明は、仮想空間上において、所定の立体的形状が定義されたアバターに関するモデリングデータを生成及び編集するモデリング方法であって、
(1)前記仮想空間上における所定の2点により定義されるボーンデータを複数連結してスケルトンデータを構成し、前記スケルトンデータに対して関連づけられオブジェクトの外表面をポリゴンによって定義するスキンデータを、位置関係に従ってグループ化し、グループ毎にパーツデータを生成するパーツ生成ステップと、
(2)前記各ボーンデータの前記スキンデータに対する影響度を定義するウェイトデータと、前記パーツデータの動作に関する情報とを、動作制御データとして生成する動作管理ステップと、
(3)前記パーツデータ及び動作制御データを、相互の位置関係に基づいた階層構造に従ってデータセットに格納し、前記モデリングデータを生成するデータセット生成ステップと
を備えることを特徴とする。
Another invention is a modeling method for generating and editing modeling data related to an avatar in which a predetermined three-dimensional shape is defined in a virtual space,
(1) A plurality of bone data defined by two predetermined points on the virtual space are connected to form skeleton data, and skin data that is associated with the skeleton data and defines the outer surface of the object by polygons, A part generation step for grouping according to the positional relationship and generating part data for each group;
(2) an operation management step of generating weight data defining the degree of influence of each bone data on the skin data, and information relating to the operation of the part data as operation control data;
(3) A data set generation step of storing the part data and the motion control data in a data set according to a hierarchical structure based on a mutual positional relationship, and generating the modeling data.

これらの発明によれば、仮想空間上における立体的形状であるアバターを構成する各部位(身体、頭部、目、鼻、口等)を、その位置関係に従ってグループ化し、グループ毎にパーツデータとすることにより、交換用のパーツデータを選択して読み込むという簡単な操作で、ユーザーが任意のパーツを選択して好みのデザインのアバターを自由に作成することができる。このとき、アバターの骨格となるスケルトンデータや、皮膚や衣装となるポリゴンであるスキンデータとの整合性や、アニメーションに必要となる動作制御データなどの必要な情報は、相互の位置関係に基づいた階層構造をなすデータセットに格納されているため、複雑な作業を要することなく、所望のアバターを作成することができる。   According to these inventions, each part (body, head, eyes, nose, mouth, etc.) constituting an avatar that is a three-dimensional shape in a virtual space is grouped according to the positional relationship, and part data and By doing so, the user can freely create an avatar of a desired design by selecting an arbitrary part by a simple operation of selecting and reading replacement part data. At this time, the necessary information such as the skeleton data that is the skeleton of the avatar, the consistency with the skin data that is the polygon that is the skin and the costume, and the motion control data that is necessary for the animation are based on the mutual positional relationship. Since it is stored in a data set having a hierarchical structure, a desired avatar can be created without requiring complicated work.

上記発明において、任意のパーツデータ及びこのパーツデータに対応する動作制御データを交換用データとして取得するとともに、取得された交換用データに対応するパーツデータ及び動作制御データを、交換の対象となるモデリングデータから選択し、選択されたパーツデータをそのデータセットから切り出すパーツ選択部と、交換用データに含まれるパーツデータのデータ構成に関する情報である交換用トポロジーデータを取得するとともに、交換の対象となるモデリングデータのデータ構成に関する情報である基礎トポロジーデータを取得する基礎データ取得部と、交換用トポロジーデータと基礎トポロジーデータとを比較し、比較結果に基づいて、パーツ選択部により切り出されたパーツデータに関連する動作制御データ、又は、交換用データ内の動作制御データを選択して読み込むパーツ交換処理部とをさらに設けることができる。   In the above invention, any part data and operation control data corresponding to the part data are acquired as replacement data, and the part data and operation control data corresponding to the acquired replacement data are modeled for replacement. The data is selected from the data, the selected part data is cut out from the data set, and the replacement topology data, which is the information related to the data structure of the part data included in the replacement data, is acquired and is subject to replacement The basic data acquisition unit that acquires basic topology data, which is information related to the data structure of the modeling data, and the comparison topology data and basic topology data are compared, and based on the comparison result, the part data extracted by the part selection unit Related motion control data or exchange Operation control data in use data can be further provided a parts exchange processing unit to read by selecting.

この場合には、例えば、パーツを切り出す基となるベースモデルの中に含まれる情報を交換用データとして取得するか、或いは予め用意された交換用データを取得し、交換の対象となるモデリングデータであるベースモデルの中から交換用データに対応する部位のパーツデータを切り出し、切り出したパーツデータと交換用データとを比較し、ベースモデル又は交換用データのいずれかから、必要な情報を選択して抽出し、組み合わせることで、任意のパーツが交換された新たなアバターを作成することができる。   In this case, for example, the information included in the base model that is the basis for cutting out the parts is acquired as replacement data, or the replacement data prepared in advance is acquired and the modeling data to be replaced is obtained. Cut out the part data of the part corresponding to the replacement data from a certain base model, compare the cut out part data with the replacement data, and select the necessary information from either the base model or the replacement data. By extracting and combining, a new avatar in which arbitrary parts are exchanged can be created.

詳しくは、スケルトンデータに対する相対位置関係や、ポリゴンの構成、アニメーションに必要となる動作制御データなど、モデリングデータのデータ構成に関する情報をトポロジーデータとして読み込むが、その際、新たに読み込まれた交換用トポロジーデータと、ベースモデルの基礎トポロジーデータとを比較し、双方で一致している情報についてはベースモデルのトポロジーを用い、異なる情報については新たに読み込まれたパーツのトポロジーを用いることで、ベースモデルと新たなパーツとの整合性を維持しつつ、新たなパーツの特徴を反映させたアバターを作成することができる。   Specifically, information related to the data structure of the modeling data, such as the relative positional relationship to the skeleton data, the polygon configuration, and the motion control data required for animation, is read as topology data. At that time, the newly loaded replacement topology By comparing the data with the basic topology data of the base model, the base model topology is used for information that is consistent with the base model, and the topology of the newly read part is used for different information. An avatar that reflects the characteristics of the new part can be created while maintaining consistency with the new part.

上記発明において、ユーザー操作に基づいて、編集の対象となるモデリングデータから任意のパーツデータを選択するとともに、選択されたパーツデータ及びこのパーツデータに対応する動作制御データを、編集用データとしてデータセットから切り出すパーツ選択部と、編集用データに含まれるパーツデータ又は動作制御データに変更を加えるパーツ編集部と、編集用データに含まれるパーツデータのデータ構成に関する情報である編集用トポロジーデータを生成するとともに、編集の対象となるモデリングデータのデータ構成に関する情報である基礎トポロジーデータを取得する基礎データ取得部と、編集用トポロジーデータと基礎トポロジーデータとを比較し、比較結果に基づいて、パーツ選択部により切り出されたパーツデータに関連する動作制御データ、又は、編集用データ内の動作制御データを選択して読み込むパーツ交換処理部とをさらに設けることができる。   In the above invention, based on the user operation, any part data is selected from the modeling data to be edited, and the selected part data and operation control data corresponding to the part data are set as data for editing. A part selection part to be cut out from the part, a part editing part for changing the part data or the operation control data included in the editing data, and an editing topology data which is information on the data structure of the part data included in the editing data In addition, the basic data acquisition unit that acquires basic topology data, which is information related to the data structure of the modeling data to be edited, is compared with the editing topology data and basic topology data, and based on the comparison result, the part selection unit For part data cut out by Operation control data, or it can further include a parts exchange processing unit to read by selecting the operation control data in the edit data.

この場合には、例えば、パーツを切り出す基となるベースモデルの中に含まれる情報を編集用データとして取得するか、或いは予め用意された編集用データを取得し、編集の対象となるモデリングデータであるベースモデルの中から編集用データに対応する部位のパーツデータを切り出し、切り出したパーツデータに変更を加える。切り出したパーツデータと、変更を加えられた新たな編集用データとを比較し、ベースモデル又は編集用データのいずれかから、必要な情報を選択して抽出し、組み合わせることで、任意のパーツが編集された新たなアバターを作成することができる。   In this case, for example, the information included in the base model that is the basis for cutting out the parts is acquired as editing data, or the editing data prepared in advance is acquired and the modeling data to be edited is used. The part data corresponding to the editing data is cut out from a certain base model, and the cut-out part data is changed. Compare the cut-out part data with the new editing data that has been changed, select and extract the necessary information from either the base model or the editing data, and combine them into any part. You can create a new edited avatar.

上記発明において、データセット内の任意のパーツに含まれるポリゴンデータを、階層構造の上位にあるパーツのポリゴンデータと比較し、各ポリゴンデータに含まれる各頂点の座標の一致・不一致を判断し、一致する頂点同士を同一化する縫合部をさらに設けることができる。   In the above invention, the polygon data included in an arbitrary part in the data set is compared with the polygon data of a part higher in the hierarchical structure to determine whether the coordinates of the vertices included in each polygon data match or not. It is possible to further provide a stitching portion that makes the matching vertices identical.

この場合には、ベースモデルに交換用のパーツを組み付ける際に、接合する部分に含まれるポリゴンの頂点のうち、座標が一致するものを同一化することにより、グラフィックを表示する際の無駄なレンダリングを省略することができ、処理の高速化を図ることができるとともに、不必要な頂点についての動作制御も省略することができ、パーツを入れ替えた際の、ポリゴンの不整合が発生する確率を低減することができる。   In this case, when assembling a replacement part to the base model, by rendering the polygon vertices included in the joined parts identical to each other with the same coordinates, useless rendering when displaying graphics Can be omitted, the processing speed can be increased, and operation control for unnecessary vertices can be omitted, reducing the probability of polygon inconsistencies when parts are replaced. can do.

なお、上記モデリングプログラムを使用することで、特別な処理装置を必要とせず、上述したモデリングシステムを、様々な情報処理装置において実現することができる。すなわち、このモデリングプログラムを、汎用的なコンピューターやICチップにインストールし、CPU上で実行することにより、上述した各機能を有するモデリングシステムを容易に構築することができる。このプログラムは、例えば、通信回線を通じて配布することが可能であり、またスタンドアローンの計算機上で動作するパッケージアプリケーションとして譲渡することができる。そして、このようなモデリングプログラムは、コンピューターで読み取り可能な記録媒体に記録することができ、汎用のコンピューターや専用コンピューターを用いて、上述したシステムや方法を実施することが可能となるとともに、プログラムの保存、運搬及びインストールを容易に行うことができる。   By using the above modeling program, the above-described modeling system can be realized in various information processing apparatuses without requiring a special processing apparatus. That is, by installing this modeling program on a general-purpose computer or IC chip and executing it on the CPU, a modeling system having the above-described functions can be easily constructed. This program can be distributed through a communication line, for example, and can be transferred as a package application that operates on a stand-alone computer. Such a modeling program can be recorded on a computer-readable recording medium, and the above-described system and method can be implemented using a general-purpose computer or a dedicated computer. Storage, transportation and installation can be performed easily.

以上述べたように、この発明によれば、仮想空間上において、所定の立体的形状が定義されたアバターに関するモデリングデータを生成及び編集するにあたり、より精細でリアリティーのある3Dモデルを、高度な技能や経験を要することなく、簡単な操作で自由に作成・編集できる。   As described above, according to the present invention, in generating and editing modeling data related to an avatar in which a predetermined three-dimensional shape is defined in a virtual space, a more detailed and realistic 3D model can be converted into an advanced skill. You can create and edit freely with simple operations without requiring any experience.

実施形態に係るモデリングプログラムの起動画面を示す説明図である。It is explanatory drawing which shows the starting screen of the modeling program which concerns on embodiment. 実施形態に係るモデリングプログラムにおけるモデリングデータの階層構造を示す説明図である。It is explanatory drawing which shows the hierarchical structure of the modeling data in the modeling program which concerns on embodiment. 実施形態に係るモデリング方法の手順を示すフロー図である。It is a flowchart which shows the procedure of the modeling method which concerns on embodiment. (a)実施形態に係るスケルトンデータを示す説明図であり、(b)は、身体パーツを示す説明図である。(A) It is explanatory drawing which shows the skeleton data which concern on embodiment, (b) is explanatory drawing which shows a body part. (a)実施形態に係る装飾パーツを示す説明図であり、(b)は、装飾パーツを身体パーツと組み合わせた状態を示す説明図である。(A) It is explanatory drawing which shows the decorative part which concerns on embodiment, (b) is explanatory drawing which shows the state which combined the decorative part with the body part. (a)実施形態に係る身体パーツを示す説明図であり、(b)は、頭部パーツを示す説明図である。(A) It is explanatory drawing which shows the body part which concerns on embodiment, (b) is explanatory drawing which shows a head part. (a)実施形態に係る頭部パーツに付随する説明図であり、(b)は、頭部パーツに目パーツを組み込んだ状態を示す説明図である。(A) It is explanatory drawing accompanying the head part which concerns on embodiment, (b) is explanatory drawing which shows the state which incorporated the eye part in the head part. 実施形態に係るモデリング方法において、頭部パーツから目や口のパーツを切り出す手順を示す説明図である。In the modeling method which concerns on embodiment, it is explanatory drawing which shows the procedure which cuts out parts of eyes and a mouth from head parts. 実施形態に係るモデリング方法におけるSkin_Weightデータを可視化した状態を示す説明図である。It is explanatory drawing which shows the state which visualized Skin_Weight data in the modeling method which concerns on embodiment. 実施形態に係るモデリングシステムの全体構成を示す概念図である。It is a conceptual diagram which shows the whole structure of the modeling system which concerns on embodiment. 実施形態に係るモデリング生成サーバーの内部構成を示すブロック図である。It is a block diagram which shows the internal structure of the modeling production | generation server which concerns on embodiment. 実施形態に係るモデリング配信サーバーの内部構成を示すブロック図である。It is a block diagram which shows the internal structure of the modeling delivery server which concerns on embodiment. 実施形態に係るユーザー端末の内部構成を示すブロック図である。It is a block diagram which shows the internal structure of the user terminal which concerns on embodiment.

以下に添付図面を参照して、本発明に係るモデリングシステム、モデリング方法及びモデリングプログラムの実施形態を詳細に説明する。本実施形態において、モデリングシステムは、仮想空間上において、所定の立体的形状が定義されたアバターに関するモデリングデータを生成及び編集するシステムであり、本発明のモデリングプログラムを実行することにより構築される。   Exemplary embodiments of a modeling system, a modeling method, and a modeling program according to the present invention will be described below in detail with reference to the accompanying drawings. In the present embodiment, the modeling system is a system that generates and edits modeling data related to an avatar in which a predetermined three-dimensional shape is defined in a virtual space, and is constructed by executing the modeling program of the present invention.

(モデリングシステム及びモデリングプログラムの概要)
本実施形態に係るモデリングシステムは、パーソナルコンピューターやサーバー装置などの汎用コンピューターに、本実施形態に係るモデリングプログラムをインストールし、実行することにより実現される。図1は、本実施形態に係るモデリングプログラムの起動画面を示す説明図である。
(Outline of modeling system and modeling program)
The modeling system according to the present embodiment is realized by installing and executing the modeling program according to the present embodiment on a general-purpose computer such as a personal computer or a server device. FIG. 1 is an explanatory diagram showing a startup screen of a modeling program according to the present embodiment.

このモデリングプログラムは、人間や動物、ロボットなど、所定の立体的形状が定義されたアバターに関するモデリングデータを生成及び編集するプログラムであり、図1に示すように、画面10の右側にアバターA1が表示され、このアバターA1に対する操作を行うためのGUI101〜103が配置されている。   This modeling program is a program for generating and editing modeling data related to an avatar in which a predetermined three-dimensional shape is defined, such as a human being, an animal, and a robot, and an avatar A1 is displayed on the right side of the screen 10 as shown in FIG. In addition, GUIs 101 to 103 for performing operations on the avatar A1 are arranged.

アバターA1は、頭部パーツP1と、身体パーツP2に大きく分けられ、頭部パーツP1には、頭髪パーツP11や目パーツP13などが付随し、身体パーツP2には、服や靴等の装飾パーツP3が付随している。そして、GUI101〜103を操作することにより、上述した各パーツの入れ替え、髪の毛などの身体パーツの入れ替え、アバターの全身や、胸、顔などアバターの部位のサイズ又は形状の変更(モーフィング)、目の色などの変更(テクスチャの入れ替え)を施すことができる。   The avatar A1 is roughly divided into a head part P1 and a body part P2. The head part P1 is accompanied by a hair part P11 and an eye part P13, and the body part P2 is a decorative part such as clothes or shoes. P3 is attached. Then, by operating the GUIs 101 to 103, replacement of the above-described parts, replacement of body parts such as hair, change of the size or shape of the avatar parts such as the whole body of the avatar, the chest and the face (morphing), eyes Changes such as color (texture replacement) can be made.

本実施形態において、アバターに関するモデリングデータは、パーツデータ及び動作制御データを、図2に示すような、身体上における相互の位置関係に基づいた階層構造100に従ってデータセットに格納することで構成されている。このデータセットは、所定のファイル形式(例えば、FBX形式)で保存され、各パーツの表面に貼り付けられるテクスチャは、画像ファイル形式で保存される。このテクスチャについては、1パーツにつき1つの画像ファイルが関連づけられる。なお、複数のテクスチャを使用している場合は、1つの画像ファイルに統合される。   In the present embodiment, modeling data relating to the avatar is configured by storing part data and motion control data in a data set according to a hierarchical structure 100 based on a mutual positional relationship on the body as shown in FIG. Yes. This data set is stored in a predetermined file format (for example, FBX format), and the texture to be pasted on the surface of each part is stored in an image file format. For this texture, one image file is associated with each part. If a plurality of textures are used, they are integrated into one image file.

(1)パーツデータ
パーツデータは、人体の身体各部(本実施形態では頭部を除く。)のボーンデータ周囲の外表面を形作るスキンデータの他、人体やキャラクターの頭部や目などのボーンデータとの直接的な関係を有しないポリゴンデータなどが、相対位置関係に従ってグループ化され、グループ毎にアバターの部位としてまとめられたデータセットの1要素であり、仮想空間上において一塊のオブジェクトとして扱われる。なお、本実施形態のモデリングデータは、頭部や目などのパーツの他、上記身体のスキンデータも、すべてポリゴンデータで構成されており、ポリゴンデータは三角ポリゴンまたは四角ポリゴンとし、1パーツにつき全ポリゴンの頂点数は、42,000頂点数以下に設定される。
(1) Parts data The parts data is the bone data of the human body and the character's head and eyes in addition to the skin data that forms the outer surface around the bone data of each part of the human body (excluding the head in this embodiment). Polygon data, etc. that do not have a direct relationship with are grouped according to the relative positional relationship, and are one element of a data set that is grouped as an avatar part for each group, and are handled as a single object in the virtual space . The modeling data of the present embodiment is composed of polygon data as well as the body skin data in addition to the parts such as the head and eyes, and the polygon data is triangular polygons or square polygons. The number of vertices of the polygon is set to 42,000 or less.

本実施形態では、図4(b)に示すように、頭部パーツと身体パーツとに大きく分けられており、頭部パーツは、ボーンデータとの直接的な関係を有しないポリゴンデータを主なデータ要素とし、身体パーツは、ボーンデータ周囲の外表面を形作るスキンデータを主なデータ要素としている。各パーツでは、変形可能な範囲を予め規定するように、最小状態、中央値の状態及び最大状態のパーツの形がセットになって作成され、保存される。   In this embodiment, as shown in FIG. 4B, the head part and the body part are roughly divided, and the head part mainly includes polygon data having no direct relationship with bone data. The body part has skin data that forms the outer surface around bone data as the main data element. In each part, the shape of the part in the minimum state, the median state, and the maximum state is created and stored as a set so as to predetermine the deformable range.

(2)スケルトンデータ
ボーンデータは、仮想空間上における所定の2点により定義され所定の長さを有し、アバターの骨となるデータであり、図4(a)に示すように、複数のボーンデータB1〜242が複数連結されてアバターの骨格となるスケルトンデータが構成される。ボーンデータにはその両端における関節に相当するジョイントデータが含まれ、このジョイントデータにより、連結されたボーンの主従関係が決められ、従属するボーンの、親のボーンに対する相対移動範囲が規定される。
(2) Skeleton data Bone data is data that is defined by two predetermined points in the virtual space and has a predetermined length and serves as an avatar bone. As shown in FIG. A plurality of data B1 to 242 are connected to form skeleton data that is a skeleton of the avatar. The bone data includes joint data corresponding to joints at both ends thereof, the master-slave relationship of the connected bones is determined by this joint data, and the relative movement range of the subordinate bones with respect to the parent bone is defined.

各パーツのスキンデータ(ポリゴンデータ)は、スケルトンデータとの相対位置に従って各頂点の座標が、直接的に又は他のパーツを介して間接的に定められ、スケルトンデータ内のボーンの動きに応じて、スキンデータ(ポリゴンデータ)の各頂点も移動するようになっている。例えば、アバターの首から下の身体パーツにはスケルトンデータが含まれ、首から上の頭部や、頭部に付随する目、鼻、口などのパーツは、首のボーンデータに対する相対位置だけが含まれるなど、パーツの特性によってスケルトンデータとの関連づけが異なる。   The skin data (polygon data) of each part is determined by the coordinates of each vertex according to the relative position with the skeleton data, either directly or indirectly through other parts, depending on the movement of the bone in the skeleton data. Each vertex of the skin data (polygon data) is also moved. For example, the body parts below the neck of the avatar contain skeleton data, and the head part above the neck and the parts such as the eyes, nose and mouth associated with the head are only relative to the bone data of the neck. The association with the skeleton data varies depending on the part characteristics.

(3)スキンデータ
スキンデータは、本実施形態では、主に身体パーツのように、一つ又は複数のボーンデータに対して関連づけられて、オブジェクト(パーツ、アバター自身が含まれる)の外表面を定義するポリゴンデータである。具体的には、多数の頂点座標により定義された多面形状をなすポリゴンデータであり、各頂点座標は、所定のボーンデータに対する相対的位置関係や、相対移動範囲が規定されている。
(3) Skin data In this embodiment, skin data is associated with one or a plurality of bone data, such as body parts, and the outer surface of an object (including parts and avatars themselves) is displayed. Polygon data to be defined. Specifically, it is polygon data having a polyhedral shape defined by a large number of vertex coordinates, and each vertex coordinate defines a relative positional relationship with respect to predetermined bone data and a relative movement range.

また、各パーツやアバターを形成するポリゴンデータは、トポロジーデータにより、その組み方(頂点の数や、配置順序、頂点を結ぶエッジの構造などを含むメッシュ構造)が定義されている。   The polygon data forming each part or avatar is defined by topology data, and the way of assembling (mesh structure including the number of vertices, the arrangement order, and the structure of edges connecting the vertices) is defined.

(4)動作制御データ(Skin_Weightデータ及びBlend_Shapeデータ)
動作制御データには、各ボーンデータに関連づけられたスキンデータに対する影響度を定義するウェイトデータ(Skin_Weightデータ)と、又は頭部や目などのようにボーンデータに直接的には関連づけられていないが、間接的に動作が規定されるパーツデータの動作に関する情報(Blend_Shapeデータ)とが含まれる。Skin_Weightデータは、主にアバターの身体の動きを制御するためのデータであり、Blend_Shapeデータは、顔部分や顔に付随する各パーツの動きを制御するためのデータである。このような動作制御データは、パーツデータとともに、相互の位置関係に基づいた階層構造に従ってデータセットに格納又は関連づけされ、モデリングデータを構成する。
(4) Motion control data (Skin_Weight data and Blend_Shape data)
The motion control data is not directly related to the bone data such as the weight data (Skin_Weight data) that defines the degree of influence on the skin data associated with each bone data, or the head and eyes. And information (Blend_Shape data) on the operation of the part data whose operation is indirectly defined. Skin_Weight data is mainly data for controlling the movement of the avatar's body, and Blend_Shape data is data for controlling the movement of the face part and each part associated with the face. Such motion control data is stored or associated in a data set according to a hierarchical structure based on the mutual positional relationship together with the part data, and constitutes modeling data.

(モデリング方法の概要)
次いで、本実施形態におけるモデリング方法について詳述する。図3は、本実施形態に係るモデリング方法の手順を示すフロー図である。
(Outline of modeling method)
Next, the modeling method in this embodiment will be described in detail. FIG. 3 is a flowchart showing the procedure of the modeling method according to the present embodiment.

(1)初期化プロセス
アバターの作成・変種作業の開始時に、各種データの初期化を行う。先ず、 すべてのパーツが格納されたFBXファイルとテクスチャファイルを読み込む(S101)。この読み込まれたファイルに含まれるデータセットから、各パーツの階層レベルを取得する(S102)とともに、各パーツの親IDを取得する。この親IDとは、上記階層レベルに従って、上位に位置するパーツを特定するIDであり、この親IDによって各パーツの主従関係、位置関係が定められる。
(1) Initialization process Various data is initialized at the start of avatar creation / variation work. First, an FBX file and a texture file in which all parts are stored are read (S101). The hierarchical level of each part is acquired from the data set included in the read file (S102), and the parent ID of each part is acquired. The parent ID is an ID for identifying a part located at an upper level in accordance with the hierarchical level. The master-slave relationship and the positional relationship of each part are determined by the parent ID.

次いで、各パーツのスキンデータ(ポリゴンデータ)の頂点の数を取得するとともに、ベースモデルの対応する部位のポリゴンデータについて、頂点同士を比較し、各頂点について、同じ座標を計算する(S105)。すなわち、ベースモデルの身体パーツの頂点と同じ座標をもつ、パーツの頂点の座標を検索し、その数をカウントする。このとき、座標が一致すれば同一の頂点としてカウントし、不一致であれば異なる超点数としてカウントする。   Next, the number of vertices of the skin data (polygon data) of each part is acquired, the vertices are compared for the polygon data of the corresponding part of the base model, and the same coordinates are calculated for each vertex (S105). That is, the coordinates of the vertices of the parts having the same coordinates as the vertices of the body parts of the base model are searched, and the number is counted. At this time, if the coordinates match, they are counted as the same vertex, and if they do not match, they are counted as different superpoints.

次いで、差し替え可能なパーツ、及び重なっている部分のあるパーツの登録を行う(S106及びS107)。具体的には、ステップS105で行った一致・不一致のカウント数に応じて、異なる頂点数が閾値以下であれば、ベースモデルのパーツと同一であるとみなし、そのパーツに対して、“同じ”旨のマークを付与し、ベースモデルの身体パーツの各頂点に対して、階層上位(親)の身体パーツと”同じ”頂点が存在していたら、” 入れ替え(Replacement)”として登録される。一方、身体パーツのいくつかの頂点が”同じ頂点”として存在していたら、その頂点は”縫い合わせ”として登録される。階層下位(子)の身体パーツが親の身体パーツに対して、空白が存在していたら、後述する接続(Connect)処理のために、”接続(Connect)”と登録される。   Next, parts that can be replaced and parts that have overlapping parts are registered (S106 and S107). More specifically, if the number of different vertices is less than or equal to the threshold according to the number of coincidence / non-coincidence performed in step S105, it is regarded as the same as the part of the base model, and “same” for the part. If there is a “same” vertex as the body part of the higher hierarchy (parent) for each vertex of the body part of the base model, it is registered as “Replacement”. On the other hand, if some vertices of the body part exist as “same vertex”, the vertex is registered as “sewing”. If the lower body part (child) body part has a blank with respect to the parent body part, “Connect” is registered for the connection process described later.

(2)アニメーションの各フレームの入力計算
パーツモデルについては、モーフィングサイズパラメータ、選択されたパーツのトポロジー、アニメーションファイル(ジョイントデータ、Blend_Shapeデータ)が読み込まれる。なお、アニメーションデータは、ファイル形式で取得されなくてもよく、例えばデータがストリーミング配信により順次取得される方式であってもよい。
そして、パーツやトポロジーに変更があったか判断が行われ(S108)、変更があれば、ステップS109に進み、変更がなければ変形をすることなく、パーツの入れ替え(S112)に進む。
(2) Input calculation of each frame of animation For the part model, the morphing size parameter, the topology of the selected part, and the animation file (joint data, Blend_Shape data) are read. The animation data may not be acquired in a file format, and may be a method in which data is sequentially acquired by streaming distribution, for example.
Then, it is determined whether or not there is a change in the part or topology (S108). If there is a change, the process proceeds to step S109, and if there is no change, the process proceeds to replacement of the part without deformation (S112).

(3)パーツの連結
上記ステップS109では、Blend_Shapeデータの計算をし、すべてのトポロジーと変異に適用する。具体的には、Blend_Shapeデータは、各トポロジーのすべての頂点に対して、移動量を定義しており、新しい頂点の位置は下記式で計算される。
(3) Part Connection In the above step S109, Blend_Shape data is calculated and applied to all topologies and mutations. Specifically, Blend_Shape data defines the amount of movement for all vertices of each topology, and the position of the new vertex is calculated by the following equation.

次いで、モーフィングによる変形、及びサイズ変更による変更を実行する(S110及びS111)。具体的には、ユーザーがインプットした値によって変形量、サイズが決定される。このとき、サイズが変更されたパーツに付随するパーツのサイズも変更される。例えば、頭部のサイズを大きくした場合には、その頭部に付随する眉毛などのパーツのサイズも大きくなる。   Next, deformation by morphing and change by size change are executed (S110 and S111). Specifically, the amount of deformation and the size are determined by the value input by the user. At this time, the size of the part attached to the part whose size has been changed is also changed. For example, when the size of the head is increased, the size of parts such as eyebrows attached to the head is also increased.

特に、このモーフィングでは、各パーツの頂点、線、顔や身体の動作制御データ(Blend_Shapeデータ、Skin_Weightデータ)について、最大モデルと最小モデルとの間を補間して、滑らかに拡大・縮小するようにする。具体的には、Blend_Shapeデータの演算処理を実行した後に、モデルをmp,t,kとすると、変形グループ(variant group)は、Gp,t,g={mp,t,k0, ..., mp,t,kn}で定義される。ここで、pはパーツ番号であり、 tはトポロジーであり、kは変形量(userが入力)であり、gはグループ番号である。   In particular, in this morphing, the vertex, line, face and body motion control data (Blend_Shape data, Skin_Weight data) of each part is interpolated between the maximum model and the minimum model so that it can be smoothly scaled. To do. Specifically, after executing the Blend_Shape data calculation process, if the model is mp, t, k, the variant group is Gp, t, g = {mp, t, k0, ..., mp, t, kn}. Here, p is a part number, t is a topology, k is a deformation amount (user is input), and g is a group number.

そして、各変形グループに対して、ユーザーがスライダーを操作するなどして、変形量が入力されると、Sp,t,g がスライダー値として取得される。ここで、スライダー値はSp,t,g∈[0,n] とする。ここで、nはvariant グループ番号である。   For each deformation group, when the deformation amount is input by the user operating the slider, for example, Sp, t, g are acquired as slider values. Here, it is assumed that the slider value is Sp, t, gε [0, n]. Where n is a variant group number.

上記補間は、線形補間を用い、座標間を直線的に補間する。この補間処理の下式により求められる。
ここで、r∈{0,...,n}とし、r≦ Sp,t,g<r+1.すべての頂点に対して、下記式によって新しい頂点を計算する。

また、上述したように、サイズが変更されたパーツに付随するパーツのサイズも変更するときの処理は、以下の通りである。
The above interpolation uses linear interpolation and linearly interpolates between coordinates. It is obtained by the following equation of this interpolation process.
Here, r∈ {0,..., N}, and r ≦ Sp, t, g <r + 1. For all vertices, calculate new vertices according to the following formula.

Further, as described above, the processing when changing the size of the part accompanying the part whose size has been changed is as follows.

例えば、頭を大きくした時の眉毛も一緒に大きくする際、Blend_Shapeデータの演算やモーフィングで頂点座標を移動すると、元々の形と異なる形になっている。そのため、3D空間内でねじれが起きる場合がある。本実施形態では、このサイズ変更の際に生じるねじれを下記の方法によって修正する。   For example, when the eyebrows when the head is enlarged is enlarged together, if the vertex coordinates are moved by calculation or morphing of Blend_Shape data, the shape is different from the original shape. As a result, twisting may occur in the 3D space. In the present embodiment, the twist that occurs during the size change is corrected by the following method.

先ず、δva,iをbody part pの頂点vpiの元の座標からモーフィング後の座標までの移動とする。Aをすべてのbody part pの親の集合とすると、新しい頂点は、下記の式で計算される。
なお、オリジナルのポジションでは、Blend_Shapeデータに基づく移動もモーフィングによる移動もないものとする。
First, let δva, i be the movement from the original coordinates of the vertex vpi of body part p to the coordinates after morphing. If A is the set of parents of all body parts p, the new vertex is calculated as follows:
In the original position, neither movement based on Blend_Shape data nor movement due to morphing is assumed.

次いで、パーツの入れ替え(Replacement)を実行し(S112)、その後、上位(親)のパーツと同じ座標に頂点座標をコピーし、Stitching(縫い合わせ) を実行し(S113)、子パーツを縫い合わせる。その後、最適化処理(Global optimization)を実行し、メッシュの変更をスムーズにする。   Next, part replacement is executed (S112), and then the vertex coordinates are copied to the same coordinates as the upper (parent) part, Stitching is executed (S113), and the child parts are sewn together. Thereafter, an optimization process (Global optimization) is executed to smoothly change the mesh.

上記パーツの入れ替え(Replacement)では、ユーザーがパーツの入れ替えを実行すると、自動的に縫い合わせ処理(Stitching)が実行される。この入れ替え(Replacement)では、ベースモデル及び交換用パーツのスキンデータ内における、同じ頂点同士を入れ替える。   In the above part replacement (Replacement), when the user performs part replacement, stitching processing (Stitching) is automatically executed. In this replacement, the same vertices in the skin data of the base model and the replacement part are replaced.

また、上記縫い合わせ処理(Stitching)では、ユーザーがパーツの入れ替えを実行すると、切り出されたスキンデータの外縁であるOutlineと、ベースモデル側の外縁に対応するOutlineを重ね合わせて、比較し、縫い合わせを行う。この時、無駄なレンダリングを省くため、交換用パーツに含まれる頂点のみを採用する。   Also, in the above stitching process (Stitching), when the user replaces the parts, the outline that is the outer edge of the cut-out skin data and the outline corresponding to the outer edge on the base model side are overlapped, compared, and stitched. Do. At this time, only the vertices included in the replacement part are employed in order to eliminate unnecessary rendering.

上述した、入れ替えるパーツのOutlineとOutlineの座標が異なる場合は、その間に頂点とedgeを発生させてつなぐConnect処理を実行する。具体的には、下位のパーツの外縁上(Outline)の各頂点vcoiに対して、上位のパーツの外縁(Outline)上の各頂点vaojの最も近い頂点を計算する。このとき、KNNを用いて、k個の最も近い頂点vaojに対して、ある閾値より距離が近い場合に、それらの中間に頂点を発生させる。この新しく発生した頂点の間隔が閾値よりも小さくなるまで、新たに頂点を発生させ、発生した頂点の間は、三角形になるように線で結合する。   When the coordinates of the outline of the part to be exchanged differ from the outline described above, the Connect process is performed in which a vertex and an edge are generated and connected. Specifically, for each vertex vcoi on the outer edge (Outline) of the lower part, the closest vertex of each vertex vaoj on the outer edge (Outline) of the upper part is calculated. At this time, using KNN, if the distance is closer than a certain threshold with respect to the k nearest vertices vaoj, a vertex is generated between them. New vertices are generated until the interval between the newly generated vertices becomes smaller than the threshold value, and the generated vertices are connected by lines so as to form a triangle.

その後、動作制御データのパラメータを複製する(S114)。詳述すると、顔部分を動かすためのパラメータであるBlend_Shapeデータの値をベースモデルの対応するパーツから複製する。このとき、ベースとなるパーツとトポロジーが同じ場合には、ベースモデルのBlend_Shapeデータをそのまま使用し、トポロジーが異なる場合には、そのパーツのBlend_Shapeデータを使用する。このBlend_Shapeデータの複製と併せて、身体を動かすためのパラメータであるSkin_Weightデータを、ベースモデルの対応パーツから複製する。このとき、ベースとなるパーツとトポロジーが同じ場合には、ベースモデルのSkin_Weightデータをそのまま使用し、トポロジーが異なる場合には、そのパーツのSkin_Weightデータを使用する。   Thereafter, the parameter of the operation control data is duplicated (S114). More specifically, the value of Blend_Shape data, which is a parameter for moving the face part, is duplicated from the corresponding part of the base model. At this time, when the topology is the same as the base part, the Blend_Shape data of the base model is used as it is, and when the topology is different, the Blend_Shape data of the part is used. Along with the duplication of Blend_Shape data, Skin_Weight data, which is a parameter for moving the body, is duplicated from the corresponding part of the base model. At this time, if the topology is the same as the base part, the Skin_Weight data of the base model is used as it is, and if the topology is different, the Skin_Weight data of that part is used.

そして、完成したアバターに対してアニメーションのための動作操作があれば(S115に置ける「Y」)、アバターを動かし(S116)、最後に、縫い合わせたパーツ、パラメータ等を一つのフルモデルとしてFBXファイルに出力する(S117)。   If the completed avatar has an operation operation for animation (“Y” in S115), the avatar is moved (S116), and finally the stitched parts, parameters, etc. are made into one full model as an FBX file. (S117).

(交換用パーツの作成方法)
以上説明したモデリング方法に用いられる交換用パーツの作成方法について、以下に詳述する。
(How to create replacement parts)
A method for creating a replacement part used in the modeling method described above will be described in detail below.

先ず、パーツを準備するために、ベースモデルを作成する。このベースモデルとは、作成される交換用パーツの基となるアバターのフルモデルであり、このベースモデルから切り出されたパーツに変形を加えて、交換用パーツが作成される。フルモデルとは、スケルトンデータ、動作制御データ(Skin_Weightデータ、Blend_Shapeデータ)、メッシュ構造等のトポロジーデータといった形と動かすために必要な要素がすべて含まれている基本データである。   First, in order to prepare parts, a base model is created. The base model is a full model of the avatar that is the basis of the replacement part to be created, and the replacement part is created by modifying the part cut out from the base model. The full model is basic data including all elements necessary for movement such as skeleton data, motion control data (Skin_Weight data, Blend_Shape data), topology data such as a mesh structure.

なお、このベースモデルは複数種作成することができ、すべてのベースモデルには必ず共通のスケルトンデータが導入され、その共通スケルトンには、必要なボーンの主従関係を規定するジョイントデータや円滑化接続処理によりSmooth Bindデータが設定され、共通スケルトンに対するスキンデータの調整も完了されている。   Multiple types of this base model can be created, and common skeleton data is always introduced to all base models, and joint data and smoothing connections that define the necessary master-slave relationship of the bones are included in the common skeleton. Smooth Bind data has been set by the process, and adjustment of skin data for the common skeleton has been completed.

次いで、上記フルモデルから、変更したいパーツを切り出し、切り出したパーツをベースに、新しい形を作成する。このとき、トポロジーは同じであっても同じでなくてもよい。切り出したパーツについては、どこに付随するパーツであるか示すために階層構造におく(目は顔に付随するパーツである等)。   Next, a part to be changed is cut out from the full model, and a new shape is created based on the cut out part. At this time, the topology may or may not be the same. The cut-out parts are placed in a hierarchical structure to show where the parts are attached (eg, the eyes are parts attached to the face).

アバターの各部位に関するパーツの切り出しについて、以下にパーツ毎に説明する。
(1)ベースモデルからのパーツの切り出し
○スケルトンの切り出し(マスタースケルトンの作成)
上記ベースモデルから、図4(a)に示すような、必要な部位のスケルトンデータを切り出し、パーツを作成する際に用いる各パーツに共通のマスタースケルトンを作成する。
The following describes how to cut out parts related to each part of the avatar for each part.
(1) Cut out parts from base model ○ Cut out skeleton (create master skeleton)
A skeleton data of a necessary part as shown in FIG. 4A is cut out from the base model, and a master skeleton common to each part used when creating the part is created.

○スキンデータの切り出し
上記ベースモデルから、所定の部位をパーツとして選択して切り出し、交換用のパーツデータを作成する。なお、作成された各パーツのデータ名は、所定のルールに従って付けられる。
Cut out skin data Select and cut out a predetermined part as a part from the base model, and create part data for replacement. The data name of each created part is given according to a predetermined rule.

ここで作成される各パーツについては、変形可能な範囲を予め規定するように、最小状態、中央値の状態及び最大状態のパーツの形がセットになって作成され、各データ名も、最小、最大などの変形量の状態が分かる名前とし、その他の特徴や、関連づけられるトポロジーデータが変更された場合には、それが分かるように名前が付けられる。   For each part created here, the shape of the parts in the minimum state, median state and maximum state is created as a set so as to predetermine the deformable range, and each data name is also the minimum, The name is such that the state of the deformation amount such as the maximum can be understood, and when other features or the associated topology data are changed, the name is given so that it can be understood.

この切り出されたパーツに対応するトポロジーデータを作成する。このトポロジーの生成に関し、ベースモデルのトポロジーと、切り出された変形パーツのトポロジーとが一致する必要があるため、切り出されたパーツのスキンデータに対しては、頂点の追加、エッジの追加は行わず、ベースモデルをコピーして頂点移動を行い、ベースモデルのトポロジーのうち必要箇所を複製して変形パーツのトポロジーを作成する。   Topology data corresponding to the cut-out part is created. Regarding the generation of this topology, the topology of the base model and the topology of the cut out deformed part must match, so no vertices or edges are added to the skin data of the cut out part. The base model is copied and the vertex is moved, and a necessary part of the base model topology is duplicated to create a deformed part topology.

○身体部分(Body)の切り出し
図4(b)に示すように、頭部を除く身体部分(Body)は一塊の「身体パーツ」として取り扱う。このとき、Bodyは、衣類などの他のパーツの取り除いた、裸の状態で処理を行う。衣類の切り出しは、別途行う。
○ Extraction of body part As shown in FIG. 4 (b), the body part (Body) excluding the head is handled as a group of "body parts". At this time, Body performs the process in a naked state with other parts such as clothing removed. Cut out clothing separately.

図5及び図6(a)に示すような衣類パーツについては、Body以外のポリゴンを切り出して、Clothとして作成する。このとき、衣類の形状のポリゴン(トポロジー共通)を別途用意し、Bodyのウェイトデータとともに読み込み、Bodyのウェイトデータを、衣類のポリゴンに適用する。その後、Bodyのポリゴンを削除して、Clothのみを衣類パーツとして保存する。なお、トポロジーが異なる衣類については、異なるトポロジーの名前が含まれたファイル名を、当該衣類パーツに付けて、トポロジーと衣類パーツとを関連づけておく。   For clothing parts as shown in FIGS. 5 and 6A, polygons other than the Body are cut out and created as Cloth. At this time, a polygon of the clothing shape (common to the topology) is separately prepared and read together with the body weight data, and the body weight data is applied to the clothing polygon. After that, delete the Body polygon and save only the Cloth as a clothing part. For clothing having different topologies, file names including names of different topologies are attached to the clothing parts, and the topology and clothing parts are associated with each other.

○顔部の切り出し
図6(b)に示すような顔部については、Blend_Shapeデータが関連づけられているスキンデータ内のポリゴングループを、全て顔部のアウトライン用パーツとして、ベースモデルから切り出して顔部パーツとして使用する。具体的には、上記ポリゴングループを、Blend_Shapeデータを含んだ状態で、共通スケルトンの首関節(Neck joint)配下に主従関係を定義する「Parent化」を行う。このとき、Neck jointに対するParent化のみ行う。
Cut out face part For the face part as shown in FIG. 6B, all polygon groups in the skin data associated with the Blend_Shape data are cut out from the base model as outline parts of the face part. Use as a part. Specifically, “Parentization” is performed for defining the master-slave relationship under the neck joint of the common skeleton with the polygon group including Blend_Shape data. At this time, only Parenting for the Neck joint is performed.

○顔部からの各パーツの切り出し
次いで、図7に示すように、顔部から目や口といった各パーツを切り出す。
Cutting out each part from the face Next, as shown in FIG. 7, each part such as eyes and mouth is cut out from the face.

FBXの必要なポリゴングループから分離処理(Separate)を行い、目のエリアを切り出す。ここでは、パーツを構成するポリゴンのグループ情報と、変形(Transform)情報を維持する。切り出されたパーツについては、ベースモデルに使用されているポリゴンと同じ名前が有る場合、適宜ポリゴン名の変更を行う。   Perform separation processing (Separate) from the necessary polygon group of FBX, and cut out the eye area. Here, the group information of the polygons constituting the part and the transform information are maintained. If the cut-out part has the same name as the polygon used in the base model, the polygon name is appropriately changed.

この目のエリアの切り出しは、具体的には、顔のBlend_Shapeデータに関連づけられているグループポリゴンと、切り出すエリアに含まれるポリゴンを抽出することで行う。この抽出処理は、Blend_Shapeデータを設定しているFaceグループを選択し、分離処理(Separate)を行う。   Specifically, the eye area is cut out by extracting group polygons associated with the Blend_Shape data of the face and polygons included in the area to be cut out. In this extraction process, a Face group in which Blend_Shape data is set is selected, and a separation process (Separate) is performed.

目に関するスキンデータ(フェース)を抽出するためには、先ず、図8に示すように、顔部分において、切り出すエリアの外縁にある頂点をエッジ(Outline)として、その周辺にある不必要なフェースポリゴンを削除する。さらに分離処理(Separate)を行い、目のフェースを抽出し、抽出したFaceポリゴン部分の名前を、固有のポリゴン名(例えばEyeLeftFace等)に変更する。ここで、固有のポリゴン名とは、複数のFBXファイルを読み込む際に、他のファイルにおけるポリゴン名と重複しない名称である。   In order to extract skin data (faces) related to the eyes, first, as shown in FIG. 8, in the face part, apexes at the outer edge of the area to be cut out are taken as edges (Outline), and unnecessary face polygons around the edges are extracted. Is deleted. Further, separation processing (separate) is performed to extract the face of the eye, and the name of the extracted face polygon part is changed to a unique polygon name (for example, EyeLeftFace). Here, the unique polygon name is a name that does not overlap with polygon names in other files when reading a plurality of FBX files.

そして、抽出されたEyeLeft,EyeRightの中央値モデル(Baseモデル)、最大モデル、最小モデルを作成する。具体的には、先ず、作成したEyeLeft.mbを読み込み、拡大・縮小したいポリゴンを選択し、拡大・縮小する方向に移動させる。このとき、Blend_Shapeデータに基づく処理に使用していたFaceポリゴン(グループ)を分離(Separate)した時の変形(transform)情報は維持しておく。 なお、この最大モデル、最小モデルについては、ポリゴン構成を変えずに作成する。また、切り口となった外縁に位置するポリゴン(Outline)は変形させない。   Then, a median model (Base model), maximum model, and minimum model of the extracted EyeLeft and EyeRight are created. Specifically, first, the created EyeLeft.mb is read, the polygon to be enlarged / reduced is selected, and moved in the direction of enlargement / reduction. At this time, the transformation information when the Face polygon (group) used for the processing based on the Blend_Shape data is separated is maintained. The maximum model and the minimum model are created without changing the polygon configuration. In addition, the polygon (Outline) located at the outer edge that is the cut end is not deformed.

次いで、目に使用しているテクスチャを1枚に統合する。
その後、UV展開を行う。具体的異は、マスタースケルトンを読み込み、首部分(Neck joint)又は首に追随するボーン(EyeLeft joint)に対するジョイントデータ(主従関係や可動範囲)を作成し、必要に応じて結合(Combine)処理を実行する。
Next, the textures used for the eyes are integrated into one sheet.
After that, UV development is performed. Specifically, read the master skeleton, create joint data (master-detail relationship and movable range) for the neck part (Neck joint) or the bone that follows the neck (EyeLeft joint), and if necessary, combine processing Run.

○顔部からの口・鼻部分の切り出し
形状を変形させて違うパーツを作る場合は、Outlineは変更せず、エッジ内のポリゴンだけ変形を行う。トポロジーを変える場合は(頂点数)、アウトラインの形は変えてはいけない。
○ Extracting the mouth and nose from the face When changing the shape to create different parts, the outline is not changed, and only the polygon inside the edge is deformed. If you change the topology (number of vertices), do not change the outline shape.

このようにして準備されたパーツを組み合わせる処理は、以下の手順で行われる。先ず、顔と身体のパーツを、それぞれ独自にモーフィング(最大と最小の間をなめらかにつなぐ)処理を行う。次いで、顔を動かすためのパラメータ(Blend_Shapeデータの値)を、ベースとなったフルモデルの対応するパーツからコピーするとともに、身体を動かすためのパラメータ(Skin_Weightデータ)をパーツのベースとなったフルモデルからコピーする。このとき、トポロジーが異なる状態であってもよい。   The process of combining the parts prepared in this way is performed according to the following procedure. First, the face and body parts are each independently morphed (smoothly connected between the maximum and minimum). Next, the parameters for moving the face (Blend_Shape data value) are copied from the corresponding parts of the full model that is the base, and the parameters for moving the body (Skin_Weight data) are the full model that is the base of the part Copy from. At this time, the topology may be different.

そして、ユーザー操作に基づいて、ユーザーが選択したパーツを入れ替える。このとき、入れ替えられたパーツについて、自動的に縫い合わせ処理が実行される。また、必要に応じて、身体全体に最適化を行う。   Then, based on the user operation, the parts selected by the user are exchanged. At this time, the stitching process is automatically executed for the replaced parts. If necessary, optimize the entire body.

(モデリングシステムの構造)
次いで、図3は、本実施形態に係るモデリングシステムの全体構成を示す概念図である。本実施形態において、モデリングシステムは、仮想空間上において、所定の立体的形状が定義されたアバターに関するモデリングデータを生成及び編集するシステムである。通信ネットワーク5には、ユーザーが所持するユーザー端末1と、モデリングデータを生成するモデリング生成サーバー3と、モデリング生成サーバー3によって生成されたモデリングデータを保存・配信するデータ配信サーバー2とが接続されている。
(Modeling system structure)
Next, FIG. 3 is a conceptual diagram showing the overall configuration of the modeling system according to the present embodiment. In the present embodiment, the modeling system is a system that generates and edits modeling data related to an avatar in which a predetermined three-dimensional shape is defined in a virtual space. Connected to the communication network 5 are a user terminal 1 possessed by a user, a modeling generation server 3 that generates modeling data, and a data distribution server 2 that stores and distributes the modeling data generated by the modeling generation server 3. Yes.

通信ネットワーク5は、通信プロトコルTCP/IPを用いたIP網であって、種々の通信回線(電話回線やISDN回線、ADSL回線、光回線などの公衆回線、専用回線、無線通信網)を相互に接続して構築される分散型の通信ネットワークである。この通信ネットワーク5には、10BASE−Tや100BASE−TX等によるイントラネット(企業内ネットワーク)や家庭内ネットワークなどのLANなども含まれる。   The communication network 5 is an IP network using the communication protocol TCP / IP, and various communication lines (public lines such as telephone lines, ISDN lines, ADSL lines, optical lines, private lines, wireless communication networks) are mutually connected. It is a distributed communication network constructed by connecting. The communication network 5 includes a LAN such as an intranet (in-house network) or a home network based on 10BASE-T, 100BASE-TX, or the like.

ユーザー端末1及び管理者用端末3は、CPUを備えた演算処理装置であり、通信機能によりインターネット5等の通信ネットワークに接続可能となっており、ブラウザソフトなどにより、表示情報を受信して表示するとともに、ユーザーの操作信号を送信する機能を備えている。この情報端末としては、パーソナルコンピューター等の汎用コンピューターや、機能を特化させた専用装置により実現することができ、モバイルコンピュータやPDA(Personal Digital Assistance)、携帯電話機が含まれる。   The user terminal 1 and the manager terminal 3 are arithmetic processing units equipped with a CPU, and can be connected to a communication network such as the Internet 5 by a communication function. The display information is received and displayed by browser software or the like. In addition, it has a function of transmitting a user operation signal. The information terminal can be realized by a general-purpose computer such as a personal computer or a dedicated device with a special function, and includes a mobile computer, a PDA (Personal Digital Assistance), and a mobile phone.

モデリング生成サーバー3は、本システムの管理者の操作に応じてモデリングデータを生成して管理するサーバー装置であり、本システムの管理者が所持する情報処理端末と接続可能となっている。そして、モデリング生成サーバー3において生成されたモデリングデータは、データ配信サーバー2に送信される。   The modeling generation server 3 is a server device that generates and manages modeling data in accordance with an operation of the system administrator, and can be connected to an information processing terminal possessed by the system administrator. The modeling data generated in the modeling generation server 3 is transmitted to the data distribution server 2.

データ配信サーバー2は、ユーザー管理、モデリングデータの配信などを制御するサーバー装置である。また、データ配信サーバー2には、Webサーバーが含まれ、WWW(World Wide Web)等のドキュメントシステムにおいて、HTML(HyperText Markup Language)ファイルや画像ファイル、音楽ファイルなどの情報送信を行うサーバーコンピューター或いはその機能を持ったソフトウェアであり、モデリングデータベース2a内にモデリングデータなどの情報を蓄積しておき、ユーザー端末1上で実行されるアプリケーションの要求に応じて、モデリングの編集操作を受け付け、編集後のモデリングデータをユーザー端末1に配信する。   The data distribution server 2 is a server device that controls user management, distribution of modeling data, and the like. The data distribution server 2 includes a Web server, and a server computer that transmits information such as an HTML (HyperText Markup Language) file, an image file, or a music file in a document system such as WWW (World Wide Web) or the like. It is a functional software that stores modeling data and other information in the modeling database 2a, accepts modeling editing operations according to the requirements of applications executed on the user terminal 1, and performs modeling after editing. Data is distributed to the user terminal 1.

(各装置の内部構造)
次いで、上述したモデリングシステムを構成する各装置の内部構造について説明する。図11は、本実施形態に係るモデリング生成サーバー3の内部構成を示すブロック図であり、図12は、本実施形態に係るモデリング配信サーバー2の内部構成を示すブロック図であり、図13は、本実施形態に係るユーザー端末1の内部構成を示すブロック図である。なお、説明中で用いられる「モジュール」とは、装置や機器等のハードウェア、或いはその機能を持ったソフトウェア、又はこれらの組み合わせなどによって構成され、所定の動作を達成するための機能単位を示す。
(Internal structure of each device)
Next, the internal structure of each device constituting the above-described modeling system will be described. FIG. 11 is a block diagram showing the internal configuration of the modeling generation server 3 according to this embodiment, FIG. 12 is a block diagram showing the internal configuration of the modeling distribution server 2 according to this embodiment, and FIG. It is a block diagram which shows the internal structure of the user terminal 1 which concerns on this embodiment. The “module” used in the description refers to a functional unit that is configured by hardware such as an apparatus or a device, software having the function, or a combination thereof, and achieves a predetermined operation. .

(1)モデリング生成サーバー3の内部構成
先ず、モデリング生成サーバー3の内部構成について説明する。モデリング生成サーバー3は、単一のサーバー装置の他、Webサーバーやデータベースサーバーなど複数のサーバー群から構成することができ、本実施形態では、図11に示すように、通信インターフェース31と、制御部32と、記憶部33と、入出力インターフェース34とを備えている。
(1) Internal Configuration of Modeling Generation Server 3 First, the internal configuration of the modeling generation server 3 will be described. The modeling generation server 3 can be composed of a plurality of server groups such as a Web server and a database server in addition to a single server device. In the present embodiment, as shown in FIG. 32, a storage unit 33, and an input / output interface 34.

記憶部33は、本システムに関する各種の情報を蓄積するデータベース群であり、ここでは、モデリングデータベース331を備えている。なお、各データベースは、単体のデータベースとして構成してもよいし、複数のデータベース間でリレーションシップを設定するようにしてもよい。
モデリングデータベース331は、モデリング生成モジュール郡310によって生成されたモデリングデータを蓄積するデータベースである。
The storage unit 33 is a database group that accumulates various types of information related to the system, and includes a modeling database 331 here. Each database may be configured as a single database, or relationships may be set between a plurality of databases.
The modeling database 331 is a database that stores modeling data generated by the modeling generation module group 310.

通信インターフェース31は、データ通信を行うための通信インターフェースであり、通信ネットワーク5を介してモデリング配信サーバー2や管理者が所持する情報処理端末と接続可能となっている。入出力インターフェース34は、管理者が所持する情報処理端末と接続されたインターフェースであり、管理者が所持する情報処理端末のマウスやキーボードなどの操作デバイスからの操作信号が、ユーザー操作として入力され、管理者が所持する情報処理端末のモニタ等にモデリングデータを表示させる。   The communication interface 31 is a communication interface for performing data communication, and can be connected to the modeling distribution server 2 and an information processing terminal possessed by an administrator via the communication network 5. The input / output interface 34 is an interface connected to an information processing terminal possessed by an administrator, and an operation signal from an operation device such as a mouse or a keyboard of the information processing terminal possessed by the administrator is input as a user operation. The modeling data is displayed on the monitor of the information processing terminal possessed by the administrator.

制御部32は、CPUやDSP(Digital Signal Processor)等のプロセッサ、メモリ、及びその他の電子回路等のハードウェア、或いはその機能を持ったプログラム等のソフトウェア、又はこれらの組み合わせなどによって構成された演算モジュールであり、プログラムを適宜読み込んで実行することにより種々の機能モジュールを仮想的に構築し、構築された各機能モジュールによって、各部の動作制御、管理者操作に対する種々の処理を行っている。そして、本実施形態において、制御部32には、モデリング生成制御部310と、モデリング編集制御部320と、モデリングデータ配信部330とを備えている。   The control unit 32 is a computation configured by a processor such as a CPU or DSP (Digital Signal Processor), memory, hardware such as other electronic circuits, software such as a program having the function, or a combination thereof. It is a module, and various function modules are virtually constructed by appropriately reading and executing a program, and various processes for operation control of each part and administrator operations are performed by the constructed function modules. In the present embodiment, the control unit 32 includes a modeling generation control unit 310, a modeling edit control unit 320, and a modeling data distribution unit 330.

モデリング生成制御部310は、モデリングデータを生成するモジュール群であり、パーツ生成部311と、動作管理部312と、データセット生成部313とを備えている。
パーツ生成部311は、仮想空間上における所定の2点により定義されるボーンデータを複数連結してスケルトンデータを構成し、スケルトンデータに対して関連づけられオブジェクトの外表面をポリゴンによって定義するスキンデータを、位置関係に従ってグループ化し、グループ毎にパーツデータを生成するモジュールである。
動作管理部312は、各ボーンデータのスキンデータに対する影響度を定義するウェイトデータと、パーツデータの動作に関する情報とを、動作制御データとして生成するモジュールである。
データセット生成部313は、パーツデータ及び動作制御データを、相互の位置関係に基づいた階層構造に従ってデータセットに格納し、モデリングデータを生成するモジュールである。
The modeling generation control unit 310 is a module group that generates modeling data, and includes a part generation unit 311, an operation management unit 312, and a data set generation unit 313.
The parts generation unit 311 forms a skeleton data by connecting a plurality of bone data defined by two predetermined points in the virtual space, and defines skin data associated with the skeleton data and defining the outer surface of the object by polygons. This is a module for grouping according to the positional relationship and generating part data for each group.
The motion management unit 312 is a module that generates weight data that defines the degree of influence of each bone data on the skin data and information related to the motion of the part data as motion control data.
The data set generation unit 313 is a module that stores part data and motion control data in a data set according to a hierarchical structure based on the mutual positional relationship, and generates modeling data.

モデリング編集制御部320は、生成されたモデリングデータを交換・編集するモジュール群であり、本実施形態では、生成されたモデリングデータのパーツを交換する交換機能と、生成されたモデリングデータのパーツを編集する編集機能とを有している。   The modeling editing control unit 320 is a group of modules for exchanging / editing the generated modeling data. In this embodiment, the modeling editing control unit 320 edits the part of the generated modeling data and the exchange function for exchanging the parts of the generated modeling data. Editing function.

先ず、モデリング編集制御部320のパーツ交換機能について説明する。パーツ交換機能としてモデリング編集制御部320には、パーツ選択部321と、基礎データ取得部322と、パーツ交換処理部323と、縫合部324とを備えている。   First, the parts exchange function of the modeling edit control unit 320 will be described. As a parts exchange function, the modeling editing control unit 320 includes a parts selection unit 321, a basic data acquisition unit 322, a parts exchange processing unit 323, and a stitching unit 324.

パーツ選択部321は、 任意のパーツデータ及びこのパーツデータに対応する動作制御データを交換用データとして取得するとともに、取得された交換用データに対応するパーツデータ及び動作制御データを、交換の対象となるモデリングデータから選択し、選択されたパーツデータをそのデータセットから切り出すモジュールである。   The part selection unit 321 obtains arbitrary part data and operation control data corresponding to the part data as replacement data, and uses part data and operation control data corresponding to the acquired replacement data as replacement targets. This is a module that selects from the modeling data and cuts out the selected part data from the data set.

基礎データ取得部322は、交換用データに含まれるパーツデータのデータ構成に関する情報である交換用トポロジーデータを取得するとともに、交換の対象となるモデリングデータのデータ構成に関する情報である基礎トポロジーデータを取得するモジュールである。   The basic data acquisition unit 322 acquires replacement topology data that is information related to the data structure of the part data included in the replacement data, and acquires basic topology data that is information related to the data structure of the modeling data to be replaced. It is a module to do.

パーツ交換処理部323は、交換用トポロジーデータと基礎トポロジーデータとを比較し、比較結果に基づいて、パーツ選択部321により切り出されたパーツデータに関連する動作制御データ、又は、交換用データ内の動作制御データを選択して読み込むモジュールである。   The parts replacement processing unit 323 compares the replacement topology data with the basic topology data, and based on the comparison result, the operation control data related to the part data cut out by the parts selection unit 321 or the replacement data in the replacement data This module selects and reads operation control data.

縫合部324は、データセット内の任意のパーツに含まれるポリゴンデータを、階層構造の上位にあるパーツのポリゴンデータと比較し、各ポリゴンデータに含まれる各頂点の座標の一致・不一致を判断し、一致する頂点同士を同一化するモジュールである。   The stitching unit 324 compares the polygon data included in any part of the data set with the polygon data of the part higher in the hierarchical structure, and determines whether the coordinates of the vertices included in each polygon data match or not. This is a module for identifying identical vertices.

一方、パーツ編集機能としてモデリング編集制御部320には、パーツ選択部321と、基礎データ取得部322と、パーツ交換処理部323と、縫合部324とを有している。   On the other hand, the modeling editing control unit 320 as a part editing function includes a part selection unit 321, a basic data acquisition unit 322, a part replacement processing unit 323, and a stitching unit 324.

パーツ選択部321は、ユーザー操作に基づいて、編集の対象となるモデリングデータから任意のパーツデータを選択するとともに、選択されたパーツデータ及びこのパーツデータに対応する動作制御データを、編集用データとしてデータセットから切り出すモジュールである。ここで、パーツ選択部321には、パーツ編集部322aを備えている。パーツ編集部322aは、編集用データに含まれるパーツデータ又は動作制御データに変更を加えるモジュールである。   The part selection unit 321 selects arbitrary part data from modeling data to be edited based on a user operation, and selects the selected part data and operation control data corresponding to the part data as editing data. This module is cut out from the data set. Here, the parts selection unit 321 includes a parts editing unit 322a. The part editing unit 322a is a module that modifies part data or operation control data included in editing data.

基礎データ取得部322は、編集用データに含まれるパーツデータのデータ構成に関する情報である編集用トポロジーデータを生成するとともに、編集の対象となるモデリングデータのデータ構成に関する情報である基礎トポロジーデータを取得するモジュールである。   The basic data acquisition unit 322 generates editing topology data that is information related to the data structure of the part data included in the editing data, and acquires basic topology data that is information related to the data structure of the modeling data to be edited. It is a module to do.

パーツ交換処理部323は、編集用トポロジーデータと基礎トポロジーデータとを比較し、比較結果に基づいて、パーツ選択部321により切り出されたパーツデータに関連する動作制御データ、又は、編集用データ内の動作制御データを選択して読み込むモジュールである。   The part replacement processing unit 323 compares the topology data for editing with the basic topology data, and based on the comparison result, the operation control data related to the part data cut out by the parts selection unit 321 or the editing data in the editing data This module selects and reads operation control data.

また、縫合部324は、データセット内の任意のパーツに含まれるポリゴンデータを、階層構造の上位にあるパーツのポリゴンデータと比較し、各ポリゴンデータに含まれる各頂点の座標の一致・不一致を判断し、一致する頂点同士を同一化する。   In addition, the stitching unit 324 compares the polygon data included in any part in the data set with the polygon data of the part higher in the hierarchical structure, and determines whether the coordinates of each vertex included in each polygon data match. Judgment is made and identical vertices are identified.

モデリングデータ配信部330は、コンテンツ生成制御部310で生成されたモデリングデータを、通信インターフェース31を通じてコンテンツ配信サーバー2に配信するモジュールである
(2)モデリング配信サーバー2の内部構成
次いで、モデリング配信サーバー2の内部構成について説明する。モデリング配信サーバー2は、単一のサーバー装置の他、Webサーバーやデータベースサーバーなど複数のサーバー群から構成することができ、本実施形態では、図12に示すように、通信インターフェース21と、制御部22と、データベース2aとを備えている。
The modeling data distribution unit 330 is a module that distributes the modeling data generated by the content generation control unit 310 to the content distribution server 2 through the communication interface 31. (2) Internal Configuration of the Modeling Distribution Server 2 Next, the modeling distribution server 2 The internal structure of will be described. The modeling distribution server 2 can be composed of a plurality of server groups such as a Web server and a database server in addition to a single server device. In the present embodiment, as shown in FIG. 22 and a database 2a.

データベース2aは、本システムに関する各種の情報を蓄積するデータベース群であり、ここでは、モデリングデータベース201と、会員データベース202とを備えている。なお、各データベースは、単体のデータベースとして構成してもよいし、複数のデータベース間でリレーションシップを設定するようにしてもよい。   The database 2a is a database group that accumulates various types of information related to this system, and includes a modeling database 201 and a member database 202 in this example. Each database may be configured as a single database, or relationships may be set between a plurality of databases.

モデリングデータベース201は、モデリング生成サーバー3によって生成されたモデリングデータを蓄積するデータベースであり、モデリングデータベース331と同様なデータ構成となっている。   The modeling database 201 is a database that accumulates modeling data generated by the modeling generation server 3, and has a data configuration similar to that of the modeling database 331.

会員データベース202は、ユーザー端末1を所持する顧客に関する情報を蓄積するデータベースであり、本実施形態では、ユーザー端末1を識別するユーザーID(ユーザー端末1のIPアドレス等)及びパスワードに、電話番号、メールアドレス、ユーザーの氏名、年齢、性別、住所などの個人情報の他、作成したモデリングデータを識別するモデリングID、決済情報などが関連付けて記録することができる。   The member database 202 is a database for accumulating information about customers who own the user terminal 1, and in this embodiment, a user ID (such as the IP address of the user terminal 1) and password for identifying the user terminal 1, a telephone number, In addition to personal information such as e-mail address, user name, age, gender, and address, modeling ID for identifying the created modeling data, payment information, and the like can be recorded in association with each other.

通信インターフェース21は、データ通信を行うための通信インターフェースであり、通信ネットワーク5を介してユーザー端末1に接続可能となっている。   The communication interface 21 is a communication interface for performing data communication, and can be connected to the user terminal 1 via the communication network 5.

制御部22は、CPUやDSP(Digital Signal Processor)等のプロセッサ、メモリ、及びその他の電子回路等のハードウェア、或いはその機能を持ったプログラム等のソフトウェア、又はこれらの組み合わせなどによって構成された演算モジュールであり、プログラムを適宜読み込んで実行することにより種々の機能モジュールを仮想的に構築し、構築された各機能モジュールによって、各部の動作制御、管理者操作に対する種々の処理を行っている。そして、本実施形態において、制御部22には、認証部26と、操作信号取得部25と、編集制御部23と、モデリングデータ配信部24とを備えている。   The control unit 22 includes a processor such as a CPU or DSP (Digital Signal Processor), a memory, hardware such as other electronic circuits, software such as a program having the function, or a combination thereof. It is a module, and various function modules are virtually constructed by appropriately reading and executing a program, and various processes for operation control of each part and administrator operations are performed by the constructed function modules. In the present embodiment, the control unit 22 includes an authentication unit 26, an operation signal acquisition unit 25, an edit control unit 23, and a modeling data distribution unit 24.

認証部26は、アクセス者の正当性を検証するコンピューター或いはその機能を持ったソフトウェアであり、各ユーザーを特定するユーザーIDに基づいて認証処理を実行する。また、任所部26は、本システムを利用するユーザーの会員登録を処理する機能も有しており、ユーザー端末1からのアクセスを受け付けて会員登録を行う。具体的に、会員登録部221は、先ず、ユーザー端末1を特定するためのユーザーID等を取得して会員データベース231に記録するとともに、その後、ユーザーからの個人情報入力があった場合には、そのユーザーIDに、ユーザーが所持するユーザー端末1に関する情報(ユーザー端末1のメールアドレス、電話番号、ユーザーの氏名、年齢、住所、性別、決済情報などの個人情報など)を会員データベース231に関連付けて記録することができる。また、認証部26は、ユーザーが編集等したモデリングデータを識別するモデリングIDを会員データベース202に関連付けて記録する。   The authentication unit 26 is a computer that verifies the legitimacy of the accessor or software having the function thereof, and executes authentication processing based on a user ID that identifies each user. In addition, the commission unit 26 has a function of processing member registration of a user who uses the system, and accepts access from the user terminal 1 to perform member registration. Specifically, the member registration unit 221 first acquires a user ID or the like for specifying the user terminal 1 and records it in the member database 231. Thereafter, when there is personal information input from the user, Information related to the user terminal 1 possessed by the user (e.g., user terminal 1 mail address, telephone number, user name, age, address, gender, payment information, etc.) is associated with the user ID in the member database 231. Can be recorded. The authentication unit 26 records a modeling ID for identifying modeling data edited by the user in association with the member database 202.

操作信号取得部25は、ユーザー端末1からの操作信号を受信し、操作信号に対応する制御信号を各部に出力するモジュールである。この操作信号取得部25からの制御信号に基づいて、モデリングデータベース201内のモデリングデータを配信したり、モデリングデータの編集処理を編集制御部23で実行させたりする。   The operation signal acquisition unit 25 is a module that receives an operation signal from the user terminal 1 and outputs a control signal corresponding to the operation signal to each unit. Based on the control signal from the operation signal acquisition unit 25, the modeling data in the modeling database 201 is distributed, or the editing control unit 23 executes editing processing of the modeling data.

モデリングデータ配信部24は、ユーザー操作に応じてモデリングデータをユーザー端末1に配信するモジュールであり、ユーザー操作によって選択されたモデリングデータ全体やパーツデータをユーザー端末1の画面上に表示可能に配信する。   The modeling data distribution unit 24 is a module that distributes modeling data to the user terminal 1 in accordance with a user operation, and distributes the entire modeling data and part data selected by the user operation so as to be displayed on the screen of the user terminal 1. .

編集制御部23は、ユーザー操作に応じてモデリングデータの編集を受け付けるモジュール群であり、本実施形態では、パーツ選択部231と、パーツ編集部232と、基礎データ取得部233と、パーツ交換処理部234と、縫合部235とを備えている。   The edit control unit 23 is a group of modules that accepts editing of modeling data in response to a user operation. In this embodiment, the part selection unit 231, the part editing unit 232, the basic data acquisition unit 233, and the part replacement processing unit 234 and a stitched portion 235.

パーツ選択部231は、ユーザー操作に基づいて、編集の対象となるモデリングデータから任意のパーツデータを選択するとともに、選択されたパーツデータ及びこのパーツデータに対応する動作制御データを、編集用データとしてデータセットから切り出すモジュールである。   The part selection unit 231 selects arbitrary part data from modeling data to be edited based on a user operation, and selects the selected part data and operation control data corresponding to the part data as editing data. This module is cut out from the data set.

パーツ編集部232は、編集用データに含まれるパーツデータ又は動作制御データに変更を加えるモジュールである。   The part editing unit 232 is a module that changes part data or operation control data included in editing data.

基礎データ取得部233は、 編集用データに含まれるパーツデータのデータ構成に関する情報である編集用トポロジーデータを生成するとともに、編集の対象となるモデリングデータのデータ構成に関する情報である基礎トポロジーデータを取得するモジュールである。   The basic data acquisition unit 233 generates editing topology data that is information related to the data structure of the part data included in the editing data, and acquires basic topology data that is information related to the data structure of the modeling data to be edited. It is a module to do.

パーツ交換処理部234は、 編集用トポロジーデータと基礎トポロジーデータとを比較し、比較結果に基づいて、パーツ選択部231により切り出されたパーツデータに関連する動作制御データ、又は、編集用データ内の動作制御データを選択して読み込むモジュールである。   The parts replacement processing unit 234 compares the editing topology data with the basic topology data, and based on the comparison result, the operation control data related to the part data cut out by the parts selection unit 231 or the editing data in the editing data This module selects and reads operation control data.

縫合部235は、データセット内の任意のパーツに含まれるポリゴンデータを、階層構造の上位にあるパーツのポリゴンデータと比較し、各ポリゴンデータに含まれる各頂点の座標の一致・不一致を判断し、一致する頂点同士を同一化するモジュールである。   The stitching unit 235 compares the polygon data included in an arbitrary part in the data set with the polygon data of the part higher in the hierarchical structure, and determines whether the coordinates of the vertices included in each polygon data match or not. This is a module for identifying identical vertices.

(3)ユーザー端末1の内部構成
次いで、ユーザー端末1の内部構成について説明する。ユーザー端末1の内部構成について説明する。図に示すように、ユーザー端末1は、通信インターフェース11と、入力インターフェース12と、出力インターフェース13と、アプリケーション実行部14と、メモリ15とを備えている。
(3) Internal Configuration of User Terminal 1 Next, the internal configuration of the user terminal 1 will be described. The internal configuration of the user terminal 1 will be described. As shown in the figure, the user terminal 1 includes a communication interface 11, an input interface 12, an output interface 13, an application execution unit 14, and a memory 15.

通信インターフェース11は、データ通信を行うための通信インターフェースであり、無線等による非接触通信や、ケーブル、アダプタ手段等により接触(有線)通信をする機能を備えている。入力インターフェース12は、マウス、キーボード、操作ボタンやタッチパネルなどユーザー操作を入力するデバイスである。また、出力インターフェース13は、ディスプレイやスピーカーなど、映像や音響を出力するデバイスである。特に、この出力インターフェース13には、液晶ディスプレイなどの表示部13aが含まれている。   The communication interface 11 is a communication interface for performing data communication, and has a function of performing contact (wired) communication by wireless non-contact communication or a cable, adapter means, or the like. The input interface 12 is a device that inputs user operations such as a mouse, a keyboard, operation buttons, and a touch panel. The output interface 13 is a device that outputs video and sound, such as a display and a speaker. In particular, the output interface 13 includes a display unit 13a such as a liquid crystal display.

メモリ15は、OS(Operating System)や各種のアプリケーション用のプログラム、その他のデータ等などを記憶する記憶装置であり、このメモリ15内には、モデリング配信サーバー2から取得したモデリングデータを蓄積する。   The memory 15 is a storage device that stores an OS (Operating System), programs for various applications, other data, and the like. The memory 15 stores modeling data acquired from the modeling distribution server 2.

アプリケーション実行部14は、一般のOSやブラウザソフトなどのアプリケーションを実行するモジュールであり、通常はCPU等により実現される。このアプリケーション実行部14では、本発明に係るモデリングプログラムが実行されることで、モデリング配信サーバー2と通信を行い、例えば、編集対象となるモデリングデータ、及びパーツデータの選択、パーツデータの編集処理が行われ、各操作に応じた表示情報が表示部13a上に表示される。   The application execution unit 14 is a module that executes an application such as a general OS or browser software, and is usually realized by a CPU or the like. The application execution unit 14 communicates with the modeling distribution server 2 by executing the modeling program according to the present invention. For example, the modeling data to be edited and the part data are selected and the part data is edited. The display information corresponding to each operation is displayed on the display unit 13a.

(モデリングプログラム)
また、上述した本実施形態に係るモデリングシステム法は、所定の言語で記述されたモデリングプログラムをコンピューター上で実行することにより実現することができる。すなわち、本実施形態に係るプログラムは、仮想空間上において、所定の立体的形状が定義されたアバターに関するモデリングデータを生成及び編集するモデリングプログラムであって、コンピューターに、
(1)仮想空間上における所定の2点により定義されるボーンデータを複数連結してスケルトンデータを構成し、スケルトンデータに対して関連づけられオブジェクトの外表面をポリゴンによって定義するスキンデータを、位置関係に従ってグループ化し、グループ毎にパーツデータを生成するパーツ生成ステップと、
(2)各ボーンデータのスキンデータに対する影響度を定義するウェイトデータと、パーツデータの動作に関する情報とを、動作制御データとして生成する動作管理ステップと、
(3)パーツデータ及び動作制御データを、相互の位置関係に基づいた階層構造に従ってデータセットに格納し、モデリングデータを生成するデータセット生成ステップと
を備える処理を実行させる。
(Modeling program)
The modeling system method according to the present embodiment described above can be realized by executing a modeling program described in a predetermined language on a computer. That is, the program according to the present embodiment is a modeling program for generating and editing modeling data related to an avatar in which a predetermined three-dimensional shape is defined in a virtual space, and
(1) A plurality of bone data defined by two predetermined points in the virtual space are connected to form skeleton data, and the skin data that is related to the skeleton data and defines the outer surface of the object by polygons is positioned. Parts generation step for grouping and generating part data for each group,
(2) an operation management step of generating weight data defining the degree of influence of each bone data on the skin data and information on the operation of the part data as operation control data;
(3) Part data and operation control data are stored in a data set according to a hierarchical structure based on the mutual positional relationship, and a process including a data set generation step for generating modeling data is executed.

また、このモデリングプログラムは、モデリングデータのパーツを交換する機能として、コンピューターに、
(1)任意のパーツデータ及びこのパーツデータに対応する動作制御データを交換用データとして取得するとともに、取得された交換用データに対応するパーツデータ及び動作制御データを、交換の対象となるモデリングデータから選択し、選択されたパーツデータをそのデータセットから切り出すパーツ選択ステップと、
(2)交換用データに含まれるパーツデータのデータ構成に関する情報である交換用トポロジーデータを取得するとともに、交換の対象となるモデリングデータのデータ構成に関する情報である基礎トポロジーデータを取得する基礎データ取得ステップと、
(3)交換用トポロジーデータと基礎トポロジーデータとを比較し、比較結果に基づいて、パーツ選択ステップで切り出されたパーツデータに関連する動作制御データ、又は、交換用データ内の動作制御データを選択して読み込むパーツ交換処理ステップと
をさらに実行させる。
In addition, this modeling program is a function for exchanging parts of modeling data.
(1) Arbitrary part data and operation control data corresponding to this part data are acquired as replacement data, and part data and operation control data corresponding to the acquired replacement data are converted into modeling data to be replaced. A part selection step for selecting the selected part data from the data set,
(2) Basic data acquisition for acquiring replacement topology data, which is information regarding the data structure of part data included in replacement data, and acquiring basic topology data, which is information regarding the data structure of modeling data to be replaced Steps,
(3) Compare the topology data for replacement with the basic topology data, and select the operation control data related to the part data extracted in the part selection step or the operation control data in the replacement data based on the comparison result. Then, a part replacement processing step to be read is further executed.

また、このモデリングプログラムは、モデリングデータのパーツを編集する機能として、コンピューターに、
(1)ユーザー操作に基づいて、編集の対象となるモデリングデータから任意のパーツデータを選択するとともに、選択されたパーツデータ及びこのパーツデータに対応する動作制御データを、編集用データとしてデータセットから切り出すパーツ選択ステップと、
(2)編集用データに含まれるパーツデータ又は動作制御データに変更を加えるパーツ編集ステップと、
(3)編集用データに含まれるパーツデータのデータ構成に関する情報である編集用トポロジーデータを生成するとともに、編集の対象となるモデリングデータのデータ構成に関する情報である基礎トポロジーデータを取得する基礎データ取得ステップと、
(4)編集用トポロジーデータと基礎トポロジーデータとを比較し、比較結果に基づいて、パーツ選択ステップで切り出されたパーツデータに関連する動作制御データ、又は、編集用データ内の動作制御データを選択して読み込むパーツ交換処理ステップと
をさらに実行させる。
In addition, this modeling program is a function that edits parts of modeling data.
(1) Based on a user operation, arbitrary part data is selected from modeling data to be edited, and the selected part data and motion control data corresponding to the part data are selected from the data set as editing data. A part selection step to cut out;
(2) a part editing step for changing the part data or motion control data included in the editing data;
(3) Basic data acquisition for generating editing topology data, which is information related to the data structure of part data included in editing data, and acquiring basic topology data, which is information related to the data structure of modeling data to be edited Steps,
(4) Compare the topology data for editing with the basic topology data, and select the motion control data related to the part data cut out in the part selection step or the motion control data in the editing data based on the comparison result. Then, a part replacement processing step to be read is further executed.

また、上記の処理において、モデリングプログラムは、コンピューターに、
データセット内の任意のパーツに含まれるポリゴンデータを、階層構造の上位にあるパーツのポリゴンデータと比較し、各ポリゴンデータに含まれる各頂点の座標の一致・不一致を判断し、一致する頂点同士を同一化する縫合ステップを実行させる。
In the above processing, the modeling program is stored in the computer.
Compare the polygon data contained in any part in the data set with the polygon data of the part higher in the hierarchical structure, determine whether the coordinates of each vertex contained in each polygon data match, and match the vertices A stitching step is performed to identify the same.

そして、このモデリングプログラムを、ユーザー端末やWebサーバー等のコンピューターやICチップにインストールし、CPU上で実行することにより、上述した各機能を有するシステムを容易に構築することができる。このモデリングプログラムは、例えば、通信回線を通じて配布することが可能であり、またパッケージアプリケーションとして譲渡することができる。そして、このようなモデリングプログラムは、パーソナルコンピューターで読み取り可能な記録媒体に記録することができ、汎用のコンピューターや専用コンピューターを用いて、上述したシステム、装置、サーバーを実施することが可能となるとともに、モデリングプログラムの保存、運搬及びインストールを容易に行うことができる。   Then, by installing this modeling program on a computer such as a user terminal or a Web server or an IC chip and executing it on the CPU, a system having the above-described functions can be easily constructed. This modeling program can be distributed through a communication line, for example, and can be transferred as a package application. Such a modeling program can be recorded on a recording medium readable by a personal computer, and the above-described system, apparatus, and server can be implemented using a general-purpose computer or a dedicated computer. The modeling program can be easily stored, transported and installed.

A1…アバター
B1〜242…ボーンデータ
P1…頭部パーツ
P11…頭髪パーツ
P13…目パーツ
P2…身体パーツ
P3…装飾パーツ
2…コンテンツ配信サーバー
2a…モデリングデータベース
3…管理者用端末
5…インターネット
10…画面
11…通信インターフェース
12…入力インターフェース
13…出力インターフェース
13a…表示部
14…アプリケーション実行部
15…メモリ
21…通信インターフェース
22…制御部
23…編集制御部
24…モデリングデータ配信部
25…操作信号取得部
26…認証部
31…通信インターフェース
32…制御部
33…記憶部
34…入出力インターフェース
100…階層構造
101〜103…GUI
201…モデリングデータベース
202…会員データベース
221…会員登録部
231…パーツ選択部
232…パーツ編集部
233…基礎データ取得部
234…パーツ交換処理部
235…縫合部
310…モデリング生成モジュール郡
311…パーツ生成部
312…動作管理部
313…データセット生成部
320…モデリング編集制御部
321…パーツ選択部
322…基礎データ取得部
322a…パーツ編集部
323…パーツ交換処理部
324…縫合部
330…モデリングデータ配信部
331…モデリングデータベース
A1 ... Avatar B1-242 ... Bone data P1 ... Head part P11 ... Hair parts P13 ... Eye parts P2 ... Body parts P3 ... Decoration parts 2 ... Content distribution server 2a ... Modeling database 3 ... Administrator terminal 5 ... Internet 10 ... Screen 11 ... Communication interface 12 ... Input interface 13 ... Output interface 13a ... Display unit 14 ... Application execution unit 15 ... Memory 21 ... Communication interface 22 ... Control unit 23 ... Editing control unit 24 ... Modeling data distribution unit 25 ... Operation signal acquisition unit DESCRIPTION OF SYMBOLS 26 ... Authentication part 31 ... Communication interface 32 ... Control part 33 ... Memory | storage part 34 ... Input / output interface 100 ... Hierarchical structure 101-103 ... GUI
DESCRIPTION OF SYMBOLS 201 ... Modeling database 202 ... Member database 221 ... Member registration part 231 ... Parts selection part 232 ... Parts edit part 233 ... Basic data acquisition part 234 ... Parts exchange process part 235 ... Sewing part 310 ... Modeling generation module group 311 ... Part generation part 312 ... Operation management unit 313 ... Data set generation unit 320 ... Modeling editing control unit 321 ... Parts selection unit 322 ... Basic data acquisition unit 322a ... Parts editing unit 323 ... Parts exchange processing unit 324 ... stitching unit 330 ... modeling data distribution unit 331 ... Modeling database

Claims (12)

仮想空間上において、所定の立体的形状が定義されたアバターに関するモデリングデータを生成及び編集するモデリングシステムであって、
前記仮想空間上における所定の2点により定義されるボーンデータを複数連結してスケルトンデータを構成し、前記スケルトンデータに対して関連づけられオブジェクトの外表面をポリゴンによって定義するスキンデータを、位置関係に従ってグループ化し、グループ毎にパーツデータを生成するパーツ生成部と、
前記各パーツデータの動作に関する情報を動作制御データとして生成する動作管理部と、
前記パーツデータ及び動作制御データを、相互の位置関係に基づいた階層構造に従ってデータセットに格納し、前記モデリングデータを生成するデータセット生成部と
を備えることを特徴とするモデリングシステム。
A modeling system for generating and editing modeling data related to an avatar in which a predetermined three-dimensional shape is defined in a virtual space,
A plurality of bone data defined by two predetermined points in the virtual space are connected to form skeleton data, and skin data associated with the skeleton data and defining the outer surface of the object by polygons is defined according to the positional relationship. A parts generation unit that groups and generates part data for each group;
An operation management unit for generating information on the operation of each part data as operation control data;
A modeling system comprising: a data set generation unit configured to store the part data and operation control data in a data set according to a hierarchical structure based on a mutual positional relationship, and generate the modeling data.
任意のパーツデータ及びこのパーツデータに対応する動作制御データを交換用データとして取得するとともに、取得された交換用データに対応するパーツデータ及び動作制御データを、交換の対象となるモデリングデータから選択し、選択されたパーツデータをそのデータセットから切り出すパーツ選択部と、
前記交換用データに含まれるパーツデータのデータ構成に関する情報である交換用トポロジーデータを取得するとともに、前記交換の対象となるモデリングデータのデータ構成に関する情報である基礎トポロジーデータを取得する基礎データ取得部と、
前記交換用トポロジーデータと前記基礎トポロジーデータとを比較し、比較結果に基づいて、前記パーツ選択部により切り出されたパーツデータに関連する動作制御データ、又は、前記交換用データ内の動作制御データを選択して読み込むパーツ交換処理部と
をさらに備えることを特徴とする請求項1に記載のモデリングシステム。
Arbitrary part data and motion control data corresponding to this part data are acquired as replacement data, and part data and motion control data corresponding to the acquired replacement data are selected from modeling data to be replaced. , A part selection part that cuts out the selected part data from the data set,
A basic data acquisition unit that acquires replacement topology data, which is information related to the data structure of part data included in the replacement data, and acquires basic topology data, which is information related to the data structure of modeling data to be replaced When,
Comparing the replacement topology data and the basic topology data, and based on the comparison result, the operation control data related to the part data cut out by the part selection unit, or the operation control data in the replacement data The modeling system according to claim 1, further comprising a parts replacement processing unit that is selected and read.
ユーザー操作に基づいて、編集の対象となるモデリングデータから任意のパーツデータを選択するとともに、選択されたパーツデータ及びこのパーツデータに対応する動作制御データを、編集用データとして前記データセットから切り出すパーツ選択部と、
前記編集用データに含まれるパーツデータ又は動作制御データに変更を加えるパーツ編集部と、
前記編集用データに含まれるパーツデータのデータ構成に関する情報である編集用トポロジーデータを生成するとともに、前記編集の対象となるモデリングデータのデータ構成に関する情報である基礎トポロジーデータを取得する基礎データ取得部と、
前記編集用トポロジーデータと前記基礎トポロジーデータとを比較し、比較結果に基づいて、前記パーツ選択部により切り出されたパーツデータに関連する動作制御データ、又は、前記編集用データ内の動作制御データを選択して読み込むパーツ交換処理部と
をさらに備えることを特徴とする請求項1に記載のモデリングシステム。
A part that selects arbitrary part data from modeling data to be edited based on a user operation, and cuts out the selected part data and operation control data corresponding to the part data from the data set as editing data. A selection section;
A part editing unit for changing the part data or the operation control data included in the editing data;
A basic data acquisition unit that generates editing topology data that is information related to the data structure of part data included in the editing data, and that acquires basic topology data that is information related to the data structure of modeling data to be edited When,
Comparing the editing topology data and the basic topology data, and based on the comparison result, the operation control data related to the part data cut out by the part selection unit, or the operation control data in the editing data The modeling system according to claim 1, further comprising a parts replacement processing unit that is selected and read.
前記データセット内の任意のパーツに含まれるポリゴンデータを、前記階層構造の上位にあるパーツのポリゴンデータと比較し、各ポリゴンデータに含まれる各頂点の座標の一致・不一致を判断し、一致する頂点同士を同一化する縫合部をさらに備えることを特徴とする請求項1に記載のモデリングシステム。   The polygon data contained in any part in the data set is compared with the polygon data of the parts higher in the hierarchical structure, and the coordinates of the vertices contained in each polygon data are judged to match or not match. The modeling system according to claim 1, further comprising a stitching unit that makes vertices identical. 仮想空間上において、所定の立体的形状が定義されたアバターに関するモデリングデータを生成及び編集するモデリングプログラムであって、コンピューターに、
前記仮想空間上における所定の2点により定義されるボーンデータを複数連結してスケルトンデータを構成し、前記スケルトンデータに対して関連づけられオブジェクトの外表面をポリゴンによって定義するスキンデータを、位置関係に従ってグループ化し、グループ毎にパーツデータを生成するパーツ生成ステップと、
前記各パーツデータの動作に関する情報を動作制御データとして生成する動作管理ステップと、
前記パーツデータ及び動作制御データを、相互の位置関係に基づいた階層構造に従ってデータセットに格納し、前記モデリングデータを生成するデータセット生成ステップと
を備える処理を実行させることを特徴とするモデリングプログラム。
A modeling program for generating and editing modeling data related to an avatar in which a predetermined three-dimensional shape is defined in a virtual space,
A plurality of bone data defined by two predetermined points in the virtual space are connected to form skeleton data, and skin data associated with the skeleton data and defining the outer surface of the object by polygons is defined according to the positional relationship. A part generation step for grouping and generating part data for each group;
An operation management step for generating information on the operation of each part data as operation control data;
A modeling program, comprising: storing the part data and operation control data in a data set according to a hierarchical structure based on a mutual positional relationship, and executing a process including a data set generation step of generating the modeling data.
任意のパーツデータ及びこのパーツデータに対応する動作制御データを交換用データとして取得するとともに、取得された交換用データに対応するパーツデータ及び動作制御データを、ユーザー操作に基づいて、交換の対象となるモデリングデータから選択し、選択されたパーツデータをそのデータセットから切り出すパーツ選択ステップと、
前記交換用データに含まれるパーツデータのデータ構成に関する情報である交換用トポロジーデータを取得するとともに、前記交換の対象となるモデリングデータのデータ構成に関する情報である基礎トポロジーデータを取得する基礎データ取得ステップと、
前記交換用トポロジーデータと前記基礎トポロジーデータとを比較し、比較結果に基づいて、前記パーツ選択ステップで切り出されたパーツデータに関連する動作制御データ、又は、前記交換用データ内の動作制御データを選択して読み込むパーツ交換処理ステップと
をさらに備えることを特徴とする請求項5に記載のモデリングプログラム。
Arbitrary part data and operation control data corresponding to this part data are acquired as replacement data, and part data and operation control data corresponding to the acquired replacement data are determined as replacement targets based on user operations. A part selection step of selecting from modeling data to be selected, and cutting out the selected part data from the data set;
A basic data acquisition step of acquiring replacement topology data, which is information related to the data configuration of part data included in the replacement data, and acquiring basic topology data, which is information related to the data configuration of modeling data to be replaced When,
Comparing the replacement topology data and the basic topology data, and based on the comparison result, the operation control data related to the part data cut out in the part selection step, or the operation control data in the replacement data The modeling program according to claim 5, further comprising a part replacement processing step of selecting and reading.
ユーザー操作に基づいて、編集の対象となるモデリングデータから任意のパーツデータを選択するとともに、選択されたパーツデータ及びこのパーツデータに対応する動作制御データを、編集用データとして前記データセットから切り出すパーツ選択ステップと、
前記編集用データに含まれるパーツデータ又は動作制御データに変更を加えるパーツ編集ステップと、
前記編集用データに含まれるパーツデータデータのデータ構成に関する情報である編集用トポロジーデータを生成するとともに、前記編集の対象となるモデリングデータのデータ構成に関する情報である基礎トポロジーデータを取得する基礎データ取得ステップと、
前記編集用トポロジーデータと前記基礎トポロジーデータとを比較し、比較結果に基づいて、前記パーツ選択ステップで切り出されたパーツデータに関連する動作制御データ、又は、前記編集用データ内の動作制御データを選択して読み込むパーツ交換処理ステップと
をさらに備えることを特徴とする請求項5に記載のモデリングプログラム。
A part that selects arbitrary part data from modeling data to be edited based on a user operation, and cuts out the selected part data and operation control data corresponding to the part data from the data set as editing data. A selection step;
A part editing step for changing the part data or the operation control data included in the editing data;
Basic data acquisition for generating editing topology data, which is information related to the data structure of the part data data included in the editing data, and acquiring basic topology data, which is information related to the data structure of the modeling data to be edited Steps,
Comparing the editing topology data with the basic topology data, and based on the comparison result, the motion control data related to the part data cut out in the part selection step, or the motion control data in the editing data The modeling program according to claim 5, further comprising a part replacement processing step of selecting and reading.
前記データセット内の任意のパーツに含まれるポリゴンデータを、前記階層構造の上位にあるパーツのポリゴンデータと比較し、各ポリゴンデータに含まれる各頂点の座標の一致・不一致を判断し、一致する頂点同士を同一化する縫合ステップをさらに備えることを特徴とする請求項5に記載のモデリングプログラム。   The polygon data contained in any part in the data set is compared with the polygon data of the parts higher in the hierarchical structure, and the coordinates of the vertices contained in each polygon data are judged to match or not match. The modeling program according to claim 5, further comprising a stitching step for making the vertices identical. 仮想空間上において、所定の立体的形状が定義されたアバターに関するモデリングデータを生成及び編集するモデリング方法であって、
パーツ生成部が、前記仮想空間上における所定の2点により定義されるボーンデータを複数連結してスケルトンデータを構成し、前記スケルトンデータに対して関連づけられオブジェクトの外表面をポリゴンによって定義するスキンデータを、位置関係に従ってグループ化し、グループ毎にパーツデータを生成するパーツ生成ステップと、
動作管理部が、前記各パーツデータの動作に関する情報を動作制御データとして生成する動作管理ステップと、
データセット生成部が、前記パーツデータ及び動作制御データを、相互の位置関係に基づいた階層構造に従ってデータセットに格納し、前記モデリングデータを生成するデータセット生成ステップと
を備える処理を実行させることを特徴とするモデリング方法。
A modeling method for generating and editing modeling data related to an avatar in which a predetermined three-dimensional shape is defined on a virtual space,
Skin data in which a part generator forms a skeleton data by connecting a plurality of bone data defined by two predetermined points in the virtual space, and defines an outer surface of an object associated with the skeleton data by a polygon Parts generation step for grouping them according to the positional relationship and generating part data for each group;
An operation management step for generating information on the operation of each part data as operation control data;
A data set generation unit storing the part data and the motion control data in a data set according to a hierarchical structure based on a mutual positional relationship, and executing a process including a data set generation step of generating the modeling data. A characteristic modeling method.
パーツ選択部が、任意のパーツデータ及びこのパーツデータに対応する動作制御データを交換用データとして取得するとともに、取得された交換用データに対応するパーツデータ及び動作制御データを、交換の対象となるモデリングデータから選択し、選択されたパーツデータをそのデータセットから切り出すパーツ選択ステップと、
基礎データ取得部が、前記交換用データに含まれるパーツデータのデータ構成に関する情報である交換用トポロジーデータを取得するとともに、前記交換の対象となるモデリングデータのデータ構成に関する情報である基礎トポロジーデータを取得する基礎データ取得ステップと、
パーツ交換処理部が、前記交換用トポロジーデータと前記基礎トポロジーデータとを比較し、比較結果に基づいて、前記パーツ選択ステップで切り出されたパーツデータに関連する動作制御データ、又は、前記交換用データ内の動作制御データを選択して読み込むパーツ交換処理ステップと
をさらに備えることを特徴とする請求項9に記載のモデリング方法。
The part selection unit acquires arbitrary part data and operation control data corresponding to the part data as replacement data, and the part data and operation control data corresponding to the acquired replacement data are to be replaced. A part selection step of selecting from modeling data and cutting the selected part data from the data set;
The basic data acquisition unit acquires replacement topology data that is information related to the data configuration of the part data included in the replacement data, and basic topology data that is information related to the data configuration of the modeling data to be exchanged A basic data acquisition step to acquire;
The part replacement processing unit compares the replacement topology data with the basic topology data, and based on the comparison result, operation control data related to the part data cut out in the part selection step, or the replacement data The modeling method according to claim 9, further comprising a part replacement processing step of selecting and reading operation control data within the model.
パーツ選択部が、ユーザー操作に基づいて、編集の対象となるモデリングデータから任意のパーツデータを選択するとともに、選択されたパーツデータ及びこのパーツデータに対応する動作制御データを、編集用データとして前記データセットから切り出すパーツ選択ステップと、
パーツ編集部が、前記編集用データに含まれるパーツデータ又は動作制御データに変更を加えるパーツ編集ステップと、
基礎データ取得部が、前記編集用データに含まれるパーツデータの、データ構成に関する情報である編集用トポロジーデータを生成するとともに、前記編集の対象となるモデリングデータのデータ構成に関する情報である基礎トポロジーデータを取得する基礎データ取得ステップと、
パーツ交換処理部が、前記編集用トポロジーデータと前記基礎トポロジーデータとを比較し、比較結果に基づいて、前記パーツ選択ステップで切り出されたパーツデータに関連する動作制御データ、又は、前記編集用データ内の動作制御データを選択して読み込むパーツ交換処理ステップと
をさらに備えることを特徴とする請求項9に記載のモデリング方法。
The part selection unit selects arbitrary part data from the modeling data to be edited based on a user operation, and the selected part data and the operation control data corresponding to the part data are used as editing data. A part selection step to cut out from the data set;
A part editing step in which the part editing unit changes the part data or the operation control data included in the editing data;
The basic data acquisition unit generates editing topology data that is information on the data structure of the part data included in the editing data, and is basic topology data that is information on the data structure of the modeling data to be edited A basic data acquisition step for acquiring
A part replacement processing unit compares the editing topology data with the basic topology data, and based on the comparison result, operation control data related to the part data cut out in the part selection step, or the editing data The modeling method according to claim 9, further comprising a part replacement processing step of selecting and reading operation control data within the model.
縫合部が、前記データセット内の任意のパーツに含まれるポリゴンデータを、前記階層構造の上位にあるパーツのポリゴンデータと比較し、各ポリゴンデータに含まれる各頂点の座標の一致・不一致を判断し、一致する頂点同士を同一化する縫合ステップをさらに備えることを特徴とする請求項9に記載のモデリング方法。   The stitching unit compares the polygon data contained in any part in the data set with the polygon data of the parts higher in the hierarchical structure, and determines whether the coordinates of the vertices contained in each polygon data match or not. The modeling method according to claim 9, further comprising a stitching step for identifying identical vertices.
JP2014261192A 2014-12-24 2014-12-24 Modeling system, modeling program, and modeling method Active JP6340313B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014261192A JP6340313B2 (en) 2014-12-24 2014-12-24 Modeling system, modeling program, and modeling method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014261192A JP6340313B2 (en) 2014-12-24 2014-12-24 Modeling system, modeling program, and modeling method

Publications (2)

Publication Number Publication Date
JP2016122297A true JP2016122297A (en) 2016-07-07
JP6340313B2 JP6340313B2 (en) 2018-06-06

Family

ID=56329062

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014261192A Active JP6340313B2 (en) 2014-12-24 2014-12-24 Modeling system, modeling program, and modeling method

Country Status (1)

Country Link
JP (1) JP6340313B2 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106075909A (en) * 2016-07-15 2016-11-09 珠海金山网络游戏科技有限公司 A kind of system and method that changes the outfit of playing
KR20190048507A (en) * 2017-10-31 2019-05-09 에스케이텔레콤 주식회사 Apparatus and method for simplification of 3d mesh data
JP2020013534A (en) * 2018-12-25 2020-01-23 ピクシブ株式会社 Image processing device, image processing method and image processing program
JP6818219B1 (en) * 2020-05-29 2021-01-20 株式会社PocketRD 3D avatar generator, 3D avatar generation method and 3D avatar generation program
WO2021008627A1 (en) * 2019-07-17 2021-01-21 厦门雅基软件有限公司 Game character rendering method and apparatus, electronic device, and computer-readable medium
US20220215583A1 (en) * 2020-01-14 2022-07-07 Tencent Technology (Shenzhen) Company Limited Image processing method and apparatus, electronic device, and storage medium

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011113135A (en) * 2009-11-24 2011-06-09 Nippon Hoso Kyokai <Nhk> Virtual character generation device and virtual character generation program

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011113135A (en) * 2009-11-24 2011-06-09 Nippon Hoso Kyokai <Nhk> Virtual character generation device and virtual character generation program

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106075909A (en) * 2016-07-15 2016-11-09 珠海金山网络游戏科技有限公司 A kind of system and method that changes the outfit of playing
CN106075909B (en) * 2016-07-15 2020-12-08 珠海金山网络游戏科技有限公司 Game reloading system and method
KR20190048507A (en) * 2017-10-31 2019-05-09 에스케이텔레콤 주식회사 Apparatus and method for simplification of 3d mesh data
KR102005492B1 (en) 2017-10-31 2019-07-30 에스케이텔레콤 주식회사 Apparatus and method for simplification of 3d mesh data
JP2020013534A (en) * 2018-12-25 2020-01-23 ピクシブ株式会社 Image processing device, image processing method and image processing program
JP7137462B2 (en) 2018-12-25 2022-09-14 ピクシブ株式会社 Image processing device, image processing method and image processing program
WO2021008627A1 (en) * 2019-07-17 2021-01-21 厦门雅基软件有限公司 Game character rendering method and apparatus, electronic device, and computer-readable medium
US20220215583A1 (en) * 2020-01-14 2022-07-07 Tencent Technology (Shenzhen) Company Limited Image processing method and apparatus, electronic device, and storage medium
JP6818219B1 (en) * 2020-05-29 2021-01-20 株式会社PocketRD 3D avatar generator, 3D avatar generation method and 3D avatar generation program
WO2021240848A1 (en) * 2020-05-29 2021-12-02 株式会社PocketRD Three-dimensional avatar generation device, three-dimensional avatar generation method, and three-dimensional avatar generation program
JP2021189725A (en) * 2020-05-29 2021-12-13 株式会社PocketRD Three-dimensional avatar generating apparatus, three-dimensional avatar generating method, and three-dimensional avatar generating program

Also Published As

Publication number Publication date
JP6340313B2 (en) 2018-06-06

Similar Documents

Publication Publication Date Title
JP6340313B2 (en) Modeling system, modeling program, and modeling method
US10860838B1 (en) Universal facial expression translation and character rendering system
US7663648B1 (en) System and method for displaying selected garments on a computer-simulated mannequin
JP6574401B2 (en) Modeling control system, modeling control method, and modeling control program
WO2015129353A1 (en) Virtual trial-fitting system, virtual trial-fitting program, virtual trial-fitting method, and storage medium in which virtual trial-fitting program is stored
US9235320B2 (en) Phantom image data bank (3D)
US20110166682A1 (en) Automated generation of garment construction specification
US11631229B2 (en) Comparative virtual asset adjustment systems and methods
JP2011209887A (en) Method and program for creating avatar, and network service system
US20140022238A1 (en) System for simulating user clothing on an avatar
US20190026397A1 (en) Highly Custom and Scalable Design System and Method for Articles of Manufacture
US20190026810A1 (en) Highly Custom and Scalable Design System and Method for Articles of Manufacture
TWI780919B (en) Method and apparatus for processing face image, electronic device and storage medium
US20190026809A1 (en) Highly Custom and Scalable Design System and Method for Articles of Manufacture
KR20190134030A (en) Method And Apparatus Creating for Avatar by using Multi-view Image Matching
US9607441B2 (en) Morphological attractor for creating custom ancestors in inheritance-based character generation
US10769860B2 (en) Transferrable between styles virtual identity systems and methods
CN115438502A (en) Intelligent customization design system based on three-dimensional graphical editing
WO2018081732A1 (en) Portable and persistent virtual identity systems and methods
CN116982088A (en) Layered garment for conforming to underlying body and/or garment layers
CN114912574A (en) Character facial expression splitting method and device, computer equipment and storage medium
JP2021043987A (en) Three-dimensional data system, server, and three-dimensional data processing method
JP2020009220A (en) Character data management method, system and program
WO2024069944A1 (en) Information processing device, information processing method, and program
JP7202045B1 (en) 3D avatar generation device, 3D avatar generation method and 3D avatar generation program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161219

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20170418

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20170418

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171016

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171107

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20171124

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171206

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180514

R150 Certificate of patent or registration of utility model

Ref document number: 6340313

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350