Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 21 additions & 5 deletions Build/Converter/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,13 @@ set(MZ_WZAES OFF CACHE INTERNAL "")
set(MZ_OPENSSL OFF CACHE INTERNAL "")
set(MZ_LIBBSD OFF CACHE INTERNAL "")
set(MZ_ICONV OFF CACHE INTERNAL "")

# Disable installation of minizip-ng and its dependencies to avoid alias target errors in CMake 3.31+
set(SKIP_INSTALL_ALL ON CACHE INTERNAL "")
set(SKIP_INSTALL_LIBRARIES ON CACHE INTERNAL "")
set(SKIP_INSTALL_HEADERS ON CACHE INTERNAL "")
set(SKIP_INSTALL_EXECUTABLES ON CACHE INTERNAL "")

FetchContent_MakeAvailable(minizip-ng)
include_directories(${minizip-ng_SOURCE_DIR})
include_directories(${minizip-ng_SOURCE_DIR}/compat)
Expand Down Expand Up @@ -179,11 +186,20 @@ include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../Common/Helper)
# for win & mac suport thumbnail
if(WIN32 OR APPLE)
message("fetch glfw")
set(GLFW_BUILD_EXAMPLES OFF CACHE INTERNAL "")
set(GLFW_BUILD_TESTS OFF CACHE INTERNAL "")
set(GLFW_BUILD_DOCS OFF CACHE INTERNAL "")
set(GLFW_INSTALL OFF CACHE INTERNAL "")
set(GLFW_VULKAN_STATIC OFF CACHE INTERNAL "")
set(GLFW_BUILD_EXAMPLES OFF CACHE BOOL "" FORCE)
set(GLFW_BUILD_TESTS OFF CACHE BOOL "" FORCE)
set(GLFW_BUILD_DOCS OFF CACHE BOOL "" FORCE)
set(GLFW_INSTALL OFF CACHE BOOL "" FORCE)
set(GLFW_VULKAN_STATIC OFF CACHE BOOL "" FORCE)
set(GLFW_BUILD_VULKAN OFF CACHE BOOL "" FORCE)
if(WIN32)
set(GLFW_BUILD_WIN32 ON CACHE BOOL "" FORCE)
set(GLFW_BUILD_WAYLAND OFF CACHE BOOL "" FORCE)
set(GLFW_BUILD_X11 OFF CACHE BOOL "" FORCE)
elseif(APPLE)
set(GLFW_BUILD_COCOA ON CACHE BOOL "" FORCE)
endif()

FetchContent_Declare(
glfw
GIT_REPOSITORY https://github.com/glfw/glfw.git
Expand Down
89 changes: 89 additions & 0 deletions README.ja.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
[**日本語**](./README.ja.md) | [**English**](./README.md)

# SpriteStudio 6 SDK
Copyright © CRI Middleware Co., Ltd.

## 概要
本SDKは、[OPTPiX SpriteStudio 6以降](http://www.webtech.co.jp/spritestudio/)で製作されたデータ(sspj,ssce,ssae,ssee)をユーザーの皆様の再生環境に応じて柔軟にご利用いただくためのライブラリ、およびツール群で構成されます。

* sspjLib :SpriteStudioのプロジェクトファイルsspjを解析するためのライブラリです。
* ローダー:SpriteStudio 6 形式'のファイル(sspj,ssce,ssae,ssee)の読み込みモジュール
* アニメータ:座標変換、補間計算などを行うアニメーションモジュール
* ドローワー:OpenGL を利用した描画モジュール
* Tools:ライブラリを使用して作成されたツールです。
* ビューアー:Windows/Mac 用ビューアーサンプル
* コンバータ:sspjファイルから再生プログラム用のファイル(.ssbp .json等)へ変換します。

### 想定する用途
本SDKの用途は、sspjを解析して新たなプラットフォーム用プレイヤーを作成したり、別のフォーマットにデータを加工、変換するツールの作成となります。
ゲームやアプリで使用する場合は、アニメーション制御に特化したプレイヤープログラムを公開しています。
またアニメーション編集に役立つ外部ツールも公開していますので、以下のリンクを参照してみてください。
* [OPTPiX ヘルプセンター](http://www.webtech.co.jp/help/ja/spritestudio/download/forprogrammer/)
* [GitHubのSpriteStudioリポジトリ](https://github.com/SpriteStudio?tab=repositories)

### 免責事項
本SDKは**リファレンス実装**を目指してメンテナンスされています。
特定のプラットフォームを意識した最適化は行わず、ある程度の冗長性を維持しています。
develop ブランチは最新の開発版のため、何らかの不具合が含まれている可能性があります。
安定版が必要な場合[Release](https://github.com/SpriteStudio/SpriteStudio6-SDK/releases)から取得してください。

## 更新履歴

- [master](https://github.com/SpriteStudio/SpriteStudio6-SDK/commits/master)
- [develop](https://github.com/SpriteStudio/SpriteStudio6-SDK/commits/develop)

## 対応する SpriteStudio のバージョン
**SDKバージョン_SpriteStudioバージョン** の形式 (例: 2.2.0_SS7.1.0) でリリースが作られています。
詳しくは[Releases](https://github.com/SpriteStudio/SpriteStudio6-SDK/releases) をご覧ください。

## ツール類

- ダウンロード
- [最新版](https://github.com/SpriteStudio/SpriteStudio6-SDK/releases/latest)
- [全バージョン](https://github.com/SpriteStudio/SpriteStudio6-SDK/releases)
- 使い方
- [コンバータ](./docs/how-to-use-converter.ja.md)
- [ビューア](./docs/viewer.ja.md)
- その他
- [SS6Playerシリーズとエンジニア向けツール](http://www.webtech.co.jp/help/ja/spritestudio/download/forprogrammer/)

## SDKのビルド方法
* [SDKのビルド方法](./docs/how-to-build-sdk.ja.md)
* [(参考) SS6Converter、ビューアーをビルドする方法](http://www.webtech.co.jp/help/ja/spritestudio/guide/output6/sdk/#viewer_build) _※ヘルプセンターのページにジャンプします。_

## データ構造とクラスリファレンス
[SpriteStudio6 SDK Document](https://spritestudio.github.io/SpriteStudio6-SDK/html/index.html)

## ブランチルール
SpriteStudioSDKにはmasterとdevelopがあり、プレイヤーを含む最新のコードはdevelopにコミットされます。
安定版と判断した段階で、developからmasterへマージしてバージョン番号を付与しています。

## Pull Request
Pull Request は大歓迎です!
リクエスト送信前にIssue化しておく必要はありません。
変更内容はコミット時のコメントに記入していただければ十分です。

## 使用しているオープンソースライブラリ
SDKでは以下のライブラリを使用しています。
各ライブラリのライセンス等については下記リンクよりご確認ください。
* ローダー
* [TinyXML2](http://www.grinninglizard.com/tinyxml/)
* レンダラー
* [OpenGL](http://www.opengl.org/)
* [glew ( Windows )](http://glew.sourceforge.net/)
* ビューアーサンプルのGUI
* [glfw3](http://www.glfw.org/)
* [JUCE 7](https://juce.com/)

## SpriteStudio 5 3rdParty
ご好意で提供していただいたプログラムを公開しています。
ご使用の前にこちらをお読みください。[SpriteStudio 5 3rdParty](http://spritestudio3rdparty.github.io/)

## お問い合わせ
ご質問、ご要望、不具合のご報告は [Issues](https://github.com/SpriteStudio/SpriteStudio6-SDK/issues) に投稿してください。
非公開でのお問い合わせを希望される場合は、[ヘルプセンター](https://www.webtech.co.jp/help/ja/spritestudio7/inquiries/ssplayer_tool/) よりお寄せください。
再現データなどの送付が必要な場合も、上記ヘルプセンター経由でファイルを送信してください。

株式会社CRI・ミドルウェア
[https://www.cri-mw.co.jp/](https://www.cri-mw.co.jp/)
Copyright © CRI Middleware Co., Ltd.
92 changes: 88 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,89 @@
### SpriteStudio 6 SDK
[**日本語**](./README.ja.md) | [**English**](./README.md)

ドキュメントはこちらです。
https://github.com/SpriteStudio/SpriteStudio6-SDK/wiki

# SpriteStudio 6 SDK
Copyright © CRI Middleware Co., Ltd.

## Overview
This SDK consists of libraries and tools for flexibly using data (sspj, ssce, ssae, ssee) created with [OPTPiX SpriteStudio 6 or later](http://www.webtech.co.jp/spritestudio/) in your own playback environment.

* sspjLib: A library for parsing SpriteStudio project files (sspj).
* Loader: Module for loading SpriteStudio 6 format files (sspj, ssce, ssae, ssee).
* Animator: Animation module that performs coordinate transformation, interpolation calculation, etc.
* Drawer: Drawing module using OpenGL.
* Tools: Tools created using the library.
* Viewer: Viewer sample for Windows/Mac.
* Converter: Converts sspj files into files for playback programs (.ssbp, .json, etc.).

### Intended Use
The purpose of this SDK is to parse sspj files to create players for new platforms, or to create tools for processing and converting data into other formats.
For use in games and apps, we provide player programs specialized for animation control.
We also provide external tools useful for animation editing, so please refer to the links below.
* [OPTPiX Help Center](http://www.webtech.co.jp/help/en/spritestudio/download/forprogrammer/)
* [SpriteStudio Repositories on GitHub](https://github.com/SpriteStudio?tab=repositories)

### Disclaimer
This SDK is maintained with the goal of being a **reference implementation**.
It maintains a certain degree of redundancy without performing optimizations for specific platforms.
Since the `develop` branch is the latest development version, it may contain some bugs.
If you need a stable version, please obtain it from [Releases](https://github.com/SpriteStudio/SpriteStudio6-SDK/releases).

## Update History

- [master](https://github.com/SpriteStudio/SpriteStudio6-SDK/commits/master)
- [develop](https://github.com/SpriteStudio/SpriteStudio6-SDK/commits/develop)

## Supported SpriteStudio Versions
Releases are created in the format **SDK Version_SpriteStudio Version** (e.g., 2.2.0_SS7.1.0).
For details, please see [Releases](https://github.com/SpriteStudio/SpriteStudio6-SDK/releases).

## Tools

- Download
- [Latest Version](https://github.com/SpriteStudio/SpriteStudio6-SDK/releases/latest)
- [All Versions](https://github.com/SpriteStudio/SpriteStudio6-SDK/releases)
- Usage
- [Converter](./docs/how-to-use-converter.md)
- [Viewer](./docs/viewer.md)
- Others
- [SS6Player Series and Tools for Engineers](http://www.webtech.co.jp/help/en/spritestudio/download/forprogrammer/)

## How to Build the SDK
* [How to Build the SDK](./docs/how-to-build-sdk.md)
* [(Reference) How to Build SS6Converter and Viewer](http://www.webtech.co.jp/help/ja/spritestudio/guide/output6/sdk/#viewer_build) _*Note: Jumps to the Help Center page._

## Data Structure and Class Reference
[SpriteStudio6 SDK Document](https://spritestudio.github.io/SpriteStudio6-SDK/html/index.html)

## Branch Rules
SpriteStudioSDK has `master` and `develop` branches. The latest code, including the player, is committed to `develop`.
Once judged to be a stable version, it is merged from `develop` to `master` and assigned a version number.

## Pull Requests
Pull Requests are very welcome!
There is no need to create an Issue before sending a request.
Providing details of the changes in the commit comments is sufficient.

## Open Source Libraries Used
The SDK uses the following libraries.
Please check the links below for the licenses of each library.
* Loader
* [TinyXML2](http://www.grinninglizard.com/tinyxml/)
* Renderer
* [OpenGL](http://www.opengl.org/)
* [glew (Windows)](http://glew.sourceforge.net/)
* Viewer Sample GUI
* [glfw3](http://www.glfw.org/)
* [JUCE 7](https://juce.com/)

## SpriteStudio 5 3rdParty
We publish programs provided by the community.
Please read this before use. [SpriteStudio 5 3rdParty](http://spritestudio3rdparty.github.io/)

## Contact
Please post questions, requests, and bug reports to [Issues](https://github.com/SpriteStudio/SpriteStudio6-SDK/issues).
If you prefer to contact us privately, please use the [Help Center](https://www.webtech.co.jp/help/en/spritestudio7/inquiries/ssplayer_tool/).
If you need to send reproduction data, please do so via the Help Center.

CRI Middleware Co., Ltd.
[https://www.cri-mw.co.jp/](https://www.cri-mw.co.jp/)
Copyright © CRI Middleware Co., Ltd.
4 changes: 2 additions & 2 deletions Scripts/build_convertergui_win.bat
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ pushd build

where ninja >nul 2>nul
if ERRORLEVEL 1 (
cmake -A %TARGET_ARCH% -DCMAKE_BUILD_TYPE=%BUILD_TYPE% .. || exit /b 1
cmake -A %TARGET_ARCH% -DCMAKE_BUILD_TYPE=%BUILD_TYPE% -DCMAKE_PREFIX_PATH="%QT_PREFIX%" .. || exit /b 1
cmake --build . --target ALL_BUILD --parallel -- /p:Configuration=%BUILD_TYPE% || exit /b 1
) else (

Expand All @@ -58,7 +58,7 @@ if ERRORLEVEL 1 (
call %VCVARSALL% %HOST_ARCH%_%TARGET_ARCH%
)

cmake -G Ninja -DCMAKE_BUILD_TYPE=%BUILD_TYPE% -DCMAKE_SYSTEM_PROCESSOR=%TARGET_ARCH% .. || exit /b 1
cmake -G Ninja -DCMAKE_BUILD_TYPE=%BUILD_TYPE% -DCMAKE_SYSTEM_PROCESSOR=%TARGET_ARCH% -DCMAKE_PREFIX_PATH="%QT_PREFIX%" .. || exit /b 1
cmake --build . --parallel || exit /b 1
)

Expand Down
13 changes: 10 additions & 3 deletions Scripts/generate_ssfb_code.bat
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,16 @@ rem Build flatc
rmdir /S /Q build
mkdir build
pushd build
cmake -DCMAKE_BUILD_TYPE=%BUILD_TYPE% -DENABLE_FLATC=ON .. || exit /b 1
cmake --build . --target flatc --parallel -- /p:Configuration=%BUILD_TYPE% || exit /b 1
set FLATC="%BUILDDIR%\Converter\build\_deps\flatbuffers-build\flatc.exe"
where ninja >nul 2>nul
if ERRORLEVEL 1 (
cmake -DCMAKE_BUILD_TYPE=%BUILD_TYPE% -DENABLE_FLATC=ON .. || exit /b 1
cmake --build . --target flatc --parallel --config %BUILD_TYPE% || exit /b 1
set FLATC="%BUILDDIR%\Converter\build\_deps\flatbuffers-build\%BUILD_TYPE%\flatc.exe"
) else (
cmake -G Ninja -DCMAKE_BUILD_TYPE=%BUILD_TYPE% -DENABLE_FLATC=ON .. || exit /b 1
cmake --build . --target flatc --parallel || exit /b 1
set FLATC="%BUILDDIR%\Converter\build\_deps\flatbuffers-build\flatc.exe"
)
popd

rem generate ssfb code
Expand Down
7 changes: 4 additions & 3 deletions Scripts/release_converter_win.bat
Original file line number Diff line number Diff line change
Expand Up @@ -40,13 +40,14 @@ pushd %BASEDIR%
rmdir /S /Q Ss6Converter
mkdir Ss6Converter

copy "%BUILDDIR%\Converter\build\Release\Ss6Converter.exe" Ss6Converter\
where ninja >nul 2>nul
if ERRORLEVEL 1 (
copy "%BUILDDIR%\Converter\build\Release\Ss6Converter.exe" Ss6Converter\ || exit /b 1
robocopy "%BUILDDIR%\Ss6ConverterGUI\Ss6ConverterGUI\build\Release" Ss6Converter /E
) else (
copy "%BUILDDIR%\Ss6ConverterGUI\Ss6ConverterGUI\build\Ss6ConverterGUI.exe" Ss6Converter\
%QT_PREFIX%\..\msvc2022_64\bin\windeployqt6.exe --qtpaths %QTPATHS% Ss6Converter\
copy "%BUILDDIR%\Converter\build\Ss6Converter.exe" Ss6Converter\ || exit /b 1
copy "%BUILDDIR%\Ss6ConverterGUI\Ss6ConverterGUI\build\Ss6ConverterGUI.exe" Ss6Converter\ || exit /b 1
%QT_PREFIX%\..\msvc2022_64\bin\windeployqt6.exe --qtpaths %QTPATHS% Ss6Converter\Ss6ConverterGUI.exe || exit /b 1
)
set ZIPNAME=Ss6Converter_%TARGET_ARCH%
powershell compress-archive Ss6Converter %ZIPNAME%.zip
Expand Down
Loading
Loading