Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Windows Phone 7 と XNA の世界

Windows Phone 7 と XNA の世界

Windows Phone 7 上で動作するゲームの作成方法を、
簡易的なサンプルと実例を用いて説明したドキュメントです。

- スマートフォン勉強会@関東#14 ドキュメント
http://sumaben.jp/?SPWorkshopKanto14

Satoshi MIMURA

September 02, 2011
Tweet

More Decks by Satoshi MIMURA

Other Decks in Programming

Transcript

  1. 自己紹介 0 三村 聡志 ID : @mimura1133 0 このまえセプキャン行ってきたときに NHK

    に撮られた。 0 ウェブサイト http://mimumimu.net/ 0 ブログ http://mimumimu.net/blog/ 0 とりあえず、「mimura1133」で何かがヒットします WP7 + XNA - @mimura1133 2
  2. 内容 0 Windows Phone 7ってなに 0 XNAってなあに 0 PCでも使える基本的な開発方法 0

    Windows Phone 7 でつかえること。 WP7 + XNA - @mimura1133 3
  3. 入る前に。 0 Windows Phone 7 日本発売 おめでとうございます。 0 私も Windows

    Phone 7 ユーザです。 0 ついでに Windows 7 ユーザです。 0 でも、 Windows 7 Phone ユーザではありません。 WP7 + XNA - @mimura1133 4
  4. Windows Phone ≄ iPhone 0 iPhone は iPhone なのです。 0

    Windows Phone は Windows Phone なのです。 0 多分無いと思いますが、 どこかのおばちゃん、おじちゃんのように、 ああ、 Microsoft の iPhone かー などとは言わないように。 0 iPhone もWP7も、良いスマートフォンなのです。 WP7 + XNA - @mimura1133 5
  5. WM6 → Windows Phone 7 0 超さくさく動くよ! 0 Metro UI

    の採用で わかりやすいよ! 0 ネイティブコード 使えないけどいいよね。 0 XNAでゲーム書けるよ! WP7 + XNA - @mimura1133 6
  6. Windows Phone 7 でゲーム 0 メニュー内の Games の中に入っ てる。 0

    現時点で結構な数の ゲームがある。 0 XNA を使って開発をする。 0 Xbox の時ほどのもっさりはない。 WP7 + XNA - @mimura1133 7
  7. XNA とは? 0 XNA‘s Not Acronymed (XNAは頭字語ではないよっ! 0 Microsoft 社の簡単かつ本格的なゲーム開発環境

    0 PC と Xbox と Windows Phone を ターゲットに出来る。 0 まさに「3スクリーン+クラウド」の 「3スクリーン」ですね! WP7 + XNA - @mimura1133 8
  8. XNA を使う利点 0 .NET Framework 上となるため、 移植性が高いコードが書ける。 0 ゲームを開発していてありがちな、メモリリークを 始めとする、

    メモリの問題をあまり気にしなくていい。 0 そもそも C# のパワーを最大限に活かせる! WP7 + XNA - @mimura1133 9
  9. 必要なもの 0 気合い、探求心、最後までやろうとする気持ち 0 Windows Vista or 7 0 3GB

    以上のディスクの空き 0 2GB の メモリ 0 DirectX 10 もしくはそれ以降に対応する グラフィックスカード 0 WDDM 1.1 のドライバ 0 分からなければ、 DirectX Caps Viewer Tool で調べるといいとおもう よ! WP7 + XNA - @mimura1133 12
  10. 必要条件が揃わない場合 0 OS が間に合わない場合は、以下で間に合います。 0 DreamSpark ( http://www.dreamspark.com/ ) 0

    MSDN AA ( 各学校に聞いて下さい。 ) 0 MSDN Subscription 0 などなど WP7 + XNA - @mimura1133 14
  11. プロジェクトを作る 0 1.XNA Game Studio 4.0 を選ぶ 0 2.Windows Phone

    ゲームを選ぶ 0 3.名前設定 WP7 + XNA - @mimura1133 16
  12. コードの流れ 起動 終了 Initalize (初期化処理) LoadContent (読み込み処理) Update (更新処理) UnloadContent

    (解放処理) Draw (描画処理) 起動 終了 ゲーム中 WP7 + XNA - @mimura1133 19
  13. こう書けばいい 0 LoadContent 画像読み込みとか、モデル読み込みのコード 0 Update コントローラの動きを見て動かすとか、 衝突判定とか 0 Draw

    描画命令をどっさりと 0 UnloadContent リソースの解放処理を書く。(あれば) WP7 + XNA - @mimura1133 20
  14. さんぷる:画像表示 0 コード上部「SpriteBatch spriteBatch」付近に下記を追記 Texture2D texture 0 LoadContent の TODO:

    の下に、下記を追記 this.texture = this.Content.Load<Texture2D>(“pics”); 注:読み込んだ名前に合わせる。今回の場合は 「pics」 0 Draw の TODO: の下に、下記を追記 spriteBatch.Begin(); spriteBatch.Draw(this.texture, Vector2.Zero,Color.White); spriteBatch.End(); WP7 + XNA - @mimura1133 22
  15. さんぷる:文字表示 0 コード上部「SpriteBatch spriteBatch」付近に下記を追記 SpriteFont font; 0 LoadContent の TODO:

    の下に、下記を追記 this.font = this.Content.Load<SpriteFont>("SpriteFont1"); 注:読み込んだ名前に合わせる。 0 Draw の spriteBatch.Begin();の下に、下記を追記 spriteBatch.DrawString(this.font, "HELLO WORLD",Vector2.One,Color.Red); WP7 + XNA - @mimura1133 26
  16. 入力デバイス デバイス名 クラス名 キーボード Microsoft.Xna.Framework.Input.Keyboard マウス Microsoft.Xna.Framework.Input.Mouse ゲームパッド (Xbox コントローラ)

    Microsoft.Xna.Framework.Input.GamePad タッチパネル Microsoft.Xna.Framework.Input.Touch.TouchPanel XNAで標準提供しているデバイス: WP7 + XNA - @mimura1133 33
  17. タッチして画像を動かす 0 コード上部の using… の部分に、下記を追記 using Microsoft.Xna.Framework.Input.Touch; 0 Initialize() の

    TODO: の下に下記を追記 TouchPanel.EnabledGestures = GestureType.FreeDrag; WP7 + XNA - @mimura1133 35
  18. タッチして画像を動かす 0 SpriteBatch spriteBatch; がある箇所に下記を追記: Vector2 vec; 0 Initialize() の

    TouchPanel… の下に下記を追記: this.vec = Vector2.Zero; 0 Update() の TODO: の下に下記を追記: if (TouchPanel.IsGestureAvailable) this.vec = TouchPanel.ReadGesture().Position – Vector2.One * 100; WP7 + XNA - @mimura1133 36
  19. コメント 0 その他 XNA では 3D をバリバリ使った開発や、 Windows Phone 7

    をばしばし使った開発、 などなどできますが、 私より後の、 私よりもはるかにできる方に ・・頼みます。(ぉ WP7 + XNA - @mimura1133 39
  20. 最後に 0 XNA – ソーサリフォース (まずはここから) http://sorceryforce.com/xna/ 0 ひにけにXNA (XNA

    最先端情報) http://blogs.msdn.com/b/ito/ 0 APP HUB (投稿場所) http://create.msdn.com/ja-JP 0 そんなわけで、どんどん遊びましょう! WP7 + XNA - @mimura1133 42
  21. 余談 0 IDA Pro とかでバイナリみるの大好きな人 0 C# で開発するのが大好きな人 0 DLL

    Injection とかしちゃうぜ! な人 0 C は好きだぜって人 0 Windows API はいいよね! 惚れちゃう な人 0 変態行為(Ex. SUA 使ったお遊び)大好きな人 0 該当する人 → ぜひとも連絡先教えてください! Twitter : @mimura1133 Facebook : Satoshi Mimura WP7 + XNA - @mimura1133 43