※以下の設定は旧バージョンで必要となる設定です。1.0.00以降のSDKでは設定する必要はありません。
Unityファイル構成のセットアップ
◆ダイナミック・リンク・ライブラリの設定
Unityプロジェクトの以下のパスに各プラットフォーム用のライブラリを配置する必要があります。
/Assets/Plugins/live2dUnity.bundle /Assets/Plugins/live2dUnity.dll /Assets/Plugins/Android/liblive2dUnity.so /Assets/Plugins/iOS/liblive2dUnity.a
※旧バージョンではiOSのXcodeプロジェクトにていくつかの設定が必要でしたが、最新版では必要有りません。
◆スクリプト Live2D関連の各種スクリプト(.cs)はScripts以下の任意のフォルダに配置できます。
◆モデルデータ
Live2D用のモデルデータは通常、xxxxx.moc というファイルになりますが、Unityでは .bytes とつけないとロードできないため、xxxx.moc.bytes とファイル名を変更します。同様にモーションデータ(.mtn)も xxxx.mtn.bytes と変更します。 Unityのエディタ上では、.bytesが表示がされないため、 xxxx.moc と見えます。
Live2D関連のモデルデータは、任意のフォルダに入れる事ができますが、 スクリプトから相対パスで直接データを指定してロードしたい場合は、Resourcesの中に入れて下さい。 相対パスはResourcesフォルダからの相対パスになります。 ResourcesフォルダはAssets中に複数存在しても問題なく、各Resourcesフォルダからの相対パスとして検索されます。
Unityエディタ上の設定
◆Render Target Textureの設定
Live2D Cubism for Unityでは、Live2Dのモデルを直接描画するのではなく、テクスチャ(Render Target Texture)に対してモデルを描画した上で、そのテクスチャをシーン上のGameObjectに貼る方式を採用しています。
Render Target Textureは仮のテクスチャを用意し以下のように設定してください。最後に必ずApplyボタンを押して確定してください。
- Texture Type を[Advanced]に設定
- Read/Write Enabled にチェック
- Generate Mip Mapsのチェックを外す
- Max Size を表示したい解像度に設定(高解像度 1024、低解像度/軽量 512など)
- Format を [ARGB 32b]it に設定
※その他はデフォルト設定
◆Plane(Game Object)の配置
Live2Dのモデルは毎フレームRender Target Texture上に描画され、Render Target TextureをGameObjectに貼ることで3D空間内に描画されます。
一番単純な Plane オブジェクトを生成して、表面に Render Target Texture を貼るのが一番簡単です。 あるキャラクター(キャラA)を描画するためのセットアップ方法は以下のとおりです。
1.Planeオブジェクト(Plane1)を生成 2.Plane1に、Render Target Textureをドラッグ&ドロップしてテクスチャを割り当て 3.Plane1のInspectorにて、テクスチャのShaderを「Unlit/Transparent」に設定。原色を保ち(影なし)、透明部分が抜ける 4.キャラA用に、LAppModelWrapperを継承したスクリプト LAppModelWrapper_XXX(名前は自由)を用意
5.LAppModelWrapper_XXXをPlane1へドラッグ&ドロップする
<ドラッグ&ドロップでモデル・テクスチャを設定する場合>
6.PlaneAのInspectorにて、モデルデータの xxxx.moc.bytes (.byteはエディタ上で見えない)を、Model Moc Fileにドラッグ&ドロップします。(Model Moc Fileは、5のステップに成功した場合に出るようになります)
7.xxxx.moc に対応する各テクスチャを、Texturesの配列に設定します。予めSizeの項目を枚数に設定すると、テクスチャを設定しやすくなります。
<スクリプト中に相対パスでデル・テクスチャを設定する場合> 6.LAppModelWrapper_XXX の InitModel( ) にて無効になっている modelMocFile = ... などの記述を有効にして、相対パスを設定してロードする。
|
|