Unityにアニメーションを表示する

SpriteStudio Ver.7 で作成したデータをSS6Player For Unity で Unity にインポートする方法を解説します。

本ページは以下のバージョンを使用して解説しています。

  • OPTPiX SpriteStudio:Ver.7.0.4
  • SS6Player For Unity:Ver.2.0.6
  • Unity:2019.4.40f1

旧バージョン SS6Player for Unity v1系の組み込み方法については、「Unityにアニメーションを表示する(v1.0.28)」をご確認ください。

目次

事前準備

アニメーションを作成する前に「互換性」を確認する

SpriteStudioでアニメーションの作成を始める前に、使用するアトリビュートをUnityでも再現することができるもののみに制限する必要があります。

「プロジェクト設定」の「互換性」で「SS6PlayerForUnity v2.0x」を選択します。
これにより、Unityで再現できるアトリビュートのみに制限されますので、表示ができない等の事故を防ぐことができます。

必ず「互換性」を設定してから、アニメーションを作成してください。

Unityをインストールし、新たなプロジェクトを作成する

まだUnityをパソコンにインストールしていない場合、Unityのサイトからダウンロードし、インストールを行ってください。

Unityをインストールしたら、プロジェクトを作成してください。
プロジェクトから「SS6Player for Unity」をインポートするためです。

SS6Player for Unityを導入する

SpriteStudioでアニメーションを作成し、Unityのインストールも完了したら、Unityに「SS6Player For Unity」を導入します。

AssetStoreからインポートを行う

Unityから直接SS6Player For Unityをインポートすることができます。

1.Unityを起動し、「Window」の「AssetStore」を選択します。

2.AssetStore上部の検索バーに「SpriteStudio」と入力して検索します。

すると SS6Player For Unity が結果に表示されるので、選択してください。

3.SS6Player For Unityのダウンロードページが表示されますので、「Download」をクリックしてください。
4.ダウンロードされると「Import」に変わりますのでクリックしてください。

5.インポートするパッケージを選択するダイアログが表示されます。
ここでは特に変更せずに「Import」を選択します。

不要なパッケージやデータがある場合はここでチェックボックスを外してください。

6.プロジェクトウィンドウのAssetに「SpriteStudio6」が追加されれば、SS6Player For Unityのインポートは完了です。

パッケージをダウンロードしてから、Unityにインポートする

SS6Player For UnityをGitHubでダウンロードしてから、Unityにインポートすることも可能です。

1.SS6Player For UnityをGitHubからダウンロードします。
サイドメニューの「ダウンロード」→「安定版」からダウンロードしてください。

SS6Player For Unity
2.Unityの「Asset」メニューから「Import Package」→「Custom Package」を選択します。
3.エクスプローラが開きますので、先ほどダウンロードした
「SS6PlayerForUnity_v0.0.0.Unitypackage」を選択し、開きます。
4.インポートするパッケージを選択するダイアログが表示されます。
ここでは特に変更せずに「Import」を選択します。
不要なパッケージやデータがある場合はここでチェックボックスを外してください。
5.プロジェクトウィンドウのAssetに「SpriteStudio6」が追加されれば、SS6Player For Unityのインポートは完了です。

sspjをUnityに取り込む

SS6Player for Unityのインポートが完了したら、SpriteStudio Ver.6で作成したsspj(プロジェクトファイル)をUnityに取り込みます。

sspjをUnityにインポートする

プロジェクトウィンドウのAssets以下に、新たにフォルダを作成し、そこにsspjをインポートします。

1.「Assets」フォルダを選択し、右クリックでコンテキストメニューを開きます。
「Create」→「Folder」を選択し、フォルダを作成します。

2.今回は「animation」という名前のフォルダを作成しました。

フォルダを選択します。
画像のようにフォルダが表示されている箇所で選択するようにしてください。

フォルダが選択されると、プロジェクトウィンドウの下部分にフォルダ名が表示されます。
また、インスペクターウィンドウにフォルダが表示されます。

3.作成したフォルダを選択した状態で
「Tools」→「SpriteStudio6」→「Importer」
を選択します。

4.「SpriteStudio6 Player for Unity Import-Settings」
というダイアログが表示されます。
「Import」をクリックしてsspjファイルを指定するとインポートを開始します。

▶をクリックするとインポート時のオプションが開閉します。
「Setting Save/Load/Reset」を開いたメニューの「Reset(Restore initial setting)をクリックするとオプションを初期設定に戻します。

5.インポートが無事完了すると、選択したフォルダの中にデータが追加されます。
この中にsspjを基に作成されたプレハブが格納されます。

インポート時にエラーが発生してしまう

インポート時に下図のようなエラー(Select Asset-Folder you want to store in before import, in the “Project” window.)が発生してしまう場合、「フォルダが選択されていない」可能性があります。

インポート手順でも記載しましたが、プロジェクトウィンドウのツリーで選択しても、フォルダは選択されたことになりません。

プロジェクトウィンドウの右ペイン(フォルダアイコンが並んでいるところ)で、フォルダを選択することで、「フォルダが選択された」状態になります。
インポートする際には、必ずプロジェクトウィンドウの下部バーの表示か、インスペクターウィンドウの表示を確認し、インポートしたいフォルダが表示されているかを確認してください。

アニメーションをシーンに配置する

sspjをインポートしたら、シーンに配置します。

SpriteStudio6アセットの2Dカメラを使用して配置

1.SpriteStudio6 フォルダ内、「Prefab」>「Camera」のフォルダにあるカメラプレハブを使用します。
「Camera2D Pixel (720p)」を選択します。

Hierarchy ウィンドウにドラッグすることでカメラの準備は完了です。

2.先ほどインポートした sspj のフォルダの中にある、ssae名+Control 名のプレハブを、Hierarchy ウィンドウにドラッグします。

これでアニメーションのシーンへの配置は完了です。

配置したアニメが表示されない場合、マウスホイールでシーンウィンドウの拡縮率を変更すると、配置されたアニメーションが見つかることがあります。
(表示の拡大率が大きくなっており、見当たらない場合があります)

また、カメラを選択すると表示されるカメラプレビューを確認して、位置を調整してください。

シーンウィンドウの上部にある「▶」をクリックすると、アニメーションの再生を開始します。
再生時の表示はカメラプレビューの表示に準じます。

MainCameraを使用して配置

新しいプロジェクトを作ると作成される MainCamera を使用します。

1. インポートした sspj のフォルダの中にある、ssae名+Control 名のプレハブを Hierarchy ウィンドウにドラッグします。

2. 配置したアニメーションが表示されるようにカメラ調整を行います。

Hierarchy ウィンドウの「Main Camera」を選択して、Inspector ウィンドウの設定を調整します。

今回は「Field of View」で調整を行いました。

3. Scene ウィンドウの上部にある「▶」をクリックすると、アニメーションの再生を開始します。

再生時の表示はカメラプレビューの表示に準じます。

アニメーションデータを切り替える

再生されるアニメーションデータの切り替えは Inspector ウィンドウから行うことができます。

1. Hierarchy ウィンドウでssaeを選択します。
2. Inspector ウィンドウの「Prefab Animation」をダブルクリックします。

3. ssaeのプレハブの設定が開きます。

「Intial/Preview Play Setting」を展開します。

4. アニメーションデータを選択します。

「Animation Name」のプルダウンから、再生したいアニメーションデータを選択してください。

5. 再生するアニメーションがデータが変更されました。

パーツカラーを使用しているパーツが正常に表示されない場合の対処法

SS6P for Unity で再生を行うと、描画モードとパーツカラーの組み合わせによって、意図しない表示になってしまうことがあります。

これは、UnityのHDRの処理により発生していると考えられます。
HDRはUnity 5.6以降、デフォルトでONになっている機能です。

こちらの現象を回避するためには、以下いずれかの方法をお試しください。

HDRをOFFにする

  1. Unity の Hierarchy ウィンドウにある Camera を選択します。
  2. Inspector ウィンドウの Cameraを開きます。
  3. HDR を OFF にしてください。

SpriteStudioのデータを修正する

Unity上で意図しない表示になってしまうケースは、描画モードで「ミックス」以外を選択した上で、パーツカラーのミックス方法で「ミックス」を選択した際に確認されています。

以下、いずれかの方法をご検討・お試しください。

  • 描画モードを「ミックス」に変更
  • パーツカラーのミックス方法を変更

関連ページ

SS6Player For Unity
 最新版、質問・要望は GitHubへ