Upload
igda-japan
View
3.001
Download
1
Embed Size (px)
Citation preview
本日の内容
•現況報告
•今後のアクション
•Technical Tips
•Publishing & Submission Tips
現況報告
僕は森世界の神になる僕は森世界の神になる僕は森世界の神になる僕は森世界の神になる
森の神様が持つたった一つの特権。それは、動植物を"キル"【間引き】すること。
弱肉強食、食物連鎖の世界で暮らす動植物達を育て、迫り来る"キカイ"をやっつけよう!多種多様な動植物の出現条件をみたし"Book"に収めよう。
勇者のくせにこなまいきだ勇者のくせにこなまいきだ勇者のくせにこなまいきだ勇者のくせにこなまいきだ
独特の世界観とオリジナリティ溢れるゲームシステムで好評を博したPSP®「プレイステーション・ポータブル」『勇者のくせになまいきだ。』シリーズが装いも新たにPlayStation®Mobileに登場。
昔ながらのドット絵、どこか懐かしいサウンド、散りばめられたギャグ!「勇なま」ならではのテイストを受け継ぎながら、よりシンプルにゲーム性をアレンジ。誰でも気軽に遊べるアクションパズルとして生まれかわった、その名も
「勇者のくせにこなまいきだ。」
RPG的な”お約束”を満載した、クスっと笑えるヘンなゲーム、PlayStation®Mobileに降臨!
快感足つぼマッサージ快感足つぼマッサージ快感足つぼマッサージ快感足つぼマッサージ
『快感足つぼマッサージ』は、女の子の足つぼをキモチよくマッサージし、ほぐしてあげるゲームです。
画面上で指定される女の子のつぼを、あなたの指でグリグリとマッサージしてあげてください。つぼをほぐしてステージクリアすると、色々なポーズで別のつぼを求めてきますので、どんどん刺激していきましょう。
同じ場所でもマッサージのしかたで得点が変わるのがプレイのコツ。ハイスコアを出せばご褒美ポーズを見せてくれるので、時間切れに注意しながら女の子のつぼをほぐしてしていきましょう!
インストールベース
•PS Vita : 価格改定後(日本市場)売上好調!
インストールベース
•PlayStation Certified Device
: Xperia Zが引き続き好調
ユーザーベース
•Sony Entertainment Networkアカウントの総数
�1億1.000万以上 : ゲームに積極的なユーザー
•全PSプラットフォームにおけるコンテンツDL数
�29億1.600万以上 : DLの抵抗感無い
2012/7末 時点
2013/4/1 時点
今後のアクション
今後のアクション1タイトル展開
•1stPartyのPlayStation IPタイトルを5月6月と連続してリリース予定
�『勇者のくせにこなまいきだ。』(5/22配信済み)など
•オリジナリティーあふれるゲームも継続してリリース
今後のアクション2DUALSHOCK®3 対応
ユーザー様の選択肢として用意
今後のアクション3:パブリッシャーライセンス無料化
•通常、7980円が、現在、無料!!!(9月2日まで)
いますぐお申込みを!!!
今後のアクション4イベント参加
•E3やTGSなどメジャーイベントにPSMコンテンツを展示
•そのほか、インディーズイベントにも参加予定
�Bit Summit は興味深いです
�インディーズの方々をサポートしていきたいです
�他にも良いイベントあれば教えてください
お願いします!お願いします!お願いします!お願いします!
Technical Tips
Today
•新規機能・良くある問題に関するTIPS紹介
•ロードマップ
良くある問題
•鍵の作成・管理がややこしい
->改善にとりくみました。
鍵作成・管理の利便性向上 1
•PSM Studioからコマンド一発で鍵が作成可能に。
�実機をPCに接続、「鍵の更新」コマンドを実行するだけで必要な鍵を全て生成。(SDK 1.20)
PublisherKey
Device Seed App Exe Key
鍵作成・管理の利便性向上 2
•鍵の状態を一目でわかるように (SDK1.20)
�ヒントの表示。
�無効になった場合、「無効マーク」と理由を表示。
よくある問題に対するTIPS
•パフォーマンスが思ったほど良くない
�まずはStopwatchクラスを利用してボトルネックを見つけるところから
•ElapsedMilliseconds 経過時間の合計を取得(ミリ秒単位)
•ElapsedTicks 経過時間の合計を取得(タイマ刻み)
– こちらの方がより細かい刻みで測定できる
�重い処理はCPU処理なのか、描画なのか?•描画と言っても、GPU内の処理そのものが重たいのではなく
、CPU側からGPU側へデータを送ったり、データのセットアップなどで時間がかかっている場合がある
実機での正しいパフォーマンスを知るには
•Releaseモードでビルドする。
•PSMアプリのデプロイ後、DevAssistant のメニューからPSMアプリを立ち上げる。
�PSM Studioから起動すると、実機とPC間の通信が行われるため、オーバーヘッドがかかる。
Debugビルド-Debug実行にくらべて20~30%速くなる。
最適化オプションの有効化
•パフォーマンスの向上
�[メニュー] - [プロジェクト] – [(プロジェクト)のオプション] – [ビルド] – [コンパイラ] – [最適化を有効にする]にチェック。
描画最適化のヒント
描画最適化のヒント
�DrawArraysの呼び出し回数を減らす
描画最適化のヒント
�SetTexutreの呼び出し回数を減らす
�テクスチャ一体化ツールUnifyTexture.exe
描画最適化のヒント
�SetVerticesの呼び出し回数を減らす•頂点データはまとめてセットする
� floatをshort, byte型に変更し、データ量を減らす。
float[] positions = { … … … };
float[] texcoords = { … …. … };
float[] colors = { … …. … };
vbuffer.SetVertices(0, positions);
vbuffer.SetVertices(1, texcoords);
vbuffer.SetVertices(2, colors);
struct VertexData
{
public Vector4 positions;
public Vector2 texcoords;
public Vector4 colors;
}
よくある問題に対するTIPS
•Vitaでテクスチャローディングが遅い
�現時点では圧縮テクスチャフォーマットがサポートされていないので、サイズの大きなテクスチャを読み込まないといけない
�プロパティ「署名と暗号化」の設定でリソースからチェックをはずしてみる。
•SignedAndEncrypted > Signed > Plain (読み込み時間)
•ローディング時間を考えて、Plainを選ぶことも検討
よくある問題に対するTIPS
読み込み時間を短縮したい場合、
「署名と暗号化」から「Plain(平文)」
に変更。
•メモリ使用設定について
�設定できるメモリ量は96MB•Resource Heap + Managed Heap = 96MB
�SDK1.10以降で、Resource Heapの使用量がSystemMemoryでチェックできるようになった
•SystemMemory.Dump()で簡単にメモリ使用量がわかる
�SDK内部で一時的に確保しているバッファはこのチェックで計測できないため、少し余裕を持たせる必要
よくある問題に対するTIPS
よくある問題に対するTIPS
==== [START] SystemMemory.Dump() ====
[Resource Heap Information]
+ Total : 0033554432 [bytes]
+ Used : 0002750424 [bytes]
+ Free : 0030804008 [bytes]
[Objects Information]
+ Font x 1 :
- Font[0x030CF730] = { FileName1="embed:ltn0.pvf", FileName2="embed:jpn0.pvf", FontName="__System__", Size=24, Style=0 }
+ PixelBuffer x 1 :
- PixelBuffer[0x030D0900] = { FileName="", Width=147, Height=24, PixelBufferFormat=RGBA, PixelBufferType=TEXTURE_2D }
+ VertexBuffer x 11 :
- VertexBuffer[0x030CFED0] = { VertexCount=5, IndexCount=0, StreamCount=1 }
…..
…..
+ GraphicsContext x 1 :
- GraphicsContext[0x030CEAB0] = {}
+ ShaderProgram x 3 :
- ShaderProgram[0x030CF9F0] = { FileName1="/Application/shaders/test.cgx", FileName2="" }
…..
…..
==== [END] SystemMemory.Dump() ====
SystemMemory.Dump()
よくある問題への対処
•(ご迷惑をお掛けしております。現在修正中です・・・)
�スレッドが正しく動作しない問題への対処。
�Androidのサスペンド対応•⇒SDK 1.20で修正予定。
セーブデータの暗号化
�アプリ内課金を実装する場合、セーブデータは暗号化しておきましょう。
•Sce.PlayStation.Core.Servicesのクラス AccountInformation の UniqueID プロパティでユーザーアカウントごとにユニークな値を取得できます。
•ユニークな値を種にして、セーブデータをSystem.Security.Cryptographyのクラスを使って暗号化し、セーブする。
PSM SDK ロードマップ
(今後の予定)
HighLevelライブラリ
•GameEngine2D
�要望の組み込み•上で説明した描画最適化のTIPSを実装。
•構造をシンプルに。
•大量のスプライトを手軽に表示可能に。
•初学者(中高校生)でも理解可能に。
HighLevelライブラリ
•2Dゲームをより素早く作成可能に。
�アプリ内課金パズルゲーム
� 弾幕シューティング
�2D横スクロールアクションゲーム
�サウンドノベル
HighLevelライブラリ
•より手軽に提出できるサービス
�F2P(Free to Play:基本無料-アプリ内課金)のプログラムテンプレートを検討
•メソッド呼び出しで購入ダイアログを表示。
今後のロードマップに関して
•ネットワークサービス用のAPI� PSNを利用したランキングシステムの実装検討を進めている
� ランキングシステム以外についても、検討予定
� Twitterサンプルなどの提供も予定
• C#以外のプログラム言語のサポート
� Luaへの対応を検討、実装を試している
• Maya以外の3Dツールからのモデルデータ出力のサポート
� ソースを公開する方向で利用者にカスタマイズして使用してもらうことを検討中
• 低レベルなオーディオAPI、動画再生現在検討中
Unity
•Unityを使っている方は、そのまま使えます!
•Unityコンテンツを持っている人は、PSMのストアで販売可能!
•PSMならカジュアルな2Dゲームや課金ゲーム、ハイレベルな3Dゲームも開発可能!
アプリを実機テストする際のアプリを実機テストする際のアプリを実機テストする際のアプリを実機テストする際のbad knowbad knowbad knowbad know----howhowhowhow注意事項注意事項注意事項注意事項
•鍵、デバイスシード
• PSM Studio, Publishing Utility, Development Assistant
鍵、デバイスシード鍵、デバイスシード鍵、デバイスシード鍵、デバイスシード
•鍵� パブリッシャー鍵
•ライセンス購入が完了すれば発行可能
•基本的には一度作れば更新不要
– 更新すると色々と面倒です(後述)
– エクスポートしてバックアップしておくと安心
� アプリ鍵•Application ID(Project Name)と 1:1 対応
•デバイスシード� デバイスごとの固有のID、みたいなもの
� PSM Development Assistantをインストールし直すと変わっちゃうので注意して下さい。
ライセンスと鍵、シードの関係ライセンスと鍵、シードの関係ライセンスと鍵、シードの関係ライセンスと鍵、シードの関係
・・・
パブリッシャー鍵
アプリ鍵
アプリ鍵束
PSMアプリ
App2App1
App1 App2
デバイスシード
1つのパブリッシャー鍵で最大100台のPSMデバイスを管理できます。
デバイスシードからアプリ鍵が作られます。
アプリ鍵は、鍵束ファイルとして管理されます。アプリ鍵単品では管理されません。
パブリッシャーライセンス1つに付き1つ生成可能
・・・
パブリッシャー鍵が変わると、パブリッシャー鍵が変わると、パブリッシャー鍵が変わると、パブリッシャー鍵が変わると、すべてを更新する必要があります。すべてを更新する必要があります。すべてを更新する必要があります。すべてを更新する必要があります。
デバイスシードが変わると、デバイスシードが変わると、デバイスシードが変わると、デバイスシードが変わると、アプリアプリアプリアプリ鍵、アプリ鍵束を作り直し、鍵、アプリ鍵束を作り直し、鍵、アプリ鍵束を作り直し、鍵、アプリ鍵束を作り直し、
アプリを署名し直す必要があります。アプリを署名し直す必要があります。アプリを署名し直す必要があります。アプリを署名し直す必要があります。
アプリを実機テストする際のアプリを実機テストする際のアプリを実機テストする際のアプリを実機テストする際のbad knowbad knowbad knowbad know----howhowhowhow
Androidの設定
• 充電中にスリープモードにならないようにしておくことを推奨します
• (特にIS11Sは)自動回転もOffにしておいた方がよいです
PSM Development Assistant
• 再インストールしたら、前に使っていたアプリ鍵束を再作成してください
• (Android) プロセスが死なずに残っている場合も(残念ながら)あるので、 怪しい場合はAndroidの設定から強制停止させて下さい
• (Vita) 巨大ファイル(500MB以上とか)のアプリをインストールする場合は、スリープしないようにたまに画面タップしてあげてください (SDK 1.20で修正)
PSM Studio, PSM Publishing Utility
• PSM Device.exeというプロセスが残り続けるケースが(残念ながらかなり) あるので、その場合はタスクマネージャーから強制終了させてください
エラーコードとworkaroundの一覧を近日公開予定です
Submission & PublishingSubmission & PublishingSubmission & PublishingSubmission & Publishing
•PSMアプリ提出時のTips
•PSMアプリの審査を通過するためのTips
•PlayStation®StoreへのDirect Link
PSMPSMPSMPSMアプリ提出時のアプリ提出時のアプリ提出時のアプリ提出時のTipsTipsTipsTips
•PSMアプリのサポート言語
•販売する国/地域とアプリ説明
•卸売価格と販売価格
•暗号機能を利用する場合の手続き
•PSMアプリのステータス
PSMPSMPSMPSMアプリのサポート言語アプリのサポート言語アプリのサポート言語アプリのサポート言語
•アプリケーション内で利用される言語
•配信される国に応じた言語を用意することを推奨
•ただし、英語のみ・日本語のみといった場合でもリリースは可能
PSMアプリ提出時のTips
販売する国販売する国販売する国販売する国////地域とアプリ説明地域とアプリ説明地域とアプリ説明地域とアプリ説明
•国/地域に応じた言語の説明文が必要
PSMアプリ提出時のTips
アプリ説明の言語
販売国・地域
日本語
ドイツ語
イタリア語
スペイン語
フランス語
フランス語
(カナダ)
英語
(アメリカ)
英語
(カナダ)
英語
(イギリス)
英語
(オーストラリ
ア)
○
○
リア ○
○
○
ア リ ○
○ ○ ○ ○
リ ○ ○
リア ○ ○
内はいずれかがあればOK
卸売価格と販売価格卸売価格と販売価格卸売価格と販売価格卸売価格と販売価格
PSMアプリ提出時のTips
卸売価格と販売価格卸売価格と販売価格卸売価格と販売価格卸売価格と販売価格
PSMアプリ提出時のTips
卸値と販売価格の関係は業界標準と同等(ただし、デベロッパー様が指定するのは卸売価格になります。)
Ex.)卸値 USD 0.69 → 販売価格 USD 0.99
暗号機能を利用する暗号機能を利用する暗号機能を利用する暗号機能を利用する場合の手続き場合の手続き場合の手続き場合の手続き
•PSMアプリケーションに暗号機能を搭載・使用する場合は、輸出管理法令遵守のための手続きが必要
�暗号化アルゴリズムや用途などをフォームから申告
�FAQ「輸出管理法令遵守のための手続き」を参照
•ただし、PSM StudioのContent Protection機能のみを使用する場合は手続き不要
PSMアプリ提出時のTips
PSMPSMPSMPSMアプリアプリアプリアプリのステータスのステータスのステータスのステータス
PSMアプリ提出時のTips
ステータス 説明
Importing DevPortalがアップロードされたマスターパッケージを内部のデータベースに取り込んでいる状態です。
Editing Meta
Dataアップロードされたマスターパッケージに関連する卸売価格などのメタデータを編集している状態です。
Waiting For
ReviewPSMアプリケーションおよびメタデータの審査を待っている状態です。
Under ReviewPSMアプリケーションおよびメタデータが審査されている状態です。
審査にはおおよそ5営業日ほど頂いています。審査にはおおよそ5営業日ほど頂いています。審査にはおおよそ5営業日ほど頂いています。審査にはおおよそ5営業日ほど頂いています。
Rejected 審査中に問題が有り、差し戻されている状態です。"Publish"メニューから詳細をご確認下さい。
Preparing For
Release
PlayStation®Storeでの配信準備が進められている状態です。配信準備にはおおよそ5営業日ほど頂いています。配信準備にはおおよそ5営業日ほど頂いています。配信準備にはおおよそ5営業日ほど頂いています。配信準備にはおおよそ5営業日ほど頂いています。
ただし、ただし、ただし、ただし、SDK/RuntimeSDK/RuntimeSDK/RuntimeSDK/Runtimeアップデート時などは通常より時間を頂くことがございます。アップデート時などは通常より時間を頂くことがございます。アップデート時などは通常より時間を頂くことがございます。アップデート時などは通常より時間を頂くことがございます。
In Store Now PlayStation®StoreでPSMアプリケーションが販売されている状態です。
PSMPSMPSMPSMアプリのアプリのアプリのアプリの審査審査審査審査差し戻し理由の傾向と対策差し戻し理由の傾向と対策差し戻し理由の傾向と対策差し戻し理由の傾向と対策
•デバイス間で一貫性のある動作になっていない
•PSM Terminology Guide違反
•「ブラックアウト画面」、「画面停止状態」、または「無反応状態」の時間が5秒を超える
•アプリが途中でハングアップ/強制終了
デバイス間で一貫性のある動作になってデバイス間で一貫性のある動作になってデバイス間で一貫性のある動作になってデバイス間で一貫性のある動作になっていないいないいないいない
• ジャイロを使ったアクションを設定� 一部デバイスはジャイロが無いので、代替のUIもももも用意して下さい
• 画面が一部デバイスでチラつく/見切れる� PSM Simulatorで複数の解像度を指定してテストして下さい
• 一部のデバイスで利用可能な機能に大きく差がある� 同等の機能をエンドユーザに提供するようにして下さい
→ただし、現在、PSMアプリの動作に最適なOSや入力デバイスを
デベロッパー様が指定できるような仕組みの検討を進めております。
差し戻し理由の傾向と対策
PSM Terminology GuidePSM Terminology GuidePSM Terminology GuidePSM Terminology Guide違反違反違反違反
ボタンやタッチ操作についてゲーム内で言及する際は、
事前にTerminology Guideのチェックが必要
差し戻し理由の傾向と対策
違反の例)
○ “PlayStation®Mobile” × “PSMobile”
○ “right stick” × “right thumbstick”
○ “R/L button” × “right/left trigger”
○ “PRESS x button” × “Press X”
○ “□ button” × “SQUARE”
「ブラックアウト画面」、「画面停止状態」、または「無「ブラックアウト画面」、「画面停止状態」、または「無「ブラックアウト画面」、「画面停止状態」、または「無「ブラックアウト画面」、「画面停止状態」、または「無反応状態反応状態反応状態反応状態」の」の」の」の時間が時間が時間が時間が5555秒を超える秒を超える秒を超える秒を超える
•ステージの切り替えなどファイル読み込みが発生する箇所
•起動時のブラックアウトが長くなる
�何らかのアニメーションが表示されていればOK� UI ToolkitのBusyIndicatorなどの利用
� 読み込み処理は別スレッドで
差し戻し理由の傾向と対策
アプリが途中でハングアップアプリが途中でハングアップアプリが途中でハングアップアプリが途中でハングアップ////強制終了強制終了強制終了強制終了
• メモリが不足していた
� 解像度が高いデバイスでOut of Memory
� 日本語表示にしたらOut of Memory
� PSM Simulatorで解像度を指定して起動できるので、
Tabletなどを想定してテスト
• PSMランタイムのスレッドバグを踏んでいた (T T)
� SDK 1.11で修正されましたm(_ _)m
� 他にもありましたらDeveloper Forumsまで。
差し戻し理由の傾向と対策
PlayStation®StorePlayStation®StorePlayStation®StorePlayStation®StoreへのへのへのへのDirect LinkDirect LinkDirect LinkDirect Link
•指定したプロダクトの画面を起動するためのリンク
�プロダクトはProduct IDで指定
�Product IDはアプリ管理画面で確認可能
•サンプルのHTMLコードおよび標準のボタン画像を提供
PlayStation®StoreへのDirect Link
利用イメージ利用イメージ利用イメージ利用イメージ
②PS Storeアプリ/PSM for Androidが起動し、商品の個別ページに遷移する
①PS Vita/Androidのブラウザでリンクを踏む
HTMLHTMLHTMLHTMLコードの例コードの例コードの例コードの例
PS StorePS StorePS StorePS Storeを起動するを起動するを起動するを起動するURLURLURLURL
http://p0.dl.playstation.net/p0/psns/psnschk.htm?a=psns%3Abrowse%3Fproduct%3D[ProductID]&type=psm
Product ID Product ID Product ID Product ID がががが EM0041EM0041EM0041EM0041----NPOA00013_00NPOA00013_00NPOA00013_00NPOA00013_00----0000000000000000 0000000000000000 0000000000000000 0000000000000000 の場合の場合の場合の場合::::
http://p0.dl.playstation.net/p0/psns/psnschk.htm?a=psns%3Abrowse%3Fproduct%3DEM0041-NPOA00013_00-0000000000000000&type=psm
HTMLコードを生成するサポートページをご利用下さい。
PlayStation®StoreへのDirect Link
Product IDProduct IDProduct IDProduct IDの確認方法の確認方法の確認方法の確認方法
PlayStation®StoreへのDirect Link
プロジェクト名が入りますプロジェクト名が入りますプロジェクト名が入りますプロジェクト名が入ります
プロジェクト名が入りますプロジェクト名が入りますプロジェクト名が入りますプロジェクト名が入ります
プロジェクト名が入りますプロジェクト名が入りますプロジェクト名が入りますプロジェクト名が入ります
Product Product Product Product IDIDIDIDのののの付与されるタイミングは、付与されるタイミングは、付与されるタイミングは、付与されるタイミングは、ReviewReviewReviewReviewがががが完完完完了したときです。了したときです。了したときです。了したときです。
(ステータス(ステータス(ステータス(ステータスがががが「「「「Preparing For ReleasePreparing For ReleasePreparing For ReleasePreparing For Release」になるとき)」になるとき)」になるとき)」になるとき)
HTMLHTMLHTMLHTMLコードの生成方法コードの生成方法コードの生成方法コードの生成方法
PlayStation®StoreへのDirect Link
https://psm.playstation.net/static/general/dev/ja/promote.html?productid=(Product ID)
お問い合わせ先お問い合わせ先お問い合わせ先お問い合わせ先
技術的な内容については技術的な内容については技術的な内容については技術的な内容については
PSM DevForumsへ
お問い合わせ先お問い合わせ先お問い合わせ先お問い合わせ先
契約関連や個人情報を取り扱う必要のある場合は契約関連や個人情報を取り扱う必要のある場合は契約関連や個人情報を取り扱う必要のある場合は契約関連や個人情報を取り扱う必要のある場合は
FAQの下部に設置されたお問い合わせフォームへ
PSM Developer Night!(仮) 開催予定
•デベロッパーのみなさまと交流したい!
•PSMについて熱く語れる場をご用意予定!!
•詳細は別途ご連絡!!!
盛り上がるゼ!盛り上がるゼ!盛り上がるゼ!盛り上がるゼ!
PlayStation Mobile SDK プログラミング入門
----------------------------------------------------
・書名:『PlayStation Mobile SDKプログラミング入門』・監修:ソニー・コンピュータエンタテインメント・著者:菊田剛+桑原公一郎・仕様:B5変型判、448ページ(予定)・発刊:2013年年年年6月月月月26日(水)日(水)日(水)日(水)・予価:2800円(本体価格)・特徴:クラス構成から付属デモまでSDKを徹底攻略!
2D/3D/アプリ内課金の例題ゲーム三本を作成!----------------------------------------------------
※カバー画像は制作中のものです
ご清聴ありがとうございました!