スライド
LA-MULANA2のひみつ
LA_MULANA2のひみつ
本セッションはエンジニア向け。 ミドルウェア「 SpriteStudio」を使ったゲーム開発。 GTMF2016がこの夏、大阪・東京で開催される。 無料なのでぜひ見に来てね。
LA_MULANA2とは
開発はNIGORO(アスタリズム)ゲーム事業部。 Unity5とSpriteStudio5で作成中 前作LA_MULANは日本1 海外5~7の割合で売れている。 本作品は、kickstarter 26万$を調達した。 LA_MULANはどのようなゲームかというと「 ガリウスの迷宮」を魔改造したゲーム。 基本DLだがパッケージ版がほしい方はPLAYISMで受付中。おそらく2度とパッケージは作られないと思う。 KickStarter LA-MULANA 2 プロジェクト| PCゲーム、インディーゲームならPLAYISM
Unity
2DゲームUnityなの? ほとんど3Dで作っている。完全に2Dを使っている。 アニメーションさせるキャラクターを SpriteStudioで作っている。
Unity 5.3.4f1 spriteStudio 1.2.29を使用。 パーティクルはshurikenで作成。 spriteStudioの機能である2dパーティクルは使っていない。
SpriteStudio
なぜSpriteStudioを使うのか。 自前の2Dモーションツールがある。 ブループリントが使えるのでアンリアルで行こうかと思った。 ブループリント・ビジュアル・スクリプティング | Unreal Engine SpriteStudioのUIと機能とUIのバランスが良かった。
データは普通にインポート、バージョンチェックを外しただけで無改造。 「Crate Control-Prefab」はいらない。 フォルダは作成している。 上書き確認はどっちでも。 Rigid-Bodyはアタッチしない。
各キャラにSpriteStudioから作成したプレハブをセットする。 シーンのロード時初期化、待機状態にしてそのシーンが終わるまで消しません。 ラッパーくらすSpriteStudioContainerを作成。
導入までは特に問題なかったのだが、使ってみると色々と問題が出てきた。
当たり判定
LA_MULANA2の地形は1メッシュでできているのでRigid-Bodyがアタッチされているとまずい。 また、RigidBodyはFixUpdateで動いているのでこれもまずい。
パーツにユーザーデータをもたせると、コールバックから設定内容を受け取ることがあできる。 スクリプトリファレンス: アニメーション全体制御 · SpriteStudio/SS5PlayerForUnity Wiki · GitHub 判定の位置、判定の大きさはScale取得。
優先度がおかしい
SpriteStudioはバラバラの動きが苦手。 描画時のメッシュの登録先を変更できるようにする。
キャラライトが効いていない
そもそもライトを計算していない。(2Dならできる) シェーダーを書き換えて対応。 ミックスのみ書き換える。 ライトのforwardのみになります。 ただ、普通の計算式ではおかしなことになるので、嘘の計算を入れて対応しています。
解決していない問題
データがレイヤー分けできない。 DrawManagerで描画しているので全てDrawManagerのレイヤーで処理されていまう。
まとめ
良い所
- 動作が軽い
- ツールのメンテナンス消えた
- 当たり判定のしごとがなくなった
悪い所
- 機能不足、拡張箇所が結構ある
- コールバックがパラメータがfloat型なのに、ツール上は整数
- アクションゲームには不向き、1フレーム遅れる
結論:悪くないけどアクションゲームには不向き
アクションゲームを作る場合は改造必須。 Sourceが配布されているのでなんとかなる。
改造Tips
- 管理用クラスを自作で作ったほうが良い
- UnityのSpriteStudio用のPrefabと自分のデータ構造を比較する
- アニメーションの更新、最終描画処理を把握する
大体はScript_SpriteStudio_PartsRootと/Library_SpriteStudio部分の2箇所を頑張れば何でもいける。
SpriteStudio5
現在ver1.3がAssetstoreに並んでいるが、 Githubでは1/3/9が存在する。 SpriteStudio 5 Player for Unity - Asset Store
Ver1.2系に比べパフx-マンスが向上。フレームレートが安定。 メモリの使用量が1/5に(Ver1.2系に比べ) SpriteStudio 5 Player for UnityのVer1.4系が近々リリース(5.7のリリースを待っていただいたほうが良い) これから組んでいくのであればV1.4を待っていただいたほうが良い。
最後に
SpriteStudioに関しては、結構前から知っているのですが、実際に使ったことはありません。 ですので、今回の話を聞いたので、どのようなツールなのかがよくわかりました。 2D専用のツールだと思っていたのですが、Unityの3D空間で使えるのですね。
NIGOROに関しては、東京ゲームショウなどで見たことがあるので知っていましたし、LA_MULANAに関しては音楽が良いことがとても印象に残っています。 Play映像を見る限り、グラフィックなど凄く綺麗にできて、なおかつ2Dのアクションゲーム風なのでとても気になりました。