■概要
2009.7.26
.■Gmaxのオブジェクト
2009.7.26
下の図は、Gmaxで使用するオブジェクトのイメージ図です。とりあえず「オブジェクトとサブオブジェクト」、「編集可能オブジェクトとプリミティブ」の違いだけでもざっくり覚えておくと良いと思います。
SAの3Dモデルでは、基本的に編集可能オブジェクトの「Editable Mesh」を使用してモデリングします。これに制御用の「Helper」等のモデル外要素を適宜加えて、dffとして出力することになります。
.SAの3Dモデルでは、基本的に編集可能オブジェクトの「Editable Mesh」を使用してモデリングします。これに制御用の「Helper」等のモデル外要素を適宜加えて、dffとして出力することになります。
「編集可能オブジェクト」
「Primitive(プリミティブ)」
「Light」「Helper」
各頂点の座標を個別に設定して複雑な形状を表現できるオブジェクト。編集単位である頂点や辺、面などを「サブオブジェクト」と呼びます。
SAのdffファイルをインポートした場合、3Dモデルは"Editable Mesh"としてインポートされます。
SAのdffファイルをインポートした場合、3Dモデルは"Editable Mesh"としてインポートされます。
「Primitive(プリミティブ)」
球や箱などの基本図形。半径や辺の長さなどのパラメータを使って編集します。編集可能オブジェクトに変換可能ですが、逆はできません。
SAではコリジョンデータに使用される場合があります。また、自分で3Dモデルを作成する場合、プリミティブで大まかな形を作ってから"Editable Mesh"に変換して細かい形を作ることもあります。
SAではコリジョンデータに使用される場合があります。また、自分で3Dモデルを作成する場合、プリミティブで大まかな形を作ってから"Editable Mesh"に変換して細かい形を作ることもあります。
「Light」「Helper」
制御用のモデル外要素。レンダリング時の光源、アニメーションの動作基点などに用いられる。SAモデルではゲーム内の制御用にHelperが使用されます。
■オブジェクトの結合など
2009.7.26
編集した3DモデルをSAのdffファイルとしてエクスポートするときには、エクスポータ規定のオブジェクト構成となっている必要があります。
ここではオブジェクト構成の操作として、オブジェクト間に階層構成をつける「Link操作」、複数のオブジェクトを一つのオブジェクトとしてまとめる「Attach操作」、隣接する複数のfaceをひとつのグループとして扱う「element化操作」について説明します。
(1)LinkとUnlink
(2)AttachとDetach
(3)Element化
.ここではオブジェクト構成の操作として、オブジェクト間に階層構成をつける「Link操作」、複数のオブジェクトを一つのオブジェクトとしてまとめる「Attach操作」、隣接する複数のfaceをひとつのグループとして扱う「element化操作」について説明します。
(1)LinkとUnlink
図の(1)がLink操作のイメージ。オブジェクト間に階層構成をつける操作がLinkで、逆に階層構成から外す操作がUnlinkになります。
このLink構成は、乗り物モデルやキャラスキンのボーンに使用されます。キャラスキンでボーンのリンクをいじることはほとんどないと思いますが、乗り物MODでは編集したオブジェクトのリンク構成をいじる操作が必要になります。
操作方法は下のTipsでご確認ください。
このLink構成は、乗り物モデルやキャラスキンのボーンに使用されます。キャラスキンでボーンのリンクをいじることはほとんどないと思いますが、乗り物MODでは編集したオブジェクトのリンク構成をいじる操作が必要になります。
操作方法は下のTipsでご確認ください。
(2)AttachとDetach
図の(2)がAttach操作のイメージ。複数のオブジェクトを一つのオブジェクトにまとめるの操作がAttachで、逆にオブジェクト内のサブオブジェクトを別のオブジェクトとして分離する操作がDetachになります。
キャラスキンではエクスポートするモデルデータが「一つのオブジェクト」になっていなければなりませんので、適宜Attach操作を使用することになると思います。
操作方法は下のTipsでご確認ください。
キャラスキンではエクスポートするモデルデータが「一つのオブジェクト」になっていなければなりませんので、適宜Attach操作を使用することになると思います。
操作方法は下のTipsでご確認ください。
(3)Element化
図の(3)がElement操作のイメージ。オブジェクト内で隣接する複数のfaceをひとつのサブオブジェクトとしてまとめたのが「element」です。
隣接する複数のfaceの共有頂点を結合(Weld)することで、ひとつのelementとして扱うことができるようにます。逆にelement内で結合されている頂点を分解(bleak)することで、faceをelementから外すことができます。
face選択がグループ単位でできるという点以外にelement化する理由はないのですが、頂点結合はゲーム内でのモデルの見栄えに大きく関わる重要な操作になります。
操作方法は下のTipsでご確認ください。
隣接する複数のfaceの共有頂点を結合(Weld)することで、ひとつのelementとして扱うことができるようにます。逆にelement内で結合されている頂点を分解(bleak)することで、faceをelementから外すことができます。
face選択がグループ単位でできるという点以外にelement化する理由はないのですが、頂点結合はゲーム内でのモデルの見栄えに大きく関わる重要な操作になります。
操作方法は下のTipsでご確認ください。
■LinkとUnlink
2009.7.26
■Link操作
■Unlink操作
■階層関係の確認:
(例)ヘルパー"quad"を「親」、メッシュオブジェクト"handlebars"を「子」としてリンクさせます。ビューポートで親を選択する方法とリストで親を選択する方法の2種類があります。
■ビューポートで親を選択する場合
■リストで親を選択する場合
■ビューポートで親を選択する場合
Linkアイコン(A1)を押した後、ビューポート上で「子から親へ」ドラッグ(A2)する。
■リストで親を選択する場合
オブジェクトが重なっていてドラッグしにくい場合、リストから親を選択すると操作しやすい。
(1)子オブジェクトを選択(B1)。
(2)Linkアイコン(B2)をonにした状態で'H'キーを押すと"Select Parent"窓が開く。
(3)リストから親を選択(B3)して、"Link"(B4)を押す。
(2)Linkアイコン(B2)をonにした状態で'H'キーを押すと"Select Parent"窓が開く。
(3)リストから親を選択(B3)して、"Link"(B4)を押す。
■Unlink操作
階層構造から外すオブジェクトを選択した後、Unkinkアイコン(C)をクリック。
外したオブジェクトに子リンクがあれば、下の階層関係ごと外れる。
■階層関係の確認:
Linkアイコンがoffの状態で'H'キーを押すと"Select Object"窓が開く。
"Display Subtree"(D1)をチェックすると階層ツリー表示になるので、正しくリンクされているか確認。上の例でリンクさせた"quad"(親)、"handlebars"(子)の階層関係が正しく設定されている(D2)。
.
■AttachとDetach
2009.7.26
■Attach操作
■Detach操作
(例)胴体部分のオブジェクトに顔部分のオブジェクトを合成します。オブジェクトをビューポートで選択する方法とリストで選択する方法の2種類あります。
■ビューポートで選択する場合
■リストで選択する場合
■ビューポートで選択する場合
元となるオブジェクトを選択し、"Attach"(A1)を押してから合成するオブジェクトを選択する。
■リストで選択する場合
元となるオブジェクトを選択し、"Attach List"(A2)を押して合成するオブジェクトを選択する。
■Detach操作
(例)上の例で合成したオブジェクトから、顔部分を別オブジェクトに分割します。
faceまたはelement選択で分割したいサブオブジェクトを選択し、"Detach"(B)を押す。
faceまたはelement選択で分割したいサブオブジェクトを選択し、"Detach"(B)を押す。
.
■頂点結合と分割
2009.7.26
■Vertex Weld(頂点結合)
選択した頂点のうち、「重なっているものを結合させる」方法です。
1.頂点を複数選択する。
2."Weld"欄(C1)の"select"横の数値窓に'0.001'(*1)を入力。
3."Selected"を押す。
■Vertex Break(頂点分解)
分解したい頂点を選択して、"Break"(C2)を押す。
選択した頂点のうち、「重なっているものを結合させる」方法です。
1.頂点を複数選択する。
2."Weld"欄(C1)の"select"横の数値窓に'0.001'(*1)を入力。
3."Selected"を押す。
(*1) 数値は結合する頂点距離の閾値。デフォルトの値'0.1'はSAモデルのスケールでは大きすぎて、重なっていない頂点まで巻き込んでしまうことがあるので、なるべく小さな値にする。
■Vertex Break(頂点分解)
分解したい頂点を選択して、"Break"(C2)を押す。
.
■頂点結合と平滑処理
2009.7.26
Gmaxでの頂点結合は、ゲーム内表示の平滑処理と大きな関係があります。
下図は頂点を結合したときと分割したときのゲーム内表示の違いです。CJにかぶせた箱の頂点を、結合または分解した状態にしています。 ちなみに両方ともGmaxでのSmoothingはかけていません。
頂点結合した場合は、面境界の陰影がぼやけて滑らかに見えます。これが平滑処理です。 いっぽう頂点結合しない場合は平滑処理がかからずくっきりとした陰影が出ます。
表現したい陰影にあわせて、頂点の結合/分解を適宜選択してください。
キャラクタスキンでは、基本的には全頂点を結合したほうが良いと思いますが、 ひだつきスカートや服の折り返し部などでは、平滑処理によって不自然な陰影が生じる場合があります。そのようなときは部分的に頂点を分解した方が良いようです。ご参考まで。
下図は頂点を結合したときと分割したときのゲーム内表示の違いです。CJにかぶせた箱の頂点を、結合または分解した状態にしています。 ちなみに両方ともGmaxでのSmoothingはかけていません。
頂点結合した場合は、面境界の陰影がぼやけて滑らかに見えます。これが平滑処理です。 いっぽう頂点結合しない場合は平滑処理がかからずくっきりとした陰影が出ます。
表現したい陰影にあわせて、頂点の結合/分解を適宜選択してください。
キャラクタスキンでは、基本的には全頂点を結合したほうが良いと思いますが、 ひだつきスカートや服の折り返し部などでは、平滑処理によって不自然な陰影が生じる場合があります。そのようなときは部分的に頂点を分解した方が良いようです。ご参考まで。
.
■スケーリングの注意点
2009.8.8
オブジェクトのスケールを変更する場合、スケーリングの方法によってはゲーム内で意図した結果が反映されない場合があります。
これは「オブジェクトを直接スケーリング」した場合に起こる場合が多いようです。スケーリングの際にはなるべく「頂点や面などの選択モードで、オブジェクト内部を全選択してスケーリング」するようにしてください。また、スケール値をリセットすることでずれが直る場合もありますのでお試しください。
■頂点選択モードでのスケーリング(推奨)
■オブジェクト選択モードでのスケーリング(非推奨)
■スケール値のリセット方法
キャラスキンのボーン構成も含めたスケールずれに関して、Tips「キャラスキン」の「スケール調整」でも触れていますので、併せてご参照ください。
これは「オブジェクトを直接スケーリング」した場合に起こる場合が多いようです。スケーリングの際にはなるべく「頂点や面などの選択モードで、オブジェクト内部を全選択してスケーリング」するようにしてください。また、スケール値をリセットすることでずれが直る場合もありますのでお試しください。
(注1)下の画像はホイールをスケーリングしている例ですが、ゲーム内のホイールサイズは"vehicles.ide"で設定する数値によっても変化しますので、ホイール径をいじる際にはそちらも計算に入れてください。
(注2)乗り物のダミーヘルパーやキャラスキンのボーンのスケールは、他のオブジェクトにも影響を与える場合があるので、できるだけ変更しないようにすることをお勧めします。
(注2)乗り物のダミーヘルパーやキャラスキンのボーンのスケールは、他のオブジェクトにも影響を与える場合があるので、できるだけ変更しないようにすることをお勧めします。
■頂点選択モードでのスケーリング(推奨)
■オブジェクト選択モードでのスケーリング(非推奨)
■スケール値のリセット方法
キャラスキンのボーン構成も含めたスケールずれに関して、Tips「キャラスキン」の「スケール調整」でも触れていますので、併せてご参照ください。
.
■モデファイアと集約
2009.8.8
Gmaxにはオブジェクト等に対して行う操作を扱う「モデファイア」という概念があり、例えばキャラスキンでボーンやウェイトの設定を行う「スキンモデファイア」、テクスチャを貼るためのUV設定を行う「UVW Mappingモデファイア」などがこれに該当します。
モデファイアは画像ソフトでいう「レイヤー」のようなもので、いわゆる「他のレイヤーと統合」的な操作をするまでは自由に編集可能です。また、複数のモデファイアをスタックすることもでき、モデファイアかけた時点で選択されていたモデファイアもしくはオブジェクトの上の層にスタックされます。
画像ソフトの「レイヤー統合」にあたる操作が"Collapse"(集約)です。集約を行うには、対象モデファイアを右クリックし、"Collapse to"を選択します。複数スタックされたモデファイアの一つを集約する場合、対象モデファイア以下にスタックされたモデファイアも一緒に集約されてしまいますのでご注意ください(下図参照)。
モデファイアスタック順はマウスドラッグで変更することができますので、スキンモデファイアなどエクスポートに必要なモデファイアを巻き込まないようにスタック順を適宜調整するようにしてください。
モデファイアは画像ソフトでいう「レイヤー」のようなもので、いわゆる「他のレイヤーと統合」的な操作をするまでは自由に編集可能です。また、複数のモデファイアをスタックすることもでき、モデファイアかけた時点で選択されていたモデファイアもしくはオブジェクトの上の層にスタックされます。
画像ソフトの「レイヤー統合」にあたる操作が"Collapse"(集約)です。集約を行うには、対象モデファイアを右クリックし、"Collapse to"を選択します。複数スタックされたモデファイアの一つを集約する場合、対象モデファイア以下にスタックされたモデファイアも一緒に集約されてしまいますのでご注意ください(下図参照)。
モデファイアスタック順はマウスドラッグで変更することができますので、スキンモデファイアなどエクスポートに必要なモデファイアを巻き込まないようにスタック順を適宜調整するようにしてください。
.
■モデファイアのコピー
2010.5.23
スキンモデファイア・Unwrap UVWモデファイアなどのモデファイアは、コピーペースト処理も可能です。但し、ウェイト情報やUV座標の情報などは頂点ごとに設定されているものですので、モデファイアコピーでは移植することはできませんのでご注意ください。skintoolsのウェイト保存などと組み合わせると便利なシーンもあるかと思います。
操作は普通に右クリックからコピーペーストするだけです。ご参考まで。
■モデファイアのコピーペースト
操作は普通に右クリックからコピーペーストするだけです。ご参考まで。
■モデファイアのコピーペースト
右クリックメニューからコピーペーストできます。コピー時はリストされたモデファイア名を、ペースト時はリストからオブジェクトを右クリックしてください。
下の画像はスキンモデファイアをコピーペーストする例です。
下の画像はスキンモデファイアをコピーペーストする例です。