OPTPiX SpriteStudio」カテゴリーアーカイブ

スプライトシート(SSCE)レンダリングの活用

皆さん、こんにちは。
OPTPiX SpriteStudio 開発マネージャの遠藤です。

今回の記事ではスプライトシート(SSCE)レンダリングの活用方法をご紹介します。

はじめに

SpriteStudio のスプライトシート(SSCE)レンダリング機能は、アニメーションの各フレームの画像を敷き詰めた、いわゆるスプライトシートを作成する機能です。

スプライトシートの例

上記のようなスプライトシートの画像ファイルと、画像のどの範囲に何番目のフレームの絵が配置されているか、といった情報が保存されたSSCEファイルとパターンを並べてコマアニメ化したSSAEファイルを作成します。

スプライトシート生成との違い

Ver.6 以前のSpriteStudio が搭載していた「スプライトシート生成」機能と異なる点は、出力できる情報ファイルの形式にあります。

Ver.6 のスプライトシート生成ウィンドウ

「スプライトシート生成」機能では Cocos2d-x v2 と Corona SDK のという2つゲームエンジン専用のファイルにのみ対応していました。

この2つのゲームエンジンは近年の SpriteStudio ではほとんど使われることがなく、プレイヤープログラムも既にメンテナンスを終了しています。

このため Ver.7 では上記のような特定のゲームエンジン専用のものではなく SpriteStudio のセルマップを作成し、既存の SpriteStudio および SpriteStudio Player で再利用できるようにしました。

一度、レンダリングしたものを再利用することで従来できなかったことが可能になります。

特定のゲームエンジン向けの情報ファイルを出力してほしい!という方はヘルプセンターよりお問い合わせください。

スプライトシート(SSCE) の用途

では、具体的にどういったことが可能になるのか、以下に列挙します。

  1. 新機能を使ったアニメーションを、新機能対応前のバージョンの SpriteStudio 及び Player で再現
  2. アニメーション全体にパーツカラー、シェーダー、半透明化(重なり部分が透けない)を適用
  3. Player プログラムの描画負荷を軽減

といった用途が考えられます。

それぞれ説明していきます。

1. 新機能を使ったアニメーションを「新機能対応以前の」バージョンの SpriteStudio 及び Player で再現

スプライトシート(SSCE) で出力されるアニメーションデータには、参照セル、X/Y座標、非表示キーしか含まれません。
このため、Ver.4~5 も含めたほとんど全てのバージョンの SpriteStudio および Player プログラムで読み込み、再生させることができます。
また例えば、シェーダーやマスクといった描画表現を拡張する機能に対応していないプレイヤーにおいても、それらの機能が適用された状態で再生させることができます。

2. アニメーション全体にパーツカラー、シェーダー、半透明化(重なり部分が透けない)を適用

パーツカラー、シェーダー、頂点変形などはパーツ単位でのみ指定が可能なものです。
不透明度は子孫パーツに継承することでまとめて半透明にすることが出来ますが、関節部分などパーツが重なり合った場所が透けてしまう問題があります。

例)パーツが重なった領域は背後のパーツが透けてしまう

これに対してスプライトシート(SSCE) ではアニメーション全体がレンダリングによってセルに落とし込まれるため、全体に一律で変化を加えることが出来ます。

例)全体に対して半透明化

同様にアニメーション全体に対してシェーダーを適用することも出来ます。

例)全体に「ステップ」シェーダーを適用

3. Player プログラムの描画負荷を軽減

1つの通常パーツのみを対象にテクスチャの参照位置を移動する参照セルの動作のみになるため、キーフレーム値の補間計算が発生せず、パーツの数が多いほど座標計算などに要する処理がなくなる分、かなり高速に処理することができます。

アニメーションの表示サイズに比べてパーツ数が多い、キーの曲線補間が多いような構造の場合、検討の余地があるかもしれません。

画像サイズに注意

フレーム単位で画像化して並べていくため、レンダリングの画像サイズ、総フレーム数に比例して画像ファイルが肥大化していきます。
このため、尺が短いワンショットアニメーション、低解像度が許容されるエフェクト、ピクセルアートシミュレーション機能を活用して意図的に低解像度化したアニメーション等に適していると言えます。

まとめ

以上、スプライトシート(SSCE)レンダリングの活用案をいくつかご紹介しました。

ご意見、ご要望をお待ちしております!

上記以外の使い方、アイデアなどお持ちの方は是非、お問い合わせページよりお知らせいただけると開発メンバー一同、大変嬉しく思います。

また、もう一歩、これが出来れば便利になるのに、、といったご意見、ご要望などもお待ちしております!

詳しい使い方について

スプライトシート(SSCE)レンダリングの使い方についてはユーザーガイドを参考にしてみてください。

今後も意外と知られていない機能、活用例などをご紹介していきたいと思います。

ここまでお読みいただき有難うございました!

カテゴリー: OPTPiX SpriteStudio |

【あにまらいぶ】Unity向けプラグイン「SpriteStudio Importer for Unity」採用事例

■2024年4月リリース「あにまらいぶ」について 

株式会社GENITさまが企画・開発・運営を行う「あにまらいぶ」は、最新ヒット曲やJ-POPなどの音楽に合わせてリズムアイコンを叩く音楽ゲームです。音楽ゲームに加えて、ねこやくまなどのかわいいキャラクターの着せ替えも楽しめます。 

「あにまらいぶ」のキャラクターアニメーションは、リリース当初は別の2Dアニメーション作成ツールを使用されていましたが、20252月にOPTPiX SpriteStudio(以下、「SpriteStudio」)に切り替えられ、アップデートが行われました。

続きを読む

カテゴリー: OPTPiX SpriteStudio | タグ: , ,

OPTPiX SpriteStudio が、話題の Godot Engine に対応しました!

SpriteStudio Player for Godot のご紹介

皆さん、こんにちは。
OPTPiX SpriteStudio 開発マネージャの遠藤です。

今回は、SpriteStudio のプレイヤーファミリーに新たに加わった
SpriteStudio Player for Godot をご紹介します。

SpriteStudio とは?

紹介に入る前に、SpriteStudio って何!?
という方もいらっしゃるかもしれません。
ひとことで言えば SpriteStudio は、超汎用の2Dアニメーションツールです。
キャラクタアニメーション、エフェクト、UI演出、レイアウト、カットシーン、SpriteStudio 1つでなんでもこなせます。
SpriteStudio は個人ユーザー向けに無料の Starter ライセンスも提供しています。

是非製品ページもご覧ください!

SpriteStudio Player とは、この SpriteStudio で制作した2Dアニメーションを各種ゲームエンジン、プラットフォームで再生するためのプログラムを指しています。

SpriteStudio Player for Godot の概要

今回ご紹介する SpriteStudio Player for Godot (以降、SSPlayer for Godot と略) は、
昨今話題のゲームエンジン Godot Engine 向けのプレイヤープログラムです。

Godot の特徴

Godot はGitHubにオープンソースとして無料公開されています。
Unity や UnrealEngine などと比較して2Dゲームの開発に向いていると言われます。
例えばピクセル単位の座標系のサポート、タイルマップエディタの標準搭載、 3Dとは独立した2Dのレンダリングエンジンの搭載などにより、軽量かつ効率的に2Dゲームの開発が可能とされています。

そんな2Dがお得意の Godot ですが、複雑なキャラクタアニメーションや、2Dエフェクト、UI演出などをオーサリングする専用ツールは搭載していません。(2024/09/13時点)
そこで SpriteStudio の出番となるわけです!

SSPlayer for Godot の特徴

それでは初めに本プレイヤーの特徴をご説明します。

C++カスタムモジュールで実装

再生時の描画パフォーマンスを重視して、GDScriptベースではなく、C++カスタムモジュールとして実装しました。
SpriteStudio SDK の最新版をベースにしているため、Ver.7.0 までの機能に対応しています。

再生が簡単

SpriteStudio で保存したプロジェクトファイル(sspj)を Godot のリソースフォルダに保存し、SpriteStudioプレイヤーノードのインスペクタから指定するだけで再生できます。
事前のデータコンバートや、インポートの手順を挟みません。
(※後述のバイナリデータ対応によって操作手順が変わる可能性があります)

GDScript の API で動的なコントロールも可能

インスペクタから制御できる再生、停止、コマ送り、ループ設定に加えて、GScript の API を利用することでユーザーデータやシグナル(SpriteStudioの機能名)といったイベント制御用のキーフレームに到達したタイミングで、GodotのSignalを受信して値を取得する、といったこともできます。
また、テクスチャを動的に入れ替える関数などもあります。

下記はサンプルスクリプトの一部です。

下記はCRIマスコットのりんごちゃんがGodot のIDE上で動いている様子です。

以上、特徴を簡単に説明させていただきました。

GitHub で公開中

GitHub - SSPlayerForGodot

SSPlayer for Godot とは現在 GitHub で無料公開中です!

GitHub – SSPlayer for Godot 公開ページ

現在(2024/09/13時点)のバージョンは v1.1.1 になります。
このバージョンで対応している Godot のバージョンは 3.5 と 4.3 です。

サンプルデータも付属していますので、是非一度お試し下さい。

今後の予定

2024/09/13 時点で以下の対応を予定しています。

ビルド済みバイナリの提供

SSPlayer for Godot は C++カスタムモジュールとしてGodot Engineに組み込まれる形態のため、このプレイヤーの動作を試すためには一度リポジトリをCloneし、Godot Engine ごとビルドする必要があります。
慣れていない方はスムーズにいかないこともあると思います。
そこで少なくともWindows, Mac に関してはビルド済みのバイナリを提供できるようCI環境の構築を進めています。

独自バイナリデータへの対応

ゲームに組み込まれるデータサイズの削減、パース時間の短縮のために独自バイナリデータへの対応を進めています。
データの仕様は SsConverterVer2 が出力する ssfb2 フォーマットを想定しています。

非互換性の解消

Godot が持つレンダリングエンジンとの相性の関係で再現できない SpriteStudio の機能がいくつかあります。(詳しくはこちら)
Godot は日々かなりの勢いでアップデートを重ねているため、現時点で対応困難な機能が後々対応できるようになるかもしれません。
これらについて状況を監視して対応していく予定です。

まとめ

以上、簡単ではありますが、SSPlayer for Godot について紹介させていただきました。

SSPlayer for Godot はリリースして5ヶ月に満たない新しいプレイヤーです。
これからもユーザーの皆さんのご意見を取り入れて、揺るぎなく機能強化、安定性の向上をはかっていきたい考えです。
ご興味のある方は是非 SSPlayer for Godot をウォッチ登録してください。
最後までお読みいただき、有難うございました!

カテゴリー: OPTPiX SpriteStudio | タグ: , ,

編集機能を大幅に強化した SpriteStudio Ver.7.2 リリース!

SpriteStudio 開発マネージャの遠藤です。

今回の記事では約1年ぶりのリリースとなるSpriteStudioのメジャーアップデート Ver.7.2 をご紹介します。

Ver.7.2 の紹介に入る前に、SpriteStudio で一体どういうことが出来るのか教えてほしい!
という方は是非 SpriteStudioの製品ページ もご覧になってみてください。

Ver.7.2 の概要

話を戻しまして、Ver.7.2 には作業効率を向上させる新機能の搭載、既存機能の強化、プロジェクト読み込みやアニメーションの描画速度UPなどパフォーマンス改善も含めて1年分のアップデートがてんこ盛りになっています。

ざっと並べても、

  • 優先度の簡単編集
  • セルの自動展開
  • 座標の整列
  • ssaxエクスポート
  • カーブエディタのキースケール
  • スプライトシート(SSCE)出力
  • パーツツリーウィンドウ
  • 優先度フィルター
  • セルマップのα・RGBチャンネル独立表示
  • セルリストのグリッド表示
  • アトリビュート:複数パーツに対する相対値入力・四則演算
  • ・・・以下略・・・

などなど、主要なものだけでも20点以上あります。
これまでユーザーの皆様からお寄せいただいたご要望も含まれているのではないかと思います。

一体何が変わったのか全部知りたい!という方は是非リリースノートをチェックしてみてください。

上記の通り、Ver.7.2 には非常に多くのアップデートがあり、すべてを1つの記事では紹介しきれませんので、何回かに分けてご紹介していきたいと思います。

今回は優先度の簡単編集機能をご紹介します。

続きを読む

カテゴリー: OPTPiX SpriteStudio | タグ:

【レポート】学生さん100名が参加!OPTPiX SpriteStudio 学生向け勉強会を開催しました

こんにちは、CRI・ミドルウェア 第一営業部の武藤です。

昨年の夏に、関西のとあるゲーム会社からのご依頼で、OPTPiX SpriteStudio(以下、SpriteStudio)の勉強会を行いました。

弊社では、これまでに何度もSpriteStudioをテーマにした勉強会を実施してきた経験があったのですが、今回はちょっと珍しいテーマだったのでご紹介いたします。

続きを読む

カテゴリー: OPTPiX SpriteStudio | タグ: | 2023/02/16 更新