0 支持
280 閲覧
(240 ポイント) Q&A
編集

お世話になっております。

SS6PlayerForUnityを使用してUnity上でアニメーションを再生する際、ユーザーデータを一つのアニメーションで二つ以上呼び出すことは可能でしょうか?

現在ユーザーデータを使用したコールバックを実装しているのですが、ユーザーデータを複数個設定した際、最後に設定したユーザーデータしかコールバックされません。

(例えば1フレーム目にFunctionEventIntが呼ばれるように設定して、5フレーム目にFunctionEventTextが呼ばれるように設定すると後者しか呼ばれません。いくつかの個数で設定したのですが必ず一番最後のもののみコールされます。)

リファレンスを読み逃していたら申し訳ないのですが、何か呼び出しのための設定があるのでしょうか?

下URLで質問した内容を実践している途中に出てきた内容です。

https://spritestudio.jp/community/index.php?qa=1893&qa_1=%E3%80%90unity%E3%80%91ss6playerforunity%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%9F%E3%82%A2%E3%83%8B%E3%83%A1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%AE%E5%86%8D%E7%94%9F%E4%B8%AD%E3%81%AE%E3%83%A1%E3%82%BD%E3%83%83%E3%83%89%E5%91%BC%E3%81%B3%E5%87%BA%E3%81%97

お手数おかけしますがご回答いただけると幸いです。

Unityバージョン:2021.3.15f1
SpriteStudioバージョン:6.6.4.2007

SpriteStudio 6 Player for Unityバージョン:Version 2.1.8 - October 07, 2022

ImportMode:Comvert To Unity-Native

追記3/18:

本日確認したところSpriteStudioで設定したユーザーデータの設定位置とUnityに出力されているアニメーションのAnimationEventの設定箇所が違うことがわかりました。

具体的にいうとSpriteStudio場だと1,5,9,16フレーム目に設定したユーザーデータがUnityのAnimation上では0.16から0.17の間に4つ並んでいる状態でした。

(スクリーンショットのアップロードの仕方がわからずわかりにくくなってしまい申し訳ありません。)

引き続き調査を行っています。

このページをシェアする

回答 1

0 支持
(5.0k ポイント)
編集

お世話になっております。SS6Player for Unity担当です。

ご質問ありがとうございます。

本症状は初見だったのですが、当方でUnityとSS6PUの組み合わせを色々変更して検証してみましたところ、

(お手元の)Unity 20121.3.15LTSとSS6PU 2.1.8の組み合わせで

(おそらく具体的に起こっている現象そのものは違うはずですが)ユーザーデータのコールバック(イベント関連)が変になる症状を確認できました。

確認できた症状としては

  • イベント関数が設置されている位置がデータと異なる or 設置されない ユーザーデータがある
  • 同じパーツに設置されているユーザーデータで、(共用しているイベント関数に対して)最後のもののみがコールバックされる

となります。


こちらについては、少なくともUnity2021.3LTS環境(Windows x64用エディタ)において、

SS6PU Ver.2.1.21もしくはVer.2.2.0

では起こらないことが(当方の手元で)確認できております。

そのため、恐らくSS6PUをVer.2.1.21もしくはVer.2.2.0に更新していただくのが良いかと思われます。

Ver.2.1.21とVer.2.2.0の差異ですが……

https://github.com/SpriteStudio/SS6PlayerForUnity/wiki#%E9%87%8D%E8%A6%81ver2121%E3%81%A8ver220%E3%81%AE%E9%81%95%E3%81%84%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6%E3%81%AE%E6%B3%A8%E6%84%8F%E7%82%B9

(SS6Player for UnityのGitHubのWikiヘッドページの該当記述へのリンクです)

の内容となっております。

※基本的に、データ形式以外は実仕様的な違いはないのですが……今後で出てくる予定でのメジャーバージョンアップ(例えばSpriteStudio7対応のプレーヤーなど)はVer.2.2.0を基礎としたものになる予定です。

GitHubからのダウンロードは、原則として、Gitクライアントソフトウェアの使用を推奨しますが、御事情など含みでGitクライアントソフトウェアを使用されない場合、

1. ブラウザで下記ページを開いていただき

https://github.com/SpriteStudio/SS6PlayerForUnity

2. 「Code」タブの下あたりにある「ブランチ」の選択プルダウン

(初期状態は「master」になっている可能性が高いです)から

 Ver.2.1.21の場合は「develop」

 Ver.2.2.0の場合は「develop_2_2_0」

 を選択

3. ブランチの右側の方にある「<>Code」の緑色のボタンのプルダウンから、「Download ZIP」を選択

すると、ZIPファイルがダウンロードできるはずですので、そちらを展開後に、お手元のプロジェクトに上書きコピーなどを行っていただけますと、適用できるかと思います。


現在、UnityアセットストアへのVer.2.1.21ないしはVer.2.2.0の反映が遅れているため、お手数をおかけして申し訳ございませんが、上記の通りSS6PUのバージョンアップをご検討いただけますようお願いいたします。

何卒今後ともよろしくお願いいたします。

(240 ポイント)
ご回答ありがとうございます

承知いたしました。

SS6PUのバージョンを上げて対応いたします。

検証していただきありがとうございました!
...