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

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

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

  • OPTPiX SpriteStudio:Version 6.0.0
  • SS6Player For Unity:Ver.0.9.0
  • Unity:2017.2.0f3

SS6Player For Unityの対応バージョンは以下の通りです。

  • Unity 2017.1.0 以降
  • SpriteStudio Ver.6.0.0 以降

SS6Player For UnityはSpriteStudioVer.6専用です。
SpriteStudio 5のデータを使用する場合はSS5Player For Unityをご利用ください。

目次

事前準備

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

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

「プロジェクトの設定」の「互換性」で「デフォルト」を選択します。
これにより、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のダウンロードページが表示されますので、「ダウンロード」をクリックしてください。

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

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

5.プロジェクトウィンドウの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に内包されている「Camera」のフォルダにあるカメラプレハブを使用します。
「Camera2D Pixel (720p)」を選択します。

ヒエラルキーウィンドウにドラッグします。
これでカメラの準備は完了です。

2.先ほどインポートしたsspjのフォルダの中にある、ssaeのプレハブを、カメラの「Camera2D Pixel (720p)」にドラッグします。

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

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

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

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

MainCameraを使用して配置

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

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

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

カメラを選択した状態でインスペクターウィンドウの設定を調整します。

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

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

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

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

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

1.ヒエラルキーウィンドウでssaeを選択します。
2.インスペクターウィンドウの「Prefab Animation」をダブルクリックします。

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

「Intial/Preview Play Setting」を展開し、「Animation Name」のプルダウンから、設定したいアニメーションデータを選択してください。

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

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

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

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

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

HDRをOFFにする

  1. Unity のヒエラルキーウィンドウにあるCameraを選択します。
  2. インスペクターウィンドウのCameraを開きます。
  3. Allow HDR のチェックを外してください

SpriteStudioのデータを修正する

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

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

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

関連ページ

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