SsbpLibを使ってSpriteStudioで作成したアニメーションを再生してみた(テスト動画あり)
まずは、導入実験のテスト動画の紹介から
動画を再生するには、videoタグをサポートしたブラウザが必要です。
見たら分かるよね! スゴイでしょ!
補足しておくと記事タイトルは
SpriteStudioで作成したアニメーション
となっていますが、ssbplibのサンプルアニメーションを使ってるので
かげさんがSpriteStudioで作成したアニメーションではないです。
導入にあたり、参考にした記事はコチラです。
「DXライブラリでADX2LE,Live2D Cubism,OPTPiX SpriteStudioを併用してみる」
先に上の記事を読んでいたので
文字コードが問題になることが分かっていました。
ちなみに上の記事だと3つ全部を一緒に導入してますが
今回はSpriteStudioに絞ってやりました。
紹介されているソースには謎の変数もあるし
最初のSDKのダウンロードとかssbplib関連が、
少しわかりにくく感じたので
かげさんなりにまとめてみました。
実は、SpriteStudio for Indieのサンプルデータには
上の記事で使っている拡張子ssbpがありません。
導入できるのは分かっても、肝心の再生に使うファイルが無いのでは困るのです。
ssbpについては、OPTPiXのブログに
「C++で使用できる汎用アニメーションライブラリssbpLibのご紹介」
という記事がありました。
SpriteStudioの販売元のブログなので信頼性がある情報です。
要約すると
SpriteStudio5-SDKというのがGitHubに公開されている。
が、アニメーション再生目的で考えるとアプリへの組み込みは手軽ではない。
そこでアニメーション再生情報に特化した汎用フォーマットである
ssbpフォーマットを開発された。
再生のための情報に最適化することで再生プログラムをシンプル化。
コンパクトであり手軽に扱えるアニメーション再生ライブラリ、それがssbpLib。
ということらしいです。
この記事に「ssbpファイルの作成」の手順もあり、ひとまず安心しました。
ちなみにSpriteStudio単品の導入であれば、公式の情報に従うのが良いです。
ただし、最初に紹介した記事に書かれている
文字コードの問題については書かれていなかったので
最初の記事も役に立ちました。
最初に紹介した記事で、ssbp以外の点のもう1つのネックは
ssbpLibのサンプルソースから不要な部分を抜いてあるところです。
不要な部分を抜いてくれてシンプルになっているんですが
一部抜き忘れがあって、意味がわからない変数が残っているんですよ・・・
ssbplibのダウンロードは、コチラから行えます。
https://github.com/SpriteStudio/ssbpLib/releases
画面中央あたりにzipのアイコンが縦に並んでいるので、
一番上をクリックしてファイルをダウンロードする。
ダウンロードしたzipファイルを展開する。
samples\DXLibraryフォルダにあるREADME.mdをテキストファイルで開き内容に従う。
■ビルドエラーが発生する人、「プロジェクトに追加」の部分が分からない人向けの情報
------ここから------
<作業前提条件>
DXライブラリの使い方解説
http://homepage2.nifty.com/natupaji/DxLib/dxuse.html
にある設定が終わっていること
samples\DXLibrary\basicフォルダには以下の3つがある
1.SSPlayerフォルダ
2.Resourcesフォルダ
3.sssample.cpp
1と3は、Visual StudioのDXライブラリのテストソースのあるフォルダにそのままコピーする
2は、Resourcesフォルダの中身をDXライブラリで作ったexeが実行できるフォルダにコピーする
※Resourcesフォルダも含めてコピーしてしまうと、実行時にエラーが出ます。
sssample.cppとSSPlayerフォルダにあるソースファイルは、文字コードがUTF-8になっています。
ビルドすると以下のようなビルドエラーが発生するかもしれません。
warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
この問題が起きた時の対処方法については、
最初に紹介した記事によるとUnicodeにするとなっていました。
文字コード(エンコード)変更ができるテキストエディタで対応します。
できれば、合わせて改行コードもWindows用にCRLFにした方が良いでしょう。
ちなみに、かげさんは、コードページが932で表示できないとなっていたので
UNICODEではなく、シフトJIS(SJIS)で保存しました。
(コードページが932は、シフトJISなのです)
これでもビルドは通ります。
(SSPlayerフォルダのソースは警告メッセージがいくつか出ますが、実行はできます)
<Visual Studioの設定>
メニュー「プロジェクト」-「既存項目の追加」を選択する。
「既存項目の追加」画面で
sssample.cppをクリック後、「追加」ボタンを押下する。
同様の手順でsamples\DXLibrary\basic\SSPlayerフォルダにあるファイル全部と
同様の手順でsamples\DXLibrary\basic\SSPlayer\commonフォルダにあるファイル全部を追加します。
なお、上の2つのフォルダでのファイル指定は、
フォルダの一番上のファイルをクリック後、
Shiftキーを押しながら一番下をクリックすると
複数ファイルまとめて追加できて便利です。
------ここまで------
これでうまく動けば、第1段階は突破です。
かげさんの場合、初音ミク冒険記に
こういったテストをしやすくする仕組みを作ってたので
それを使って第1段階の確認をしました。
そうすると実験動画のようなことが
第1段階確認後、すぐに確認できるので
この仕組は作って正解だったと思います。
ここからは、初音ミク冒険記でもっと使いやすくするための
関数作りですね。
公式の情報に、以下の説明もあったので役立ちそうです。
・ResourceManagerクラス
・Playerクラス
ということでEffekseerに続くミドルウェア導入の第2弾SpriteStudioの情報でした。
次の連休には、ミドルウェア導入の第3弾として
ADX2LEのことをまとめていく予定です。
| 【固定リンク】 | 【コメント (0)】 | 【トラックバック (0)】
このエントリーへのリンク
トラックバック
この記事へのトラックバックの一覧です: SsbpLibを使ってSpriteStudioで作成したアニメーションを再生してみた(テスト動画あり):
コメント
このブログの新着コメントをRSSリーダに登録する為のxml