Built-in Render PipelineからURPへの移行について
このページにはベータ版に関する記述が含まれます。
Cubism 5 SDK for Unity R5 beta3より、対応するレンダーパイプラインがBuilt-in Render Pipelineから Universal Render Pipeline(以下、URP)へ変更されます。
これに伴い、Built-in Render Pipelineを利用していたプロジェクトはURPへの移行を行う必要があります。
Built-in Render PipelineについてはUnity公式マニュアルの Manual: Using the Built-In Render Pipeline を、URPについては Manual: Using the Universal Render Pipeline をご確認ください。
また、Built-in Render PipelineからURPへの移行手順についてはUnity公式マニュアルの Manual: Upgrading from the Built-In Render Pipeline to URP も合わせてご確認ください。
移行に伴う制限事項や注意事項
Built-in Render Pipeline 対応について
これまで利用していたBuilt-in Render PipelineはURP向けのパッケージがBuilt-in Render Pipelineと互換性がないため利用できません。
代わりに、Cubism 5 SDK for Unity R4_1及びそこから派生したCubism SDK for UnityをBuilt-in Render Pipeline対応版として保守いたします。
なお、Built-in Render Pipeline 対応版ではCubism 5.3以降の機能への対応予定はありません。
HDRP(High Definition Render Pipeline)への対応について
HDRPを利用するプロジェクトではURP向けのパッケージがHDRPと互換性が無いため、利用することは出来ません。
HDR について
HDR Precisionを32bitsに設定した場合、背景が黒一色になり、正常に合成出来ないことがあります。
HDR Precisionを64bitに設定することで正常に描画が出来るようになります。
設定についてはUnity公式マニュアルの Manual: Universal Render Pipeline asset reference for URP 及び Manual: Display advanced properties in a URP Asset をご確認ください。
Cubism Editorと同等の表現を行うにはHDRをオフ、かつColor SpaceをGammaに設定する必要があります。
マスクについて
URP対応によりマスクの仕組みが変更になります。
詳しくは「URPにおけるマスクについて」をご確認ください。
ビルドについて
ブレンドモードを利用するマテリアルをShader Variantsで事前に生成するため、使用する環境によってはビルド時間が以前と比べて大幅に増大する可能性があります。
明らかに使用しないマテリアルやブレンドモードが存在する場合、ビルド時に不要なマテリアルをStripするように設定することでビルド時間を抑えることが出来ます。
R4_1 からの移行方法
Built-in Render Pipeline を利用し、Cubism 5 SDK for Unity R4_1をインポートしているプロジェクトをもとに説明します。
パッケージインポートの手順
Universal Render Pipeline アセットをインストールします。

その後、URPに対応したCubism SDK for Unityをインポートし、以下のいずれかの手順を行ってください。
Assets/Live2D/Cubism/Rendering/Masking フォルダを削除する場合
Assets/Live2D/Cubism/Rendering/Masking フォルダを削除してください。
その後、下記の手順が必要です。
- CubsimMaskTexture アセットの削除
- Assets/Live2D/Cubism/Samples/Masking フォルダを削除
- モデルプレハブにアタッチされているCubismMaskControllerコンポーネントの削除
- Assets/Live2D/Cubism/Editor/Inspectors/CubismMaskTextureInspector.cs の削除
- Assets/Live2D/Cubism/Editor/Inspectors/CubismMaskControllerInspector.cs の削除
Assets/Live2D/Cubism/Rendering/Masking フォルダを削除しない場合
以下の手順が必要です。
- モデルプレハブにアタッチされているCubismMaskControllerコンポーネントの削除
- Assets/Live2D/Cubism/Rendering/Masking/CubismMaskMaskedJunktion.cs でCubismRenderer.OnMaskPropertiesDidChange() が見つからないというエラーの出る箇所をコメントアウト、あるいは削除

その後、Libraryフォルダを削除し、Unityを再起動してください。
Libraryフォルダを削除しない場合は、モデルを再インポートしてください。
パッケージインポート後の設定
Projectウィンドウのコンテキストメニュー内の Create/Rendering から URP Asset (with Universal Renderer) を選択して、Universal Renderer Pipelineアセットを作成します。

Project Settingsを開き、作成したUniversal Renderer Pipelineアセットを Project Settings/Graphics/Default Render Pipeline に設定します。

これでプロジェクトのレンダーパイプラインが URP に設定されます。
作成したUniversal Renderer PipelineアセットのRendering/Renderer Listに CubismURPRenderer.asset を設定します。

Default に設定することでシーンビューでもCubismモデルが表示されるようになります。
シーン上の、Cubismモデルを表示させたいカメラのRendererが CubismURPRenderer になっていることを確認します。

任意のモデルをシーン上に配置したらモデルが描画されます。
