SlideShare a Scribd company logo
1 of 13
ゲームを作るときはね
誰にも邪魔されず
自由で なんというか
救われてなきゃあ ダメなんだ…




               Windows Phone!
              そういうのもあるのか
                   MOTO SQUARE SOLUTION
                                もとひろん
はじめに
   Windows Phoneとは?
       MS製のスマートフォン用
        OS
       C#によるアプリケーション
        開発
       既定されたハードウェア要
        件


   目的とゴール
       3D描画は驚くほど簡単
       UIは視覚的に構築可能
       Windows Phone!
        そういうのもあるのか!
アジェンダ
   開発環境について
   開発プラットフォーム
   XNAによる開発
   Silverlightによる開発
   XNAとSilverlight
   その他の機能
開発環境について
   開発環境は無料
       Windows Phone SDK 7.1
           Visual Studio 2010
            Express
           Windows Phone Emulator
       高性能なエミュレータ
           各種センサをシミュレー
            ト


   アプリの公開は有料
       AppHubへ登録が必
        要
           年間9,800円
           実機の動作確認も同様
開発プラットフォーム
   2種類のフレームワーク
       XNA
           ゲームの開発に最適
       Silverlight
           UIの開発に最適


   利点を活かした開発が可
    能
       画面ごとに使い分ける
           ゲーム画面はXNA
           設定画面はSilverlight
       一つの画面で使い分ける
XNAによる開発
   ゲームループ型の開発
       描画処理と更新処理が無限
        ループで実行

   ハイパフォーマンス
       1秒間に約30回のループ      描画          更新
                        (OnDraw)   (OnUpdate)
       高速な描画・正確な更新

   コンテンツデータの利用
       2D画像、3Dモデル、音楽
        ファイル、動画ファイル、
        etc…
XNAによる開発(デモ)
   3Dモデルの描画手順は
    たったのこれだけ
       3Dモデルを追加
       3Dモデルを読み込み(2
        行)
       3つの行列を設定(3行)
           ワールド行列(モデルの座
            標)
           ビュー行列(カメラの座
            標)
           プロジェクション行列(レ
            ンズ)
       3Dモデルを描画(1行)
Silverlightによる開発
   イベントドリブン型の
    開発
       UIコントロールから発生
        する各種イベントを利用


   豊富なUIコントロール
       ボタン、テキストボック
        ス、テキストブロック、
        etc…


   視覚的にUIを構築可能
       UIコントロールの配置
       各種プロパティの設定
Silverlightによる開発(デモ)
   ボタンを押下するとテ
    キストボックスをクリ
    アする
       UIコントロールを配置
       各種プロパティを設定
       Clickイベントを設定
       イベントハンドラを実装
XNAとSilverlight
   利点を活かした開発が可能
       画面ごとに使い分ける
       一つの画面で使い分ける
           3D描画はXNA
           UI部分はSilverlight
XNAとSilverlight
   一つの画面で使い分け
    る                       XAML            クラス
       XNAのゲームループと
        Silverlightのイベントハ
        ンドラが同一クラスに混                            ゲーム
        在                                      ループ
       メンバーの共有が可能                           (XNA)

                                 UI
                            (Silverlight)
   XNAとSilverlightが
                                              イベント
    相互に干渉可能                                   ハンドラ
       UIコントロールのイベン                        (Silverlight)
        トから3Dモデルを操作
       XNAのゲームループか
        らUIコントロールを操作
その他の機能
   入力デバイス・センサー
       タッチパネル(4点以上のマルチタッチ)
       カメラ、GPS、加速度、ジャイロ、コンパス
   分離ストレージ
       設定情報など単一データの保存に利用
       ファイルもしくはディクショナリ形式
   ローカルデータベース
       スコア情報など複数データの保存に利用
       オブジェクトベース(SQLを利用しない)
   ネットワーク
       Socketクラス、WCF、Windows Azure
さいごに
   ソースコードは後日公
    開
       http://moto-square.com/

   CodeZineに掲載
       Windows Phone 7.5で
        つくる3Dアプリケーショ
        ン
       詳細な実装方法を解説

   日経ソフトウェアに連
    載中
       C#に関する萌えマンガ
       読んでいただければ
        幸いです!

More Related Content

Viewers also liked

History & Practices for UniRx(EN)
History & Practices for UniRx(EN)History & Practices for UniRx(EN)
History & Practices for UniRx(EN)Yoshifumi Kawai
 
C# design note sep 2014
C# design note sep 2014C# design note sep 2014
C# design note sep 2014信之 岩永
 
LightNode - Micro RPC/REST Framework
LightNode - Micro RPC/REST FrameworkLightNode - Micro RPC/REST Framework
LightNode - Micro RPC/REST FrameworkYoshifumi Kawai
 
An Internal of LINQ to Objects
An Internal of LINQ to ObjectsAn Internal of LINQ to Objects
An Internal of LINQ to ObjectsYoshifumi Kawai
 
How to Make Own Framework built on OWIN
How to Make Own Framework built on OWINHow to Make Own Framework built on OWIN
How to Make Own Framework built on OWINYoshifumi Kawai
 
.NET Compiler Platform
.NET Compiler Platform.NET Compiler Platform
.NET Compiler Platform信之 岩永
 
The History of Reactive Extensions
The History of Reactive ExtensionsThe History of Reactive Extensions
The History of Reactive ExtensionsYoshifumi Kawai
 
A Framework for LightUp Applications of Grani
A Framework for LightUp Applications of GraniA Framework for LightUp Applications of Grani
A Framework for LightUp Applications of GraniYoshifumi Kawai
 
UniRx - Reactive Extensions for Unity
UniRx - Reactive Extensions for UnityUniRx - Reactive Extensions for Unity
UniRx - Reactive Extensions for UnityYoshifumi Kawai
 
AWS + Windows(C#)で構築する.NET最先端技術によるハイパフォーマンスウェブアプリケーション開発実践
AWS + Windows(C#)で構築する.NET最先端技術によるハイパフォーマンスウェブアプリケーション開発実践AWS + Windows(C#)で構築する.NET最先端技術によるハイパフォーマンスウェブアプリケーション開発実践
AWS + Windows(C#)で構築する.NET最先端技術によるハイパフォーマンスウェブアプリケーション開発実践Yoshifumi Kawai
 
Reactive Programming by UniRx for Asynchronous & Event Processing
Reactive Programming by UniRx for Asynchronous & Event ProcessingReactive Programming by UniRx for Asynchronous & Event Processing
Reactive Programming by UniRx for Asynchronous & Event ProcessingYoshifumi Kawai
 
History & Practices for UniRx UniRxの歴史、或いは開発(中)タイトルの用例と落とし穴の回避法
History & Practices for UniRx UniRxの歴史、或いは開発(中)タイトルの用例と落とし穴の回避法History & Practices for UniRx UniRxの歴史、或いは開発(中)タイトルの用例と落とし穴の回避法
History & Practices for UniRx UniRxの歴史、或いは開発(中)タイトルの用例と落とし穴の回避法Yoshifumi Kawai
 
Introduction to NotifyPropertyChangedGenerator
Introduction to NotifyPropertyChangedGeneratorIntroduction to NotifyPropertyChangedGenerator
Introduction to NotifyPropertyChangedGeneratorYoshifumi Kawai
 
ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発
ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発
ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発慎一 古賀
 
LINQPad with LINQ to BigQuery - Desktop Client for BigQuery
LINQPad with LINQ to BigQuery - Desktop Client for BigQueryLINQPad with LINQ to BigQuery - Desktop Client for BigQuery
LINQPad with LINQ to BigQuery - Desktop Client for BigQueryYoshifumi Kawai
 
Metaprogramming Universe in C# - 実例に見るILからRoslynまでの活用例
Metaprogramming Universe in C# - 実例に見るILからRoslynまでの活用例Metaprogramming Universe in C# - 実例に見るILからRoslynまでの活用例
Metaprogramming Universe in C# - 実例に見るILからRoslynまでの活用例Yoshifumi Kawai
 

Viewers also liked (20)

History & Practices for UniRx(EN)
History & Practices for UniRx(EN)History & Practices for UniRx(EN)
History & Practices for UniRx(EN)
 
Interaction channel
Interaction channelInteraction channel
Interaction channel
 
C# design note sep 2014
C# design note sep 2014C# design note sep 2014
C# design note sep 2014
 
LightNode - Micro RPC/REST Framework
LightNode - Micro RPC/REST FrameworkLightNode - Micro RPC/REST Framework
LightNode - Micro RPC/REST Framework
 
An Internal of LINQ to Objects
An Internal of LINQ to ObjectsAn Internal of LINQ to Objects
An Internal of LINQ to Objects
 
How to Make Own Framework built on OWIN
How to Make Own Framework built on OWINHow to Make Own Framework built on OWIN
How to Make Own Framework built on OWIN
 
C++勉強会
C++勉強会C++勉強会
C++勉強会
 
C#の書き方
C#の書き方C#の書き方
C#の書き方
 
LINQ in Unity
LINQ in UnityLINQ in Unity
LINQ in Unity
 
.NET Compiler Platform
.NET Compiler Platform.NET Compiler Platform
.NET Compiler Platform
 
The History of Reactive Extensions
The History of Reactive ExtensionsThe History of Reactive Extensions
The History of Reactive Extensions
 
A Framework for LightUp Applications of Grani
A Framework for LightUp Applications of GraniA Framework for LightUp Applications of Grani
A Framework for LightUp Applications of Grani
 
UniRx - Reactive Extensions for Unity
UniRx - Reactive Extensions for UnityUniRx - Reactive Extensions for Unity
UniRx - Reactive Extensions for Unity
 
AWS + Windows(C#)で構築する.NET最先端技術によるハイパフォーマンスウェブアプリケーション開発実践
AWS + Windows(C#)で構築する.NET最先端技術によるハイパフォーマンスウェブアプリケーション開発実践AWS + Windows(C#)で構築する.NET最先端技術によるハイパフォーマンスウェブアプリケーション開発実践
AWS + Windows(C#)で構築する.NET最先端技術によるハイパフォーマンスウェブアプリケーション開発実践
 
Reactive Programming by UniRx for Asynchronous & Event Processing
Reactive Programming by UniRx for Asynchronous & Event ProcessingReactive Programming by UniRx for Asynchronous & Event Processing
Reactive Programming by UniRx for Asynchronous & Event Processing
 
History & Practices for UniRx UniRxの歴史、或いは開発(中)タイトルの用例と落とし穴の回避法
History & Practices for UniRx UniRxの歴史、或いは開発(中)タイトルの用例と落とし穴の回避法History & Practices for UniRx UniRxの歴史、或いは開発(中)タイトルの用例と落とし穴の回避法
History & Practices for UniRx UniRxの歴史、或いは開発(中)タイトルの用例と落とし穴の回避法
 
Introduction to NotifyPropertyChangedGenerator
Introduction to NotifyPropertyChangedGeneratorIntroduction to NotifyPropertyChangedGenerator
Introduction to NotifyPropertyChangedGenerator
 
ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発
ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発
ちゃんとした C# プログラムを書けるようになる実践的な方法~ Visual Studio を使った 高品質・低コスト・保守性の高い開発
 
LINQPad with LINQ to BigQuery - Desktop Client for BigQuery
LINQPad with LINQ to BigQuery - Desktop Client for BigQueryLINQPad with LINQ to BigQuery - Desktop Client for BigQuery
LINQPad with LINQ to BigQuery - Desktop Client for BigQuery
 
Metaprogramming Universe in C# - 実例に見るILからRoslynまでの活用例
Metaprogramming Universe in C# - 実例に見るILからRoslynまでの活用例Metaprogramming Universe in C# - 実例に見るILからRoslynまでの活用例
Metaprogramming Universe in C# - 実例に見るILからRoslynまでの活用例
 

Similar to Windows phone!そういうのもあるのか

20110212 Silverlight から Bing Maps に触れる
20110212 Silverlight から Bing Maps に触れる20110212 Silverlight から Bing Maps に触れる
20110212 Silverlight から Bing Maps に触れるKenji Wada
 
Androidのライブ壁紙について
Androidのライブ壁紙についてAndroidのライブ壁紙について
Androidのライブ壁紙についてyoropan
 
クロスプラットフォーム開発としての「Mixed Reality Toolkit V2」が持つ可能性
クロスプラットフォーム開発としての「Mixed Reality Toolkit V2」が持つ可能性クロスプラットフォーム開発としての「Mixed Reality Toolkit V2」が持つ可能性
クロスプラットフォーム開発としての「Mixed Reality Toolkit V2」が持つ可能性Takahiro Miyaura
 
Windows8 最新技術動向
Windows8 最新技術動向Windows8 最新技術動向
Windows8 最新技術動向yaju88
 
Cerebro for VFX / Animation Japan
Cerebro for VFX / Animation JapanCerebro for VFX / Animation Japan
Cerebro for VFX / Animation JapanCineSoft
 
XNAでモバイルゲームを作ろう
XNAでモバイルゲームを作ろうXNAでモバイルゲームを作ろう
XNAでモバイルゲームを作ろうTakashi Nakamura
 
Unreal Engine でアプリ開発~ MRTK UXTools for Unreal V0.9.0 ~
Unreal Engine でアプリ開発~ MRTK UXTools for Unreal V0.9.0 ~Unreal Engine でアプリ開発~ MRTK UXTools for Unreal V0.9.0 ~
Unreal Engine でアプリ開発~ MRTK UXTools for Unreal V0.9.0 ~Takahiro Miyaura
 
Windowsフォームで大丈夫か?一番良いのを頼む。
Windowsフォームで大丈夫か?一番良いのを頼む。Windowsフォームで大丈夫か?一番良いのを頼む。
Windowsフォームで大丈夫か?一番良いのを頼む。Yuya Yamaki
 
N01_多様に活用可能なマイクロソフトのゲーム関連技術や開発の DX ~高品質リアルタイムビジュアライズのリモート活用からリアルタイムコラボレーションま...
N01_多様に活用可能なマイクロソフトのゲーム関連技術や開発の DX  ~高品質リアルタイムビジュアライズのリモート活用からリアルタイムコラボレーションま...N01_多様に活用可能なマイクロソフトのゲーム関連技術や開発の DX  ~高品質リアルタイムビジュアライズのリモート活用からリアルタイムコラボレーションま...
N01_多様に活用可能なマイクロソフトのゲーム関連技術や開発の DX ~高品質リアルタイムビジュアライズのリモート活用からリアルタイムコラボレーションま...日本マイクロソフト株式会社
 
Unity講習会
Unity講習会Unity講習会
Unity講習会MASA_T_O
 
GTMF2012 SpriteStudio と "Unity" と "CoronaSDK" と "ngCore" ! ~組み合わせて改善する 2D ワーク...
GTMF2012 SpriteStudio と "Unity" と "CoronaSDK" と "ngCore" ! ~組み合わせて改善する 2D ワーク...GTMF2012 SpriteStudio と "Unity" と "CoronaSDK" と "ngCore" ! ~組み合わせて改善する 2D ワーク...
GTMF2012 SpriteStudio と "Unity" と "CoronaSDK" と "ngCore" ! ~組み合わせて改善する 2D ワーク...Web Technology Corp.
 
Smartphone ui:ux」 de na creative seminar vol.1 レポート
Smartphone ui:ux」 de na creative seminar vol.1 レポートSmartphone ui:ux」 de na creative seminar vol.1 レポート
Smartphone ui:ux」 de na creative seminar vol.1 レポートMasaru Kimura
 
改めて注目される2D アニメーションツール SpriteStudio ~国産2Dツールが(舶来ゲームエンジンの力を借りながら)世界へ~
改めて注目される2D アニメーションツール SpriteStudio ~国産2Dツールが(舶来ゲームエンジンの力を借りながら)世界へ~改めて注目される2D アニメーションツール SpriteStudio ~国産2Dツールが(舶来ゲームエンジンの力を借りながら)世界へ~
改めて注目される2D アニメーションツール SpriteStudio ~国産2Dツールが(舶来ゲームエンジンの力を借りながら)世界へ~Web Technology Corp.
 
剣と魔法のログレス いにしえの女神 〜スマホ時代の MMORPG を支える技術
剣と魔法のログレス いにしえの女神 〜スマホ時代の MMORPG を支える技術剣と魔法のログレス いにしえの女神 〜スマホ時代の MMORPG を支える技術
剣と魔法のログレス いにしえの女神 〜スマホ時代の MMORPG を支える技術Satoshi Yamafuji
 
Unity 名古屋セミナー [Sprite Studio]
Unity 名古屋セミナー [Sprite Studio]Unity 名古屋セミナー [Sprite Studio]
Unity 名古屋セミナー [Sprite Studio]MakotoItoh
 
ソーシャルゲームとスマフォアプリとクラウドの関係
ソーシャルゲームとスマフォアプリとクラウドの関係ソーシャルゲームとスマフォアプリとクラウドの関係
ソーシャルゲームとスマフォアプリとクラウドの関係gipwest
 
スマ研第2回レポート
スマ研第2回レポートスマ研第2回レポート
スマ研第2回レポートShinpei Niiyama
 

Similar to Windows phone!そういうのもあるのか (20)

Silverlightの今
Silverlightの今Silverlightの今
Silverlightの今
 
20110212 Silverlight から Bing Maps に触れる
20110212 Silverlight から Bing Maps に触れる20110212 Silverlight から Bing Maps に触れる
20110212 Silverlight から Bing Maps に触れる
 
Androidのライブ壁紙について
Androidのライブ壁紙についてAndroidのライブ壁紙について
Androidのライブ壁紙について
 
クロスプラットフォーム開発としての「Mixed Reality Toolkit V2」が持つ可能性
クロスプラットフォーム開発としての「Mixed Reality Toolkit V2」が持つ可能性クロスプラットフォーム開発としての「Mixed Reality Toolkit V2」が持つ可能性
クロスプラットフォーム開発としての「Mixed Reality Toolkit V2」が持つ可能性
 
Windows8 最新技術動向
Windows8 最新技術動向Windows8 最新技術動向
Windows8 最新技術動向
 
Cerebro for VFX / Animation Japan
Cerebro for VFX / Animation JapanCerebro for VFX / Animation Japan
Cerebro for VFX / Animation Japan
 
XNAでモバイルゲームを作ろう
XNAでモバイルゲームを作ろうXNAでモバイルゲームを作ろう
XNAでモバイルゲームを作ろう
 
Unreal Engine でアプリ開発~ MRTK UXTools for Unreal V0.9.0 ~
Unreal Engine でアプリ開発~ MRTK UXTools for Unreal V0.9.0 ~Unreal Engine でアプリ開発~ MRTK UXTools for Unreal V0.9.0 ~
Unreal Engine でアプリ開発~ MRTK UXTools for Unreal V0.9.0 ~
 
Windowsフォームで大丈夫か?一番良いのを頼む。
Windowsフォームで大丈夫か?一番良いのを頼む。Windowsフォームで大丈夫か?一番良いのを頼む。
Windowsフォームで大丈夫か?一番良いのを頼む。
 
N01_多様に活用可能なマイクロソフトのゲーム関連技術や開発の DX ~高品質リアルタイムビジュアライズのリモート活用からリアルタイムコラボレーションま...
N01_多様に活用可能なマイクロソフトのゲーム関連技術や開発の DX  ~高品質リアルタイムビジュアライズのリモート活用からリアルタイムコラボレーションま...N01_多様に活用可能なマイクロソフトのゲーム関連技術や開発の DX  ~高品質リアルタイムビジュアライズのリモート活用からリアルタイムコラボレーションま...
N01_多様に活用可能なマイクロソフトのゲーム関連技術や開発の DX ~高品質リアルタイムビジュアライズのリモート活用からリアルタイムコラボレーションま...
 
Bar Vsug04 Masami Suzuki Windows7 UI
Bar Vsug04 Masami Suzuki Windows7 UIBar Vsug04 Masami Suzuki Windows7 UI
Bar Vsug04 Masami Suzuki Windows7 UI
 
Unity講習会
Unity講習会Unity講習会
Unity講習会
 
GTMF2012 SpriteStudio と "Unity" と "CoronaSDK" と "ngCore" ! ~組み合わせて改善する 2D ワーク...
GTMF2012 SpriteStudio と "Unity" と "CoronaSDK" と "ngCore" ! ~組み合わせて改善する 2D ワーク...GTMF2012 SpriteStudio と "Unity" と "CoronaSDK" と "ngCore" ! ~組み合わせて改善する 2D ワーク...
GTMF2012 SpriteStudio と "Unity" と "CoronaSDK" と "ngCore" ! ~組み合わせて改善する 2D ワーク...
 
Smartphone ui:ux」 de na creative seminar vol.1 レポート
Smartphone ui:ux」 de na creative seminar vol.1 レポートSmartphone ui:ux」 de na creative seminar vol.1 レポート
Smartphone ui:ux」 de na creative seminar vol.1 レポート
 
改めて注目される2D アニメーションツール SpriteStudio ~国産2Dツールが(舶来ゲームエンジンの力を借りながら)世界へ~
改めて注目される2D アニメーションツール SpriteStudio ~国産2Dツールが(舶来ゲームエンジンの力を借りながら)世界へ~改めて注目される2D アニメーションツール SpriteStudio ~国産2Dツールが(舶来ゲームエンジンの力を借りながら)世界へ~
改めて注目される2D アニメーションツール SpriteStudio ~国産2Dツールが(舶来ゲームエンジンの力を借りながら)世界へ~
 
剣と魔法のログレス いにしえの女神 〜スマホ時代の MMORPG を支える技術
剣と魔法のログレス いにしえの女神 〜スマホ時代の MMORPG を支える技術剣と魔法のログレス いにしえの女神 〜スマホ時代の MMORPG を支える技術
剣と魔法のログレス いにしえの女神 〜スマホ時代の MMORPG を支える技術
 
Unity開発ロードマップ最新情報
Unity開発ロードマップ最新情報Unity開発ロードマップ最新情報
Unity開発ロードマップ最新情報
 
Unity 名古屋セミナー [Sprite Studio]
Unity 名古屋セミナー [Sprite Studio]Unity 名古屋セミナー [Sprite Studio]
Unity 名古屋セミナー [Sprite Studio]
 
ソーシャルゲームとスマフォアプリとクラウドの関係
ソーシャルゲームとスマフォアプリとクラウドの関係ソーシャルゲームとスマフォアプリとクラウドの関係
ソーシャルゲームとスマフォアプリとクラウドの関係
 
スマ研第2回レポート
スマ研第2回レポートスマ研第2回レポート
スマ研第2回レポート
 

More from 信之 岩永

YouTube ライブ配信するようになった話
YouTube ライブ配信するようになった話YouTube ライブ配信するようになった話
YouTube ライブ配信するようになった話信之 岩永
 
C# コンパイラーの書き換え作業の話
C# コンパイラーの書き換え作業の話C# コンパイラーの書き換え作業の話
C# コンパイラーの書き換え作業の話信之 岩永
 
Unicode文字列処理
Unicode文字列処理Unicode文字列処理
Unicode文字列処理信之 岩永
 
C# 8.0 非同期ストリーム
C# 8.0 非同期ストリームC# 8.0 非同期ストリーム
C# 8.0 非同期ストリーム信之 岩永
 
C# 8.0 null許容参照型
C# 8.0 null許容参照型C# 8.0 null許容参照型
C# 8.0 null許容参照型信之 岩永
 
C# 8.0 Preview in Visual Studio 2019 (16.0)
C# 8.0 Preview in Visual Studio 2019 (16.0)C# 8.0 Preview in Visual Studio 2019 (16.0)
C# 8.0 Preview in Visual Studio 2019 (16.0)信之 岩永
 
async/await のしくみ
async/await のしくみasync/await のしくみ
async/await のしくみ信之 岩永
 
.NET Core 2.x 時代の C#
.NET Core 2.x 時代の C#.NET Core 2.x 時代の C#
.NET Core 2.x 時代の C#信之 岩永
 
C# 7.2 with .NET Core 2.1
C# 7.2 with .NET Core 2.1C# 7.2 with .NET Core 2.1
C# 7.2 with .NET Core 2.1信之 岩永
 
C#言語機能の作り方
C#言語機能の作り方C#言語機能の作り方
C#言語機能の作り方信之 岩永
 
Unityで使える C# 6.0~と .NET 4.6
Unityで使える C# 6.0~と .NET 4.6Unityで使える C# 6.0~と .NET 4.6
Unityで使える C# 6.0~と .NET 4.6信之 岩永
 
それっぽく、適当に
それっぽく、適当にそれっぽく、適当に
それっぽく、適当に信之 岩永
 
Orange Cube 自社フレームワーク 2015/3
Orange Cube 自社フレームワーク 2015/3Orange Cube 自社フレームワーク 2015/3
Orange Cube 自社フレームワーク 2015/3信之 岩永
 
Code Contracts in .NET 4
Code Contracts in .NET 4Code Contracts in .NET 4
Code Contracts in .NET 4信之 岩永
 
今から始める、Windows 10&新.NETへの移行戦略
今から始める、Windows 10&新.NETへの移行戦略今から始める、Windows 10&新.NETへの移行戦略
今から始める、Windows 10&新.NETへの移行戦略信之 岩永
 
今から始める、Windows 10&新.NETへの移行戦略
今から始める、Windows 10&新.NETへの移行戦略今から始める、Windows 10&新.NETへの移行戦略
今から始める、Windows 10&新.NETへの移行戦略信之 岩永
 

More from 信之 岩永 (20)

YouTube ライブ配信するようになった話
YouTube ライブ配信するようになった話YouTube ライブ配信するようになった話
YouTube ライブ配信するようになった話
 
C# 9.0 / .NET 5.0
C# 9.0 / .NET 5.0C# 9.0 / .NET 5.0
C# 9.0 / .NET 5.0
 
C# コンパイラーの書き換え作業の話
C# コンパイラーの書き換え作業の話C# コンパイラーの書き換え作業の話
C# コンパイラーの書き換え作業の話
 
Unicode文字列処理
Unicode文字列処理Unicode文字列処理
Unicode文字列処理
 
C# 8.0 非同期ストリーム
C# 8.0 非同期ストリームC# 8.0 非同期ストリーム
C# 8.0 非同期ストリーム
 
C# 8.0 null許容参照型
C# 8.0 null許容参照型C# 8.0 null許容参照型
C# 8.0 null許容参照型
 
C# 8.0 Preview in Visual Studio 2019 (16.0)
C# 8.0 Preview in Visual Studio 2019 (16.0)C# 8.0 Preview in Visual Studio 2019 (16.0)
C# 8.0 Preview in Visual Studio 2019 (16.0)
 
async/await のしくみ
async/await のしくみasync/await のしくみ
async/await のしくみ
 
.NET Core 2.x 時代の C#
.NET Core 2.x 時代の C#.NET Core 2.x 時代の C#
.NET Core 2.x 時代の C#
 
C# 7.2 with .NET Core 2.1
C# 7.2 with .NET Core 2.1C# 7.2 with .NET Core 2.1
C# 7.2 with .NET Core 2.1
 
C#言語機能の作り方
C#言語機能の作り方C#言語機能の作り方
C#言語機能の作り方
 
Unityで使える C# 6.0~と .NET 4.6
Unityで使える C# 6.0~と .NET 4.6Unityで使える C# 6.0~と .NET 4.6
Unityで使える C# 6.0~と .NET 4.6
 
それっぽく、適当に
それっぽく、適当にそれっぽく、適当に
それっぽく、適当に
 
Modern .NET
Modern .NETModern .NET
Modern .NET
 
Deep Dive C# 6.0
Deep Dive C# 6.0Deep Dive C# 6.0
Deep Dive C# 6.0
 
Orange Cube 自社フレームワーク 2015/3
Orange Cube 自社フレームワーク 2015/3Orange Cube 自社フレームワーク 2015/3
Orange Cube 自社フレームワーク 2015/3
 
Code Contracts in .NET 4
Code Contracts in .NET 4Code Contracts in .NET 4
Code Contracts in .NET 4
 
今から始める、Windows 10&新.NETへの移行戦略
今から始める、Windows 10&新.NETへの移行戦略今から始める、Windows 10&新.NETへの移行戦略
今から始める、Windows 10&新.NETへの移行戦略
 
今から始める、Windows 10&新.NETへの移行戦略
今から始める、Windows 10&新.NETへの移行戦略今から始める、Windows 10&新.NETへの移行戦略
今から始める、Windows 10&新.NETへの移行戦略
 
.NET vNext
.NET vNext.NET vNext
.NET vNext
 

Windows phone!そういうのもあるのか

  • 1. ゲームを作るときはね 誰にも邪魔されず 自由で なんというか 救われてなきゃあ ダメなんだ… Windows Phone! そういうのもあるのか MOTO SQUARE SOLUTION もとひろん
  • 2. はじめに  Windows Phoneとは?  MS製のスマートフォン用 OS  C#によるアプリケーション 開発  既定されたハードウェア要 件  目的とゴール  3D描画は驚くほど簡単  UIは視覚的に構築可能  Windows Phone! そういうのもあるのか!
  • 3. アジェンダ  開発環境について  開発プラットフォーム  XNAによる開発  Silverlightによる開発  XNAとSilverlight  その他の機能
  • 4. 開発環境について  開発環境は無料  Windows Phone SDK 7.1  Visual Studio 2010 Express  Windows Phone Emulator  高性能なエミュレータ  各種センサをシミュレー ト  アプリの公開は有料  AppHubへ登録が必 要  年間9,800円  実機の動作確認も同様
  • 5. 開発プラットフォーム  2種類のフレームワーク  XNA  ゲームの開発に最適  Silverlight  UIの開発に最適  利点を活かした開発が可 能  画面ごとに使い分ける  ゲーム画面はXNA  設定画面はSilverlight  一つの画面で使い分ける
  • 6. XNAによる開発  ゲームループ型の開発  描画処理と更新処理が無限 ループで実行  ハイパフォーマンス  1秒間に約30回のループ 描画 更新 (OnDraw) (OnUpdate)  高速な描画・正確な更新  コンテンツデータの利用  2D画像、3Dモデル、音楽 ファイル、動画ファイル、 etc…
  • 7. XNAによる開発(デモ)  3Dモデルの描画手順は たったのこれだけ  3Dモデルを追加  3Dモデルを読み込み(2 行)  3つの行列を設定(3行)  ワールド行列(モデルの座 標)  ビュー行列(カメラの座 標)  プロジェクション行列(レ ンズ)  3Dモデルを描画(1行)
  • 8. Silverlightによる開発  イベントドリブン型の 開発  UIコントロールから発生 する各種イベントを利用  豊富なUIコントロール  ボタン、テキストボック ス、テキストブロック、 etc…  視覚的にUIを構築可能  UIコントロールの配置  各種プロパティの設定
  • 9. Silverlightによる開発(デモ)  ボタンを押下するとテ キストボックスをクリ アする  UIコントロールを配置  各種プロパティを設定  Clickイベントを設定  イベントハンドラを実装
  • 10. XNAとSilverlight  利点を活かした開発が可能  画面ごとに使い分ける  一つの画面で使い分ける  3D描画はXNA  UI部分はSilverlight
  • 11. XNAとSilverlight  一つの画面で使い分け る XAML クラス  XNAのゲームループと Silverlightのイベントハ ンドラが同一クラスに混 ゲーム 在 ループ  メンバーの共有が可能 (XNA) UI (Silverlight)  XNAとSilverlightが イベント 相互に干渉可能 ハンドラ  UIコントロールのイベン (Silverlight) トから3Dモデルを操作  XNAのゲームループか らUIコントロールを操作
  • 12. その他の機能  入力デバイス・センサー  タッチパネル(4点以上のマルチタッチ)  カメラ、GPS、加速度、ジャイロ、コンパス  分離ストレージ  設定情報など単一データの保存に利用  ファイルもしくはディクショナリ形式  ローカルデータベース  スコア情報など複数データの保存に利用  オブジェクトベース(SQLを利用しない)  ネットワーク  Socketクラス、WCF、Windows Azure
  • 13. さいごに  ソースコードは後日公 開  http://moto-square.com/  CodeZineに掲載  Windows Phone 7.5で つくる3Dアプリケーショ ン  詳細な実装方法を解説  日経ソフトウェアに連 載中  C#に関する萌えマンガ  読んでいただければ 幸いです!