えいのうにっき

むかしのじぶんのために書いています

PlayStation Suiteで遊んでみた!

こんにちは、a-knowです。


PlayStation Suite(以下PSS)でアプリケーション開発ができる、という触れ込みに惚れて買った(買ってもらった)、ぼくのPlayStation Vita。
結局、「GRAVITY DAZE」をクリアしてからというもの、2ヶ月ほどもほったらかしにしておりました・・・(「勇者のきろく」出るの遅すぎ!)。

4/19にPSSのDeveloper Programがオープンβになったことも、もちろん公式のメールで知ってはいたのですが、今日まで手付かず状態のまま・・・。
先日行われた合同勉強会(@岡山県立大学)では、早速Vita上でサンプルアプリを動かして見せてくれた方もおられ、「(このままじゃ)アカン!」ということで、遅ればせながら今日、少し遊んでみましたのでここでも書いておこうと思います。



まずは、準備!

必要な準備としては、「PCへのPSS SDKインストール」と「VitaへのPSS Development Assistantのインストール」があります。
ここらへんの手順を自分でまとめてみようと思ったのですが、既にわかりやすいまとめをされている方がおられたので、そちらをご紹介することでここでは割愛します。


PlayStation Suite オープンβのサンプルを実行してみた。 とあるソニー好きなエンジニアの日記


PSS SDKドキュメントを読む!

インストールが無事終了すると、「/Users/Public/Documents/Pss/doc/ja/index.html」に日本語ドキュメントが格納されてましたので、まずはそれを流し読みしました。
英語でも読もうと思えば読めるけど、やっぱり日本語のドキュメントがあるということは、それだけでとてもハードルが下がります:-)。

以下に、読んでいて「ポイントかな?」と思ったところを抜粋してみました。

  • PS Suite SDKは、プロトタイプ開発環境としてWindowsをサポート
  • PS Suiteアプリケーションは以下のデバイスで実行可能です。
  • PS Suite開発の概要
  • 開発に使用するツール
    • PS Suite Studio
    • UI Toolkit, PS Suite UI Composer
      • UI Toolkit は、PS Suite 上でユーザインターフェイスを作成するための仕組みやウィジェット(GUI部品)をまとめたライブラリです。PS Suite UI Composer (以降、本SDKドキュメントではUI Composerと略記します) は、ユーザインタフェースのデザインを支援するためのツールで、ボタンやラベルなどのウィジェットをレイアウトしたり、各ウィジェットのプロパティを設定することが可能です。
  • API
    • PS Suite SDKC# ベースのクラスライブラリを提供します。ゲーム開発の基盤となる機能が、Texture、Sound、Image、Font、GamePad といったクラスとして提供されます。
  • 開発環境の設定
    • (マニュアルにしたがって、ここでサンプルアプリを実際に動か(デバッグ)してみた。)
    • (「統合開発環境 PS Suite Studio」。Eclipseオンリーなぼくだけど、触っていれば慣れるのは早そう。)
    • Windows上でのエミュレート、対象のアプリにもよるんだろうけど、かなりサクサクな印象。)
  • PlayStation(R) Vita で実行するための設定
    • PlayStation(R)VitaのUSBドライバを開発用PCにインストールする
      • (接続したら勝手に始まります。)
    • PlayStation Suite Development AssistantをPlayStation(R)Vitaにインストールする
      • PlayStation(R)Store経由でダウンロード・インストール。)
    • PlayStation Suite Development Assistantの起動
      • 開発用PCとPlayStation(R)Vitaを付属のUSBケーブルで接続し、PlayStation(R)Vitaにメモリーカードを入れておきます。
      • PlayStation(R)Vitaホーム画面上の「PS Suite Dev」アイコンをタップして起動します。
      • PS Suiteアプリケーション起動時に弊社のサーバに接続して認証を行う必要があるため、PlayStation(R)Vitaを無線(WiFi/3G)でネットワークに接続できる状態にしておきます。
    • (あとは実行ターゲットを指定して実行するだけ!)
      • (うごいたっ。)


実行ターゲットを指定して〜・・・



Vita側はDevelopment Assistantを起動しておいて、PCで実行すると〜・・・



動いたっ♪




サンプルアプリを動かしてみる!

前評判とおり、非常に豊富なサンプルアプリの数!その数、48種類
サンプルアプリ一覧は、ドキュメント「/Users/Public/Documents/Pss/doc/ja/sample_list_ja.html」にあるんですが、実際に動かしてみる事でわかることもあるだろうってことで、ひと通り全てのサンプルアプリを動かしてみました。

そのなかでも、「自分が何かを作る」となったときに参考になるかも!というサンプルをリストにしてみました。リストにあげてないアプリでも、とてもおもしろそうなゲームがあったりもするので、どんどんVitaにデプロイして遊んでみて欲しいですね!


  • Audio
    • BgmPlayerSample
      • 音楽プレーヤーのサンプル。このサンプルではボタンのオンオフで音楽を再生させてる。アプリケーション内での音楽再生の際に参考になるかな?
    • SoundPlayerSample
      • サウンドエフェクトを鳴らすサンプル。これもボタンの押下でサウンドを鳴らしてる。
  • Core
    • MathSample
      • 数学関数の利用サンプル。Vitaには何も表示されない。
  • demo
    • BallMazeDemo
      • よくある、モーションセンサーでボールを移動させるゲーム。モーションセンサー周りを使うときの参考になりそう。
    • Physics2dDemo
      • 「2次元物理シミュレーションのデモゲーム」。慣性とか、それなりに考慮されてる気がする。
  • Environment
    • ClipboardSample
      • アプリ内でコピペする際の参考に。
    • DialogSample
      • 文字入力のサンプル。ソフトウェアキーボードが出てくる。
    • PersistentMemorySample
      • 「永続的なメモリ領域を利用するサンプル」。アプリを一度終了して再度起動しても、入力値が保存されてます。
    • ShellSample
      • 「他のアプリケーションを起動するサンプル」。このサンプルではブラウザが起動しました。
    • StorageSample
      • ファイル書き出し・読み込み・削除のサンプル。
  • GameEngine2D
    • HelloSprite
      • 「GameEngine2Dで画面にスプライトを1つ表示するサンプル」。まさしく、スプライトを作るときに参考になる??
    • PuzzleGameDemo
      • これなんてズーキーパー?w 完成度高いゲーム、楽しすぎ!
  • Imaging
    • ImageSample
      • 画像を表示させたり、重ねて表示したり、抜き出したり。
  • Input
    • GamePadSample
      • Vitaの各種入力ボタンのサンプル。アナログキーは+1〜-1の範囲で値が取得できる。
    • MotionSample
      • モーションセンサーのサンプル。傾きと、加速度センサーについてのサンプルも。
    • TouchSample
      • タッチパネルのサンプル。でも背面タッチのサンプルはないのね。。
  • Network
    • HttpSample
      • HTTP通信のサンプル。
    • SocketSample
      • ソケット通信のサンプル。ひとつの画面の中でソケット通信させてる様を確認できます。・・・ちょいとわかりにくいけどw
  • Tutorial
    • 「/Users/Public/Documents/Pss/doc/ja/programing_guide_overview_ja.html」ここの成果物になるのかな?
    • これに従って自分でもやってみるのがいいんだろなー。
  • UI
    • DemoClock
    • DemoRssReader
      • その名の通り、RSSリーダーのサンプルアプリ。ぼく的には実用系のアプリを作りたいと思ってるので、これは有用なサンプルになりそう。
    • UICatalog
      • 「UI Toolkitで利用可能なウィジェットとアニメーション効果を確認できるサンプル」。こりゃー便利だわ!

と、

まぁ、始めた初日としてはこんなもんでしょうか。

個人的には、もしPSS開発をやるのなら、やっぱり、ゲーム開発ではなく実用系アプリの開発がしてみたい(それにしかできそうにない、ともいう・・・)と思っていて。
で、Vitaというデバイスを見てすぐに思いつくのが、やはり背面タッチパネルの可能性。例えば、ページ送りなどで画面が指で遮られる、といったことから開放される可能性がありますよね!


まず何かしら作るのなら・・・、背面タッチパネル対応のTwitterTLビューワー、あたりになるのかなと。「PlayStation Suite Developer Community」内で検索かければ、PSSでのTwitter連携ぐらいならやってる方が見つかるだろう(まだ見てない)から、それをとっかかりにするのかな?


C#という言語自体は触ったことはないですが、あんまり心配してません:-P