2016年9月24日土曜日

Metasequoia EX の FBXファイルの互換性を試してみました

Can Metasequoia EX import and export compatible FBX files

CG動画やゲーム開発に使われる3次元CGはFBXフォーマットがデファクトスタンダードです。
FBXを扱うならAutodesk製品が最善策ですがコストがネックです。
無料で使えるBlenderはFBXのインポートやエクスポートができないことがあり悩みの種です。
そこで前回は Shade3D Basicを使ってFBXファイルをインポート・エクスポート してみたところ、シェイプ(頂点モーフ)が削除されることがわかりました。

今回は Metasequoia EX でFBXファイルのインポートとエクスポートをしてみました。

© Unity Technologies Japan/UCL


環境

  • Windows 10
  • Metasequoia EX 4.5


Metasequoia EXを選んだ理由

Metasequoia EXを選んだ理由は次のとおりです。
  • 値段が安い (2万円くらい)
  • FBXファイルのインポートとエクスポートができる
  • 頂点モーフ機能がある
以下、「Metasequoia EX」をMetasequoiaと略します。


FBXファイルをインポートした結果

ユニティテクノロジーズジャパンのUnityアセット・ユニティちゃんのFBXファイルをMetasequoiaにインポートしました。
Blenderのように顔が散らかりません。
blog.fujiu.jp Metasequoia EX の FBXファイルの互換性を試してみました

各材質にテクスチャ画像ファイルを指定して下のようになりました。
デフォルトでは全ての頂点モーフが合成されるため目やまゆ毛がたくさん表示されますが、オブジェクトビューで非表示にできます。

モーフを使ってみたところ、口は動作しましたが

目やまゆ毛のモーフは問答無用で削除されました


FBXファイルをエクスポートした結果

Metasequoia からエクスポートしたユニティちゃんをCLIP STUDIO MODELERやBlenderにインポートしたら顔が消えたり、服の形が変わっていました。
下の画像はCLIP STUDIO MODELERにインポートした結果です。
顔がなくなりました。
ユニティちゃんは3次元キャラクターとしては珍しく服を重ね着しているのですが、上着から見えないはずの服がはみ出ています。
下の画像はBlenderにインポートした結果です。CLIP STUDIO MODELERとは違う形で服がはみ出ています。

Pose modeで動かすとウェイトがおかしいことがわかりました。


まとめ

MetasequoiaでユニティちゃんのFBXファイルをインポート・エクスポートすると結果、Blendeとは違うところで互換性が保たれないことがわかりました。
ですが全てのFBXでこの現象が起きるわけではありません。Metasequoiaでモーフやウェイトが正常にエクスポートできるモデルもありました。
BlenderにインポートできないFBXファイルがMetasequoiaにインポートできることもありました。


© 株式会社インターネット

現時点でなるべく安くFBXフォーマットを交換したければMetasequoiaとBlenderの両刀使いがよさそうです。
※このブログを書いているのは ZBrush Core が正式発表直前のため、近い将来評価が変わる場合があります。


関連ブログ

Shade3D の FBXファイルの互換性を試してみました
MakeHumanでCLIP STUDIO用3Dキャラクターを作る方法
[Blender] Pythonで複数の設定を一瞬で編集する方法
[Blender] ボーンを曲げてもメッシュが曲がらない原因と修正方法
BlenderのモデルデータをMMDに変換する方法
Blenderで作ったアニメーションがUnity3Dで違う動きをする原因と直し方

以上、参考になれば幸いです。

2016年9月10日土曜日

Shade3D の FBXファイルの互換性を試してみました

Can Shade3D import and export compatible FBX files

ゲームエンジンの Unity3D や Unreal Engine などで使われる3次元CGはFBXフォーマットが広く使われています。
FBXフォーマットのファイルを加工して再利用することが必要になることもあります。
そこで3次元CG用モデリングソフトのShade3Dを使ってFBXファイルのインポートとエクスポートを試してみました。
blog.fujiu.jp Shade3D の FBXファイルの互換性を試してみました
© Unity Technologies Japan/UCL


環境

  • Windows 10
  • Shade3D Basic Ver.16


Blenderではダメなのか

FBXが扱えるフリーソフト(寄付歓迎)といえば Blender があります。
ですが、BlenderのFBXファイルのインポートとエクスポートは互換性が低めです。
下の画像はユニティ・テクノロジーズ・ジャパンのキャラクター・ユニティちゃんのFBXファイルをBlenderに取り込んだ結果です。
顔が大きさも配置場所もばらばらで元に戻す手直しが必要です。

FBXフォーマットはAutodeskの規格でありプロプライエタリーな FBX SDK が公開されています。
一方、BlenderはGPLのオープンソースソフトウェアです。
GPLのBlenderは非GPLのFBX SDKと動的リンクして公開することができないため、BlenderにFBXとの高い互換性を望むのは難しい事情があります。
FBXを扱うならAutodeskのMayaや3dsMaxが最善の選択ですが厳しいコストがかかります。


Shade3Dを選んだ理由

Autodesk製品よりコストが低いFBXファイルの交換用としてShade3Dを使ってみました。
Shade3Dを選んだ理由は次のとおりです。
  • 値段が安い (一番安いグレードで1万円くらい)
  • FBXフォーマットのインポートとエクスポートができる
  • Webサイトのチュートリアルが充実している
  • ベンダーがUnity3Dのサポートに積極的に見える
  • 毎年バージョンアップしている


Shade3DのFBXの互換性

Shade3Dでユニティちゃんをインポートしてみました。

各パーツは正常な位置にあります。
テクスチャは指定する必要がありますが、Blenderに比べると少ない操作で済みます。


Shade3Dを使ってみた結果

Shade3DにインポートしたユニティちゃんをFBXでエクスポートし、Blender や CLIP STUDIO MODELER にインポートしたらShape Keys(頂点モーフ)がなくなっていました。
下の画像はShade3DのFBXをBlenderにインポート下結果です。12種類あるはずのMTH_DEFのSyape Keysが全てなくなりました。

Shade3DはFBXファイルのShape Keysのインポート・エクスポートの互換性がないか、モーフ機能がないようです。

その他の面では
  • マウス操作によるビューのスクロールがBlenderの逆方向に動く
  • Blenderにある「マテリアル(材質)が割り当てられた面を選択する機能」と同じ機能が見当たらない
  • 自分の環境ではCOLLADAファイルへの書き出しが必ずフリーズする
といった事がありました。


まとめ

Shade3Dは低価格であるもののBlenderユーザーがデータ交換用として使うには機能が足りないように思いました。
ただし造形機能が豊富なのでモデリングに集中したい人に検討をお勧めします。


© 株式会社インターネット


関連ブログ

MakeHumanでCLIP STUDIO用3Dキャラクターを作る方法
[Blender] Pythonで複数の設定を一瞬で編集する方法
[Blender] ボーンを曲げてもメッシュが曲がらない原因と修正方法
BlenderのモデルデータをMMDに変換する方法
Blenderで作ったアニメーションがUnity3Dで違う動きをする原因と直し方

以上、参考になれば幸いです。

MakeHumanでCLIP STUDIO用3Dキャラクターを作る方法

How to create 3D models for CLIP STUDIO with MakeHuman

MakeHumanは人型の3次元CGモデルを作成できるオープンソース・ソフトウェアです。
MakeHumanで作成したモデルは著作権が放棄されたCC0ライセンスのコンテンツとして利用できます。
MakeHumanで作ったモデルはCLIP STUDIOの3Dキャラクターに登録できるのでその方法をまとめてみました。
今回は表情や髪型が固定のキャラクターを作ります。
blog.fujiu.jp MakeHumanでCLIP STUDIO用3Dキャラクターを作る方法


環境

  • Windows 10
  • MakeHuman 1.1.0
  • CLIP STUDIO MODELER 1.6.0


MakeHumanでモデルを作る

MakeHumanを公式サイトからダウンロードして解凍し、makehuman.exeを実行します。
MakeHuman | Open source tool for making 3d characters: http://www.makehuman.org/download.php

起動後はモデルが全裸なので画面上部のメニューの
Geometries - Clothes
で服を設定しました。

体格・肌の色・髪型などのパラメーターを設定します。
各パラメーターは自由に設定していいわけですが、ボーンとポーズは次の設定にするとCLIP STUDIOで編集しやすくなります。
Pose/Animate - Skelton で Game engine を設定する。

Pose/Animate - Pose で Tpose を設定する。


MakeHumanのモデルをFBXにエクスポートする

モデルが完成したら
File - Export
で Filmbox (fbx) を選択して名前をつけてfbxファイルにエクスポートします。

textureというサブフォルダーに保存されるテクスチャ画像ファイルはfbxファイルと同じ場所に移動します。


CLIP STUDIO MODELERにインポートして登録する

CLIP STUDIO MODELER は有償製品ですがこのブログを書いている時点では体験版で人型モデルの登録ができます
公式サイトからダウンロードしてインストールし起動します。
3Dデータセットアップツール CLIP STUDIO MODELER: https://www.clip-studio.com/clip_site/download/clipstudiomodeler/clipstudiomodeler_top

起動したらキャラクター構成ウィンドウのボディの「ファイルから追加」でfbxファイルを追加します。

画面右下の骨のボタンをクリックして標準ボーンのマッピングを行います。

腕の角度はそのまま次へ

MODELERのバグなのか、たまにボーンが表示されないことがあります。
ボーンを頭・右腕・左腕・右脚・左脚の順にクリックして次へ。
だいたいの場所をクリックすれば認識します。

5種類のポーズアイコンをクリックして、全てガイドモデルと同じポーズになれば完了をクリックします。

これで最低限の設定ができたのでメニューの
ファイル - 新規素材として登録
でCLIP STUDIOの素材として使えるようになります。

今回は表情が固定なのでモブキャラやデッサン人形として使うことになると思いますが、無料で増やせるのはありがたいですね。


関連ブログ

CLIP STUDIO PAINT を使ってみました
CLIP STUDIO版 クエリちゃん 3Dモデルのファイルを公開しました

以上、参考になれば幸いです。

2016年9月3日土曜日

Live2D を Unity3D で動作させる方法

How to import Live2D models and animations into Unity3D

Live2Dで作成したモデルやアニメーションはゲームエンジンのUnity3Dで動作させることができます。
前回作成した東北ずん子のLive2Dアニメーション で実際に試してみたのでその手順をまとめました。
blog.fujiu.jp Live2DをUnity3Dで動作させる方法


環境

  • Windows 10
  • Live2D Cubism 2.1.12
  • Unity 5.3.5
  • Visual Studio 2015 Community
Live2DとUnity3Dは無料で使える範囲で試しました。


Live2D Cubism SDK をダウンロードしUnity3Dプロジェクトにインポートする

公式サイトからUnity用Live2D Cubism SDKをダウンロードしインストールします。
このブログを書いている時点では2.1が最新バージョンでした。
http://sites.cybernoids.jp/cubism-sdk2/

自作モデルを動作させるにはこのSDK内のサンプルのスクリプトを流用する方法が簡単でした。
今回は自作のモデルとモーションを動作させます。

ダウンロードしたら展開し、sampleフォルダーのMotionフォルダーを丸ごとUnity3Dプロジェクトにインポートします。
このフォルダーには必要なDLLやシェーダーが含まれているのでサブフォルダーごとインポートします。
blog.fujiu.jp Live2DをUnity3Dで動作させる方法


モデルとモーションを配置するサブフォルダーを作成する

Unity3DのプロジェクトフォルダーにLive2D用モデルを配置するサブフォルダーを作ります。
例として Live2D_Modelsフォルダーを作成


Cubism Modeler でモデルデータを書き出し拡張子を bytes に変更する

Cubism ModelerでUnityアプリ化したいモデルを開き、メニューの
ファイル - mocファイル書き出し
を実行し、Unity3Dプロジェクトの Live2D_Models フォルダーに書き出します。

書き出し後、フォルダーをエクスプローラーで開き(右クリック Show in Explorer)、mocファイルに.bytesという拡張子を追加します


Cubism Animation でモーションデータを書き出し拡張子を bytes に変更する

Cubism Animationでモデルに適用したいモーションのプロジェクトを開き、
ファイル - モーションデータを出力
を実行し、Unity3Dプロジェクトの Live2D_Models フォルダーに書き出します。

mtnファイルに.bytesという拡張子を追加します


Spriteにスクリプト・モデル・モーションを適用する

Hierarchyウィンドウに新しいSpriteを追加します。

Hierarchyに追加したSpriteにインポートしたサンプルのフォルダーの
MOtion - Assete Scripts
にある SimpleModel をドラッグ&ドロップします。

SpriteのInspectorウィンドウを操作します。
描画処理はSDKでオーバーライドしているようなのでSprite RendererをオフにするかRemove componentします。
Simple Model(Script)にMoc Filesに自作のモデルデータのファイル、Texture FilesのSizeを1にして、Element 0にLive2D_Modelsフォルダーのサブフォルダーにあるtexutureファイル、Motion Fileに自作のモーションを指定します。

これで実行すると自作のモデルが動作しました。
Spriteのサイズやカメラの視野は要調整です。


トラブルシューティング

一部のテクスチャが表示されない場合

Cubism Editorでコピー反転したテクスチャは手を加えないとUnityで表示されないようです。
Motion - Assets - Live2D Resources - Shader - merged
のフォルダーにある Live2D.shader というファイルを開いて

Cull[_Cull]

Cull Off

に置き換えたら、正常に表示されるようになりました。


Androidで動作確認

Android用にビルドし、Xamarin Android Playerで動作させることができました。



関連ブログ

Live2D を使ってみました 2016
[Unity3D] Unity5のプロジェクトをAndroid Studioにインポートする方法
[Unity3D] 透視投影と平行投影を合成するには
VOCALOID SDK for Unity でユニティちゃんをリアルタイムに歌わせる方法
VOCALOID SDK for Unityでユニティちゃんにvsqxを歌わせる方法
[Android] Xamarin でアプリを作ってみました

以上、参考になれば幸いです。