
UnityゲームをSteamへ移植する
UnityゲームをSteamへ移植する
UnityからSteamへの移植は、作り直しとストアへの申請だ。Unityのプロジェクトを読んで完成したSteamのビルドを出すツールは存在しない。
UnityゲームのSteamへの移植とは、権利のあるゲームを新しいエンジンで作り直し、そのビルドをSteamworks経由で出すことだ。Summer Engineは.unityのシーン、プレハブ、.unitypackageのファイルを読み込まない。
作業は二つに分かれる。まず作り直しだ。シーン、ゲームプレイのロジック、入力、UI、セーブデータをSummer Engineで書き直す。アート、音声、モデル、アニメーション、レベルの配置はファイルとして移る。PNG、WAV、OGG、glTF、FBXのような標準の形式はUnity固有ではないからだ。次にストアの作業だ。Steamworksのパートナーアカウント、デポ、ビルドのアップロード、そして審査を通るストアページ。
Summer EngineはGodot 4のワークフローと互換があり、百万行を超える独自コードを持つ完全な独自エンジンだ。ゲームはC++とGDScriptで書き、C#はwebを除くすべての対象で動く。普通の言葉でゲームを説明して最初の版を生成し、その後は実際のプロジェクトをローカルで編集できる。プロジェクトは自分のもので、ロイヤリティはない。
Unityのプロジェクトから移るものと移らないもの
移るもの。テクスチャ、スプライト、音声ファイル、glTFかFBXの3Dメッシュ、フォント、ローカライズの表、ゲームデータの表計算、そして参照としてのレベルの配置。移らないもの。動くコードとしてのMonoBehaviourのスクリプト、プレハブとシーンのシリアライズ、Animatorのコントローラ、ScriptableObject、Unity Timeline、Unityの入力システムの割り当て、そしてUnityの外での再利用をライセンスが許さないAsset Storeのパッケージ。C#のスクリプトは正確な設計書として扱う。作り直しが一致させるべき数値がすべて書いてある。
Steamworksの側を順番に
Steamworksのパートナーアカウントを作る。一回限りのアプリ申請料、現在は一タイトルあたり100米ドルを払う。これは売上から回収できる。ストアページ、年齢レーティングの質問票、税と銀行の情報を埋める。出すプラットフォームごとにデポを作る。コンテンツビルダーのスクリプトを使いSteamPipeでビルドを上げる。実行ファイルを指す起動オプションを設定する。Steamの審査はビルドが動くこととストアページが正確であることを見る。ゲームが良いかどうかではない。
Steamのプレイヤーが期待するデスクトップの機能
Steamのビルドには、ウィンドウと全画面のモード、解像度と垂直同期の選択肢、割り当て変更できるキーボードとマウスの操作、そしてSteam Inputを通した完全なゲームパッド対応が要る。セーブを既知の一つのディレクトリに書き、それをSteam Auto Cloudで宣言してクラウドセーブに対応する。実績と統計はSteamworksで定義し、コードから解除する。Steam Deckの場合は早めに計画する。Deckに対応したビルドは追加の費用なしに客層を広げるからだ。
作り直しを最も速く進める方法
まず一つの垂直スライスを作り直す。レベル一つ、敵一体、プレイヤーのコントローラ、ポーズメニュー、セーブファイルだ。Unityのコードから正確な数値を写して手触りを合わせる。移動速度、重力、ジャンプの高さ、クールダウンを含む。スライスが原版のように感じられれば、仕組みがすでにあるのでコンテンツは速く移る。Summer Engineで普通の言葉の指示を使って各仕組みの下書きを作り、生成されたGDScriptやC++を手で調整する。
よくある質問
Summer EngineはUnityのプロジェクトファイルを読み込めるか
読み込めない。.unityのシーン、プレハブ、.unitypackageのアーカイブ向けのインポーターはない。ゲームを作り直し、権利のあるアセットのファイルを持ち込む。
移植した後もC#のスクリプトは動くか
Unityのコードとしては動かない。UnityEngineのAPIに依存しているからだ。C#そのものはSummer Engineのデスクトップとすべてのネイティブ対象で使えるので、ロジックはC#、GDScript、C++のいずれかで書き直せる。除外されるのはwebだけだ。
Steamでの公開にはいくらかかるか
Steamは一タイトルあたり100米ドルの一回限りのアプリ申請料を取り、ゲームが1000米ドルを稼いだ時点で回収できる。その後Valveは売上の一部を取る。Summer Engineはその上にロイヤリティを課さない。
Unityは引き続き必要か
古いプロジェクトを開いてアセットを書き出すか値を読むためだけに必要だ。Summer Engine版のビルドや出荷には要らない。
UnityからSteamへの移植にはどれくらいかかるか
コンテンツの時間数ではなく仕組みの数で決まる。プレイヤーのコントローラ一つと数種類の敵を持つ小さな2Dのゲームなら、通常は片手間で数週間だ。独自ツールを伴う大きな3Dのゲームなら数か月かかる。垂直スライスが本当の数字を教えてくれる。
移植中もUnity版を売り続けられるか
売り続けられる。ゲームは自分のものなので、作り直しの最中も元のビルドはどこでも販売したままにできる。
さらに見る
Summer Engine で創るその他の方法
AI ゲームメーカー
説明するだけで完全な 2D・3D ゲームを作れるハブ。
開くPort a 3DS game to Steam
Rebuild a 3DS game you own in Summer Engine, then export a Windows, macOS, or Linux build and publish it on Steam.
開くPort a 3DS game to Steam Deck
Rebuild a 3DS game you own in Summer Engine, then ship a Steam build that plays well on a 1280x800 handheld with gamepad only input.
開くPort a Nintendo DS game to Steam
Rebuild a DS game you own in Summer Engine, then export a desktop build for Steam. Mouse covers the stylus, monitors cover both screens.
開くPort a Wii game to Steam
Rebuild a Wii game you own in Summer Engine, then export a desktop build for Steam. Pointer becomes mouse. Motion becomes a design decision.
開くPort a PSP game to Steam
Rebuild a PSP game you own in Summer Engine and export a desktop build for Steam. One screen already fits. One analog nub does not.
開くPort a PS Vita game to Steam
Rebuild a Vita game you own in Summer Engine and export a desktop build for Steam. Dual sticks transfer. Front and rear touch do not.
開くPort a GameCube game to Steam
Rebuild a GameCube game you own in Summer Engine and export a desktop build for Steam. Analog triggers, 4:3 framing, and memory card saves.
開くPort a Switch game to Steam
Rebuild a Switch game you own in Summer Engine and export a desktop build. The gameplay is ready. The platform layer is the job.
開くプラットフォーマーのテンプレート
既成のプロジェクトから始めて、変更を説明するだけ。
見るすべてのゲームテンプレートを見る
既成のプロジェクトから始めて、変更を説明するだけ。
見る