3D キャラクター

ここでは、手に入りやすいBlenderという3D制作ソフトウェアを使います。
バージョンは2.83以降です。Blenderの詳しい使い方はここでは省略させていただきます。

Blenderの環境設定

はじめに、Blenderの環境をBakinに適したものに変更しておきます。

シーンの単位について
シーンの単位が以下の設定となっている事をご確認下さい。
設定が異なると FBX 出力時にモデルが適切なサイズとなりません。

シーンの単位.png
 

FBX エクスポートについて
Bakin の仕様に適した FBX エクスポートの設定は、以下のように設定してください。(以下は3.6での設定例)

Blender-FBX-ExportSettings-jp.png

モーションの設定方法
モーションの設定方法は 2 種類あります。
①モデルとモーションを一緒のファイルとして読み込む方法
②モデルとモーションを別fbxファイルとして読み込む方法

・①モデルとモーションを一緒のfbxファイルとして読み込む方法
キャラクターモデルとモーションの付いたボーンをすべて選択し、
まとめてエスクポートすると、モデルとモーションが1つになったfbxファイルが出来上がります。
Bakinでfbxファイルを読み込むと、モデルが生成されるので、モーション管理でそのモデルを選択することで
内蔵されたモーションが読み込まれます。

・②モデルとモーションを別fbxファイルとして読み込む方法
モデルとボーン、同じ構造のモーション付きボーンを、それぞれ別々にエクスポートすると、
別のfbxファイルとしてエクスポートされます。
モデル側のボーン構造と、モーション側のボーン構造は同じである必要があります。
Bakin でそれぞれのfbxファイルを読み込み、「モデルに使用したいfbx」と「モーションに使用したいfbx」をそれぞれ設定していきます。

自作のモデルを作る際のアドバイス~プリセットのモデルをベースに作ってみる~

Bakin からモデルをエクスポートする
ここでは、3D_Tutorialゲームファイルの「Standard_A」キャラクターモデルを参考に説明していきます。
※事前にDLC「3D_Tutorial」のダウンロードが必要です。

モデルのエクスポート.png

3D_Tutorialゲームファイルを開き、「リソース>モデル>standard_A」の3D キャラクターモデルを選択し、エクスポートボタンを押します。
任意のフォルダを選択し、エクスポートします。
続いて、モデルリストの「motion_A」フォルダを選択し、こちらもエクスポートしておきます。

モーションA.png

データがエクスポートされたら、
Blender を立ち上げ、ファイル>インポート>FBX を選択し、以下の設定でインポートします。

FBX.png

今回はモデルとモーションを別ファイルとして扱う方法なので、
モーションの設定方法「②モデルとモーションを別fbxファイルとして読み込む方法」で進めます。
この方法では、同じボーン構造の異なるキャラクターモデルに、同じモーションを使用できるという利点があります。

Blenderにモデルをインポートしたら、必要に応じてポリゴンメッシュやテクスチャなどを好みに編集します。

 

モデル追加時の下準備
追加したい素材のファイルを⼊れるフォルダを⽤意します。
このフォルダは追加の際に⼀時的に使⽤するだけで、ファイルの場所やフォルダ名は問いません。
追加したモデルは、ゲームファイルフォルダ内のresフォルダ下へ、同じファイル名の別ファイルとして追加されます。

⽤意したフォルダの直下にモデルファイル(.fbx)とテクスチャファイル(.png)、設定ファイル(.def)を⼊れます。
例:[standard_A]フォルダに、追加したい素材(standard_A)を⼊れた場合

standard_A1.png

Bakin へモデルを追加する際、エクスポート時に生成された standard_A.def を一緒のフォルダに置いた状態で追加してください。
このファイルには、マテリアルとテクスチャの紐づけ設定が記述されています。
マテリアル名、テクスチャ名を変更した場合は、こちらを編集する必要があります。(編集しなくてもBakin上で手作業にて設定することは可能です。)

standard_A2.png
 

自作のモデルを作る際のアドバイス~自作の3Dキャラクターを追加する~

⾃作の3Dキャラクターを Bakin に追加する⽅法を説明します。
追加⽅法は、モーションデータの持ち⽅の違いにより2種類あります。

〇モデルとモーションをそれぞれ別個の FBX ファイルとする⽅法
ポリゴンとスケルトン構造を持つモデルファイルと、
スケルトン構造とモーションデータを持つモーションファイルに分けて追加します。

この⽅法の⻑所は、同じスケルトン構造を持つモデルであれば、異なるポリゴン形状でも既存のモーションを適⽤することが可能です。
(※Bakin の⼈型キャラクターは、この⽅法を使⽤しています。)

※追加に必要なファイルは、モデル(.fbx)・テクスチャ(.png)・モーション(.fbx)ファイルです。
モデルとモーションのスケルトン構造及び名称は同⼀とします。

自作のモデルを作る際のアドバイス1.png
自作のモデルを作る際のアドバイス2.png
 

〇モデルとモーションを⼀つの FBX ファイルとしてまとめる⽅法
ポリゴンとスケルトン構造とモーションデータをまとめて⼀つのファイルとして追加します。
複数のモーションを持つ場合は、該当ファイルをモデルで読み込み、モーション管理で該当モデルを選択します。
すると含まれるモーション(アクション)がリストされるので、フレーム数やループ設定を調整します。

自作のモデルを作る際のアドバイス3.png
 

●追加に必要なファイルについて
3Dキャラクターは、モデル・テクスチャ・モーションのデータが必要です。
これらの作成には3Dグラフィックスの知識や所定のソフトウェアが必要です。

各ファイルの形式や仕様については、以下のようになります。

1. モデルファイル(.fbx)
• ファイル形式: FBX 形式。

• FBX のバージョンは、FBX7.4(FBX2014)を推奨します、
※Bakin の⼈型キャラクターは、Blender2.83 にて制作しています。

• FBX 形式はアスキー、バイナリの両⽅に対応しています。

• FBX7.4(FBX2014)より以前のバージョンの場合、Bakin へ追加の際に最適化オプション設定を有効にすると、
読み込み可能となります。(※正しく表⽰されない場合もあります。)
詳しくは、後述の Bakin への追加⽅法の項⽬を御覧下さい。

• 三⾓ポリゴン以外は正しく表⽰されません。
予め三⾓ポリゴン化を⾏うか、Bakin へモデル追加の際に最適化オプション設定を有効にして下さい。
(※最適化オプションを有効にすると⾃動的に三⾓ポリゴン化が⾏われます。)

• Bakin の地形1ブロックのサイズは、Blender ではプリミティブ⽴⽅体(寸法1m:拡大縮小0.5)と同等のサイズです。
Bakin の標準的なキャラクターサイズは地形1ブロックに対して収まるようなサイズ感となっています。

• 1つのモデルに対し、マテリアルは複数設定できます。Bakin 側でモデルの設定マテリアルを変更することも可能です。

• ファイル名は、半⾓英数字で設定して下さい。

• スケルトン構造のジョイント数の制限については、モデル1体に対して最大1365を上限としています。
ただしこの上限は、OpenGLの仕様により、マシンスペックによって最低341、最大で1365の間で変化します。
また、ウェイトのインフルエンスは最大4として下さい。(最大4を超えた場合は、ウェイトの大きいものを優先して4つ採用されます。)

• モーションデータを別個とする場合は、キャラモデルのボーンにはアニメーションを付けずに、
ポリゴンとスケルトン構造だけの FBX ファイルとして出⼒します。

• モーションデータをまとめる場合は、このモデルファイルに複数のアニメーションを設定し、
モデルとベイク処理したアニメーションをまとめて⼀つの FBX ファイルとして出⼒します。
なお、モーションの作業単位は、60fps となります。

2.テクスチャ(.bmp、.png)
• ファイル形式:BMP 形式 または PNG 形式。

• テクスチャのピクセルサイズは、
64×64、128×128、256×256、512×512 などの2のべき乗と呼ばれる数値を推奨します。
256×128 なども使⽤可能です。
2のべき乗以外のサイズのテクスチャを設定すると表⽰に不具合が起る事があります。

• テクスチャのファイル名は、モデルの FBX 内で指定されているものです。

• BMP にアルファチャンネルの設定することで、透過表現が可能です。
また、PNG についても透明部分を設定することで、透過表現が可能です。

•Bakinでは PBR ( Physical Based Rendering )を採用することにより、よりリアルな質感表現が可能です。
PBR表現を使用する場合、1つのモデルに対し、用途に合わせてテクスチャを3枚設定する事を推奨します。
アルベドマップテクスチャ:モデルの色を設定するテクスチャ
ノーマルマップテクスチャ:モデル表面の凹凸を設定するテクスチャ
マスクマップテクスチャ:RGBA各チャンネルにそれぞれ、R(発光量)、G(ラフネス)、B(金属)、A(スペキュラ強度)を設定するテクスチャ
マスクマップはこれらを正しく設定することで、よりリアルな質感表現が可能です。

また、マスクマップがなくても、
マスクマップで制御される設定はマテリアルプロパティによりある程度調整が可能です。

追加に必要なファイル1.png

• ファイル名は、半⾓英数字で設定して下さい。

• テクスチャファイルの例
アルベドマップ テクスチャ

追加に必要なファイル2.png

ノーマルマップ テクスチャ

追加に必要なファイル3.png

マスクマップ テクスチャ

追加に必要なファイル4.png
 

3.モーションファイル(.fbx)
追加する素材をモデルとモーションを別個のファイルとする場合、モーションだけのファイルが必要となります。
FBX の対応バージョンや形式は、モデルファイルの項⽬と同じ仕様になります。

• ファイル形式: FBX 形式。

• ポリゴンデータは削除して下さい。

• スケルトン構造及び名称は、モデルファイルと同⼀にして下さい。

• モーションの作業単位は、まとめた場合と同じ 60fps となります。

• 1つのモーションファイルの中にモーション(アクション)が複数あった場合、それぞれ別のモーションとして読み込まれます。

• 出⼒したいモーションの開始フレームと終了フレームを指定し、ベイク処理を設定して FBX ファイルを出⼒します。

• モーションのファイル名は自由ですが、、mot_モーション名(半⾓英数字).fbx など、特定の文字列を含めておくと作業しやすいかと思います。
例 mot_walk.fbx mot_wait.fbx mot_run.fbx

• モーションはループ再⽣なしが初期設定となっています。
ループ再⽣させたい場合は、モーションプロパティで該当モーションの「ループ」設定をONにしてください。

追加に必要なファイル5.png
 

○モデル追加時の下準備
1. 追加したい素材のファイルを⼊れるフォルダを⽤意します。
このフォルダは追加の際に⼀時的に使⽤するだけです。ファイルの場所やフォルダ名は問いません。
追加したモデルは、ゲームファイルフォルダ内のresフォルダ下へ追加されます。

2. ⽤意したフォルダの直下にモデルファイル(.fbx)とテクスチャファイル(.bmpまたは.png)を⼊れます。
例:[standard_A]フォルダに、追加したい素材(standard_A)を⼊れた場合

追加に必要なファイル6.png
 

Bakin への追加⽅法

Bakin への追加⽅法は、モデルとモーションが別個の場合でもまとめた場合でも同じです。
1. 【リソース】>【モデル】>【追加 ボタン】を選択、【Asset Picker】ウィンドウを開きます。

BAKIN への追加⽅法1.png

2. 【ファイルから選択】を選択します

BAKIN への追加⽅法2.png

3. 追加したいモデルの入ったフォルダを開き、fbxファイルを選択します。

4. 必要に合わせて【FBXファイルのインポート時、自動で最適化を行う】をチェックします。
最適化は以下の処理を自動で行います。
・スキンウェイトの正規化
・ポリゴンの三角化
・スケールの適用
・FBX7.4より以前のFBXフォーマットの場合、FBX7.4への変換
※もしモデルファイルが正しく取り込めなかった場合は、チェックを外してください。

5.【追加して終了】を押します。
★1~5の手順は、モデル リストにfbxファイルをドラッグ&ドロップすることでも可能です。

6.インポートするfbxのマテリアルと、「テクスチャがすべて同じマテリアル」がプロジェクト内にあった場合、「マテリアルの共有化」ダイアログが開きます。
このダイアログではマテリアルを共有するかどうかを選択することができます。
マテリアルはインポート後でもリソース>3Dスタンプでマテリアルを割り当てなおすことができます。

テクスチャがすべて同じ既存のマテリアルをインポートしたモデルに割り当てることによって、プロジェクト内にあるモデルとマテリアルを共有することができます。

マテリアル_マテリアルインポートダイアログ.png

7. 【モデル リスト】にキャラクターモデルが追加されます。
追加されたファイルの格納場所は、【モデルの設定 > 基本 > フォルダー名】に表⽰されます。
またテクスチャは⾃動的に texture フォルダが作られ、そこにまとめられます。

BAKIN への追加⽅法3.png

※【ファイルから選択】で追加した素材は、初めから登録されているシステム素材【reserved】とは区別され、
黒字のモデル名で表⽰されます。

また、ユーザー素材は、ゲームを保存する際に、ゲームファイル内に保存されます。
元のファイルがそのまま使⽤されるわけではありません。

8. モデルをマップに配置したり、ゲームで使えるようにするためには「スタンプ」にする必要があります。
「スタンプ」については「スタンプ」とはをぜひ一度ご確認ください。

 

追加したキャラモデルを選択し、スタンプ化ボタンを押してください。
リソース>3Dスタンプのリストに新規スタンプとして追加されます。

BAKIN への追加⽅法4.png
 

モーションの追加
続けて、モーションのfbxファイルがある場合は、以下を行います。
上記と同じ手順でモーションファイルをモデルとして追加し、
そのあとモーションメニューで追加したモーションのモデルを選択します。

BAKIN への追加⽅法5.png
  1. モーションのモデルを選択すると、モーション リストに設定が登録されます。
    モーション設定名は好きなものに変更してOKです。
    BAKIN への追加⽅法6.png
     
  2. モーション設定登録後、一度スタンプに戻り、キャラモデルのスタンプにモーション設定を登録します。
    BAKIN への追加⽅法7.png
     
  3. スタンプでモーション設定を登録したら、モーションメニューに戻り、設定したいモーション設定を選択します。
    BAKIN への追加⽅法8.png
     
  4. さらに追加したいモーションがある場合は、【プロパティ>モーション】の[+]追加ボタンをクリックし、
    モーションモデルを追加していきます。
     
    BAKIN への追加⽅法9.png
    BAKIN への追加⽅法10.png

モーションプロパティの「モーション名」は、ゲーム中の挙動と紐づいているので、
以下モーション名を付けることで、ゲーム中の動作として自動的に登録されます。
※詳しくはモーション名規則をご確認ください。
wait:待機モーション
battle_wait:戦闘時の待機モーション
walk:歩きモーション
run:走りモーション
attack:戦闘時の攻撃モーション
skill:戦闘時のスキルモーション
damage:戦闘時のダメージモーション

設定が終わったら、キャスト設定などを行い、
テストプレイで動きを確認してみましょう!

以上でキャラモデル追加の一連の手順は終了です。


添付ファイル: fileBlender-FBX-ExportSettings-jp.png 15件 [詳細] fileマテリアル_マテリアルインポートダイアログ.png 133件 [詳細] fileマテリアル_マテリアルインポートダイアログ_1.png 167件 [詳細] fileBlender_空間の変換を使用.png 330件 [詳細] file追加に必要なファイル6.png 370件 [詳細] file追加に必要なファイル5.png 361件 [詳細] file追加に必要なファイル4.png 361件 [詳細] file追加に必要なファイル3.png 361件 [詳細] file追加に必要なファイル2.png 378件 [詳細] file追加に必要なファイル1.png 366件 [詳細] file自作のモデルを作る際のアドバイス3.png 391件 [詳細] file自作のモデルを作る際のアドバイス2.png 392件 [詳細] file自作のモデルを作る際のアドバイス1.png 388件 [詳細] fileモデルのエクスポート.png 385件 [詳細] fileモーションA.png 372件 [詳細] fileシーンの単位.png 395件 [詳細] filestandard_A2.png 404件 [詳細] filestandard_A1.png 365件 [詳細] fileFBXエクスポート.png 398件 [詳細] fileFBX.png 388件 [詳細] fileBAKIN への追加⽅法10.png 364件 [詳細] fileBAKIN への追加⽅法9.png 369件 [詳細] fileBAKIN への追加⽅法8.png 376件 [詳細] fileBAKIN への追加⽅法7.png 370件 [詳細] fileBAKIN への追加⽅法6.png 346件 [詳細] fileBAKIN への追加⽅法5.png 373件 [詳細] fileBAKIN への追加⽅法4.png 372件 [詳細] fileBAKIN への追加⽅法3.png 371件 [詳細] fileBAKIN への追加⽅法2.png 374件 [詳細] fileBAKIN への追加⽅法1.png 370件 [詳細]

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2024-03-28 (木) 16:24:48