同人ゲームサークル reverse snare 開発ブログ

主に2DSTGを作ってる同人ゲームサークル reverse snareの開発記、イベント・作品宣伝を行うブログです。

Steam Deck 購入したので自作ゲー導入セットアップ手順や展示について考える

先日のsteamセールに合わせてsteam deckもセールされていました。
年末のコミケ参加以降、展示の方法で幾つか考えていたので、せっかくだしポチりました。

容量は256GBにしました。
Windowsを導入したほうがスペックが良い的な話をみたので、OS二つ持っておきたいので64GBは避けました。

最近出費が多いのでWindowsOS買うのは後回し。後々使い勝手よくなるみたいな話も書いてあるし。 https://help.steampowered.com/ja/faqs/view/6121-ECCD-D643-BAA8

Steam Deckはデュアルブートに完全に対応していますが、デュアルブートウィザードを表示するSteamOSインストーラーは現在準備中です。 これは、SteamOS 3が完成した時点で一緒に出荷されます。

とりあえずいろんなゲームを入れて遊んでみる

同人・商業のSTGやら3D描画の格ゲーやら入れましたが快適に動いて動いています。
valve側が確認したらしいsteam deck対応状況が黄!やNG表記のものでも、
基本的にアンチエイリアスなし、解像度DbD(1280x800)かHD(1280x720)なら60FPS安定しています。
DXlib、unity、unreal製のゲームや他のゲームも動くので、大体のゲームが動く気配を感じます。
オンラインがメインのゲームはアンチチート対策にひっかかって動作しないらしいですが、持ってないのでわかりません。

遅延はほとんど感じません。
steam OSはLinuxをベースに作られています。
Linuxwindows向けゲームを動かすためにエミュレーションしているようですが、特に遅延を感じられません。
自分は結構鈍感なので実際はあるかもしれませんが…

一部日本語が文字化けしてるゲームもありました。
ジャンルによりますがRPGとかテキストが多いゲームだと遊べなくなりますね。アーケードなアクション系ならまあ何とかなる。
STGでアイテム盛りだくさんのゲームだと一部処理落ちが(所有デスクトップPCと比べて)多い場面もややあり。

インストールの際にPCと同じLANにいたらローカル転送されますが、
最初はうまく行かないので何度かdeck側本体とPC側steamの再起動を行う必要があるようです。
軽めのゲームのインストールと再起動を繰り返して動くようにしてから大きいゲームを転送しましょう。

自作ゲーをインストールして動かしてみる

さて、展示にdeckを使うなら、deckに自作ゲーを転送する必要があります。
自分はまだsteamでの開発者登録や販売ゲーム登録等を行っていないので、
普通にWindows向けビルドした自作ゲームファイルをdeckに転送して、動かしたいと思います。
あと、自分がビルドしたかによらず他の非SteamのPCゲーの転送にも使えます。

導入作業には以下の機材が必要です。

転送から起動までの手順は以下のようになっています。

  1. 転送用USBをexFATにフォーマットする
  2. フォーマット後に転送したいゲームをUSBメモリに入れる
  3. steam deckをデスクトップモードに変更
  4. USBメモリからゲームファイルを移動する
  5. 非steamゲームとして追加する
  6. ゲームのプロパティで互換性を有効にする
  7. ゲーム起動!

参考資料
WindowsをインストールしないでSteam Deckで非Steamゲームを動かす方法
https://note.com/masterchief/n/n67722ebbf515
ほぼこちらの内容の転記な感じですが、個人的に詰まった箇所を画像付きで説明します。

【初心者向け】WindowsからSteam Deckへなるべく楽にファイルを転送する方法を考える【USBメモリMicroSDカード編】
https://hotachin-lover.hatenablog.com/entry/2022/12/03/194522
USBフォーマットについて知らんかったので参考になりました。

あと、この手順はまだSteam開発者登録やら販売ゲーム登録等を済ませていない状態の話になります。
済んでいる場合だとこちらの開発者向けキットを使ってすばやく転送できるのでしょうか。使っていないのでさっぱりわかりません!
Steam Deckにゲームをロードして実行する方法
https://partner.steamgames.com/doc/steamdeck/loadgames?l=japanese

1.転送用USBをexFATにフォーマットする

上の参考記事の通りですが、Linuxで読み取れるようにUSBメモリのフォーマットをexFATにする必要があります。
手元の適当なUSBメモリをフォーマットします。
https://www.buffalo.jp/support/faq/detail/1687.html

2.フォーマット後に転送したいゲームをUSBメモリに入れる

入れます。フォーマット替えてもドラッグドロップでおk。
unityでビルドしたフォルダを圧縮して持ち込みましょう。
steamOSに解凍ソフトもプリインストールされています。

3. steam deckをデスクトップモードに変更

steam deckの電源メニューからデスクトップモードに変更します。
初回切り替えた時はタスクバーや初期配置のショートカットアイコン等も表示されない暗黒状態になってたような気がしますが再起動かなんかでどうにかします。

デスクトップモードをdeckのボタンや画面タップで操作するのはしんどいし誤操作が危険なので、キーマウあったほうがいいです。

4. USBメモリからゲームファイルを移動する

USBメモリを指したらマウント可能の表示が出るので、そこから取り出して自由な場所にコピーします。
ひとまずデスクトップに置きました。

5. 非steamゲームとして追加する

デスクトップモードでsteamのウィンドウクライアントを起動します。

ライブラリから非steamゲームの追加を行います。

ここで軽くハマりました。 ファイル選択のダイアログはデフォでは.desktopファイルが抽出条件になっています。
windowsゲームの実行形式がexeになるので、All Filesに変更して選択対象として表示しましょう。

選んだら、戻ったダイアログでチェックが入ってることを確認して閉じます。 これでライブラリに表示されます。

6. ゲームのプロパティで互換性を有効にする

追加したゲームを右クリック > プロパティ > 互換性 > 特定のSteam Play互換ツールの使用を強制する にチェック。

最初に転送したときは、steamゲーミングモードに戻って設定しようとしたらなぜか初回はチェックが入りませんでした。タップでもボタンでも無反応。
2回目転送したときは初回でもチェックつけられたのですが…反応しない場合はウィンドウクライアントで行うようにしましょう。

7. ゲーム起動!

あとは、ウィンドウクライアントでもゲーミングモードでも起動すれば動きます。

やったー動いたーーーーー
シーン移動やらリソース読み込み処理やら音声関連も問題なく動いた!

動かなかった場合は、使用するエミュのバージョンを変更することで動くかもしれません。
使用しているライブラリやゲームエンジンと同じ物を使っている他ゲーで選択されているエミュに切り替えてみましょう。

展示方法を考える

無事自分のゲームを手元で動かすことができました。
これでイベント展示でも使えそうですね。

携帯モードか別モニタ出力か

イベント展示でdeckを使用している写真を結構見ますが、モニタ出力で使用しているケースが多そう。

自作ゲーのマジカルブラスターはもともとG〇A風のスペックを想定して開発を続けている。
手元でゲームが動いている感じもしっくり来たので、是非とも携帯モードで遊べるようにしておきたい。

ぶっちゃけ、高い機体なので落とされたらイヤです。
あとグリップ部分があるので持つだけなら安定しますが、MBのような常に十字ボタンやスティックに触るような忙しいSTGだと持ち方に工夫がいりそうです。

なので対策として、グリップ付きカバーや画面保護シート、落下防止ストラップを追加で用意する予定です。

ミラーリングして展示者側でプレイを見る

イベント展示を行うなら、試遊される方のプレイ内容を把握しながら適宜アドバイスしたり、感想を受け取りたいです。
携帯モードではプレイ内容が見えにくいため、ミラーリングできるよう準備しておきたい。

公式ドックはケーブルが短いので、接続したまま携帯モードで試遊させるのは不可能。
代わりにUSB-Cの充電可能・映像出力可能で長いケーブルのハブを購入しました。これで携帯モードで試遊させることが可能です。
https://www.amazon.co.jp/gp/product/B0BM3W2JG2/ref=ppx_yo_dt_b_asin_title_o00_s00?ie=UTF8&th=1

配線とかミラーリングするモニタをどうするか問題はありますが、キャプボで映像を受け取れば省スペースになるかも。
この辺はもう少し考えてみます。

ミラーリングのセットアップ手順

deckからミラーリングは、2023/04現在はゲーミングモードではサポートされていないようです。(今後対応されるかも不明) デスクトップモードでは可能です。

linuxの画面設定で以下を設定します。

  • 解像度をdeckの同じ1280x800を設定
  • Replica of: でdeck本体の画面をミラー設定

この設定を行うことでミラーリングでき、steamクライアントウインドウから実行すればプレイ内容を両方の画面でゲーム画面を表示できます。
ただ、MBではミラーリングで問題ありませんでしたが、他のゲームで、垂直同期の有無で極大の入力遅延が発生したことを確認しています。
(MBは現在垂直同期を強制OFFにしています)
steamOS/Linuxのマルチモニタの事情はわかりませんが、展示設営の際は垂直同期の設定に気を配る必要がありそうです。

あとはモニタ側ではなくdeckのスピーカーを使用するよう、音声機器の選択をあらかじめ設定しておきます。

この辺の設定を会場でできていないことに気付いたときにキーマウで設定するのしんどそ~~

てなかんじで

次回の設営に向けてどんな構成にするか、また今年後半のイベント参加に向けて考えて行きます。
それより制作だ制作。見慣れない画面が出てきたがこれは一体…?乞うご期待!