石野光仁 Blog

開発、C#、ASP.NET、アイライトの活動について、いろいろ

AILight Banner
AILight Blog

プロフィール

石野光仁 Blog

目次

Blog 利用状況

記事分類

過去の記事

タグ

2015年11月20日 #

ゲームレビュー:Halo 5: Guardians

待望のHaloが来ました!!
 
この手のシューティングは、Titanfall(タイタンフォール)以来です。
 
ムービーのアクションは非常に格好いいのですが、6年前のテレビでは、
 
応答速度が悪く、ちょっと見づらいですね。
 
プレイして最初に思うことが、画面が綺麗です。
 
そりゃOneなんだから綺麗であたりまえですし、360でも必要十分だなって
 
思っていたのですが、綺麗なのはプレイしていても没入感が違いますね。
 
とても良い感じです。
 
プレイした感想ですが、、、個人的には歴代のHaloの中で一番
 
ハマってプレイしていたと思います。ずっとプレイしすぎて、
 
ちょっと酔いました(笑) ゲームを辞めるタイミングがないんですよ。
 
それぐらいに面白いゲームだと思います。
 
ストーリーもこの手のものにしては、面白そうに思います。
 
是非、手に取ってプレイしてみてください
 
詳細はこちらから♪
http://www.xbox.com/ja-JP/games/halo-5-guardians
 
Halo 5: Guardians
  • ASIN:B00ZQA0TQY
  • 商品名:Halo 5: Guardians
  • 販売元:日本マイクロソフト
  • 発売日:2015-10-29
Halo 5: Guardians

 

posted @ 0:41 | Comment (0)

2015年10月1日 #

ゲームレビュー:Forza Motorsport 6

最近、車ゲームばかりやっている気がしますが、、、
Forzaの最新作が来ました!!
 
さっそくプレイをしたので、ちょっとレビューを書きたいと思います。
とは言っても、Forza 5と何が変わったのか?って
夜間レースとレインレースが追加になりました
(夜間は初めてですよね? ちょっと自信がない)
 
まず、RX-7(FD3S)で走りだしたのですが、Forza 5のタイヤの挙動と比べて
あれ?あれ?あれ?って思いながら走っていました。
 
タイヤ周りのシミュレートがちょっと変わったかな?って思ったのですが、
次の車をS13のK's(RPS13だと思う)に変更したら、良い感じで走れるようになりました。
下手なドライバーにはフロント荷重が大切です(笑)
 
以前、S13に乗っていたので、本当に懐かしい気持ちで運転していました。
昔乗っていた旧車に乗れるのは、車ゲームの楽しみの一つですよね。
エンジン音、内装、外装、色々と楽しむことが出来ます。
 
で、注目のレインレースですが、、、
 
個人的には、もっとグリップ感がなくてもいいかな?って思います。
あと、水たまりへの侵入で水を排水している感じが足りないですね。
もう少し改善ができるかと思います。
 
ただForzaの伝統として、次回作で必ず良くなってくるので、
初回の機能としては良い感じですので、レインレースの今後が楽しみです。
 
思っていたより良かったのが、インディーカーを走らせるイベントです。
これは、非常に面白いです。
ちょっとフォーミュラカーが頑丈な気もしますが、ゲームですので
これぐらいのバランスが丁度いいと思います。
オーバルでの走行でしたが、車の安定度がいいため、楽しいのです。
走る速度も、乗用車とは比べ物になら無いので、瞬間の判断を求められます。
失敗すると、車とクラッシュしたり、ウォールに車をヒットさせてしまったりと、
中々の緊張感の中で走ることが出来ます。
 
色々書きましたが、今回のForzaも良いゲームに仕上がっています。
(ちなみに、あまり進行していないので走りの部分だけを書きましたが
 見た感じ、ゲームのボリュームは相当ありそうです。ずっと遊べますよ)
おすすめの1本です。
あと、ステアリングホイールが欲しくなるのは間違ない無いです。
レインレースも、ステアリングホイールなら雨の感じが出るのかもしれません。
 
良かったら、手に入れて楽しんでみてください。
 
Forza Motorsport 6
  • ASIN:B00ZQA0SV0
  • 商品名:Forza Motorsport 6
  • 販売元:日本マイクロソフト
  • 発売日:2015-09-17
  • 価格:¥ 5,818 (税込)2015/10/01時点
  • 関連するランキング:
    • レース
Forza Motorsport 6

 

posted @ 0:34 | Comment (0)

2015年8月27日 #

ゲームレビュー:RareReplay

久しぶりに、XboxOneのゲームレビューです。
 
今回は、「Rare Replay」です。簡単に内容を説明すると、Rare社30周年を祝し、Rare社の30作品を収録したパッケージとなります。
 
収録タイトルも中々だと思います。Xbox360で持っているソフトでも、ダウンロードコンテンツで買えば、ディスクの入れ替えもなくなりますので、買っておいて損はないと思います。
 
今回は、ゲームの内容よりXBOXの新機能を中心に紹介したいと思います。
 
まず、ソフトの一部はXbox360で発売されていたものです。これを起動すると、懐かしのXbox360の雰囲気で起動します。
 
後方互換が発表になりましたが、これらのソフトも後方互換で動かしているように思える動きです。
 
実機と比較はしていませんが、特に問題なく動きます。 ちょっと感動します。
 
もう一つ紹介したいのが、Windows 10には、Xboxアプリを標準で搭載しています。
 
このアプリの機能の一つに、Xbox OneからPCへストリーミングプレイを行うことが出来ます。
 
まず、Xbox本体の電源を入れます。
 
Windows 10に、XboxのコントローラーをUSBケーブルでつなぎます。
 
Xboxアプリを起動させます。
 
Xbox本体を接続で、Xboxへ接続してください
(ちなみに、一度接続させるとアプリが分からXboxの電源を入れることが出来ます。クイック起動の設定が必要)
 
あとは、ストリーミングを選択すると・・・

こんな感じ。
 
Surface Pro3はWifiで接続していますが、速度上の問題は無いように思います。
 
ただ、TVとストリーミングプレイを同時に表示していると、ラグに気が付きます。
 
画面を見ても気が付かないのですが、サウンドがほんの少し遅れていますので、タイミングにシビアなゲームでは、
 
問題がでるかもしれません。
 
ただ、テレビを占有することなくゲームができるのは、非常に便利かと思います。

Rare Replay 【CEROレーティング「Z」】
  • ASIN:B00ZQA1WAQ
  • 商品名:Rare Replay 【CEROレーティング「Z」】
  • 販売元:日本マイクロソフト
  • 発売日:2015-08-06
  • 価格:¥ 2,500 (税込)
  • セールスランク:846 位
  • 製品の特長:
    • メーカー型番:KA5-00008
    • レア社30年を記念して名作30本を厳選収録。
    • 実績は10000と通常ゲームの10本分。
 
Rare Replay 【CEROレーティング「Z」】

 
収録タイトル一覧
 
Atic Atac
バンジョーとカズーイの大冒険
バンジョーとカズーイの大冒険 2
バンジョーとカズーイの大冒険: ガレージ大作戦
バトルトード
バトルトード アーケード
Blast Corps
Cobra Triangle
コンカーズ バッド ファー デイ
Digger T. Rock
グーリーズ 〜Grabbed by the Ghoulies〜
Gunfight
Jet Force Gemini
Jetpac
Jetpac Refuelled
カメオ: エレメンツ オブ パワー
Killer Instinct Gold
Knight Lore
Lunar Jetman
パーフェクトダーク
パーフェクトダーク ゼロ
R.C. Pro-Am
R.C. Pro-Am II
Sabre Wulf
Slalom
Snake Rattle N Roll
Solar Jetman
Underwurlde
あつまれ!ピニャータ
あつまれ!ピニャータ2: ガーデンの大ぴんち

 

posted @ 0:15 | Comment (0)

2015年6月7日 #

一週間ほど、Blogを休みます

長岡 IT開発者 勉強会(NDS)に参加するので、セッション資料を作らないといけないので・・・

良かったらこちらでお話するので参加してみてください。

http://nagaoka.techtalk.jp/no42

posted @ 22:02 | Comment (0)

Azure Service Fabricで遊んでみる~ 実行テスト編

3日坊主っぽくなってきましたが、続きますよ~
それでは、Azure Service Fabricの動作を見ていきましょう。

上の画像を見てください。
一番上の矢印が動作している環境を表しています。「Node.3」にプログラムが展開され実行されています。

では障害を起こしたいと思います。

一番左にある矢印の「Node.3」で右クリックして「コンテキストメニュー」を開きます。
一番右にある矢印の「Stop node」をクリックしてください。

では、何が起こるか待ちましょう。

カウントアップが1044で停止します。暫くすると矢印の場所から再開されます。

何が起きたか確認してみましょう。

一番下の矢印を確認すると、「Node.3」が停止している事がわかります。
一番上の矢印を確認すると、「Node.3」から「Node.2」へ実行場所が変わっています。
真ん中の矢印を確認すると、「Node.2」へプログラムが展開されて実行されています。

このような動作が自動で行われることによって落ちないサービスを簡単に構築できるようになります。

明日は、「Stateful」で遊んでみたいと思います。


posted @ 2:48 | Comment (0)

2015年6月5日 #

de:code 2015 キーノートの動画が公開されています


3日坊主までたどり着けなかった感じです。

色々と忙しくて記事の投稿ができなかったです。

今日も時間が遅くなってしまったので、簡単な内容にします。

5月26日 - 27日に東京で開催されたde:code 2015のキーノート動画が公開されています。

画質も音声もいい感じです。楽しめると思います。

http://channel9.msdn.com/Events/de-code/decode-2015

posted @ 0:14 | Comment (0)

2015年6月3日 #

Azure Service Fabricで遊んでみる~ ビルド編

さて、昨日はAzure Service Fabricの環境を整えたので、今日は環境を使って遊んでみたいと思います。
遊びながらのメモですので、内容が間違っている可能性もありますので、お気を付けください。

まず、Visual Studioを起動させます。英語ですが、日本語で場所を覚えているから簡単に使えますね。

「New Project」を選択します。テンプレートの中から、「Service Fabric」を選択します。

右下の「OK」を押して、プロジェクトを作ります。

「権限昇格」のダイアログが出ますので。「Restart」をクリックしましょう。

プロジェクトが二つ出来ました。

「Stateless1.csproj」
「Stateless1Application.sfproj」

構造的には、Stateless1Applicationがデプロイ情報を持ったプロジェクト?で
Stateless1に処理を記述するようです。

Stateless1プロジェクトのプロパティを見てみましょう。

ほぉ。「Console Application」になっていますね。ちょっと興味深いですね。
他のファイルも眺めてみましたが、他は普通な感じです。
ではでは、実行させて結果を見てみましょう。

いきなり動作が、始まりました。「Diagnostic Events」画面に何やらログが表示されます。
何かの処理が動いているようです。
プログラムを確認してみましょう。

プロジェクト「Stateless1」の「Stateless1.cs」のプログラムが動いているようです。

まぁ、そのまんまですね。

さてと、今日はここでタイムアップです。明日は、もう少し環境を掘り下げてみたいと思います。

「Azure の基礎」はこちらから学べます。いきなり動画(音声)が動くので、注意が必要です。
http://www.microsoftvirtualacademy.com/training-courses/microsoft-azure-fundamentals_jpn?prid=mvp-9379

posted @ 0:19 | Comment (0)

2015年6月1日 #

Azure Service Fabricで遊んでみる~ 環境構築編

お久しぶりです。なんとなく6月は新しいことを始めてみようと思ったりしたので、Blogを再開してみます。
3日坊主を目指して頑張ります!!

若いころのテンションはありませんので、のんびり書き進めたいと思っています。

最近、Azure Service Fabricが気になっています。Azureが出初めの頃に、これからのソフトウェア?ソフトウェアの利用形態?は、クラウド上に展開されたサービスを連携させて、自分が求める環境を構築して行くんだと妄想してみたことがあります。
そのサービス同士をどのように結合するかは、難しい問題ですので置いておいて、、、サービスを作るだけなら自分でもできそうですので、Azure Service Fabricで遊んで、小さな夢でもみたいと思います(笑)自分が作ったサービスが多くの人に使ってもらえるという夢を見ながら・・・

で、まずは環境を作らないといけないです。

Azure Service Fabric の詳細は以下をリンク先を見てください。
http://azure.microsoft.com/ja-jp/campaigns/service-fabric/

サポートOSは、以下の通りです。

・Windows 8/8.1
・Windows Server 2012 R2
・Windows 10 Technical Preview

SDKは、Visual Studio 2015 RC 向けに提供されています。
(Visual Studioは英語版を選択してください)

ということは、この二つの環境を構築する必要があります。

う~ん、、、面倒くさいですね。
ということで、AzureのVM上に環境を作ってみましょう。

仮想マシンの新規作成で、ギャラリーからを選択してVisual Studio 2015 RCをセットアップする事ができます。
これだけで完了です。実に簡単。使わない時は止めておけばいいだけですし、必要なくなったら削除すればいいだけです。

インストールが完了したら、リモートデスクトップで接続して、Azure Service Fabricのテスト環境を構築します。

ランタイムとSDKとツールをインストールします。
http://www.microsoft.com/web/handlers/webpi.ashx?command=getinstallerredirect&appid=MicrosoftAzure-ServiceFabric

PowerShellの実行ポリシーを変更します。
PowerShellを管理者権限で実行させて、以下のコマンドを実行します。

Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Force -Scope CurrentUser

一度、PowerShellを終了させます。
再度、PowerShellを管理者権限で実行させます。

以下の2つのコマンドを入力します。

cd "$env:ProgramFiles\Microsoft SDKs\Service Fabric\ClusterSetup"
Run ./DevClusterSetup.ps1

セットアップの確認
"Program Files"の下に「Microsoft SDKs\Service Fabric\Tools\ServiceFabricExplorer」
ができていますので、その中にある「ServiceFabricExplorer」を起動させてください。

左上にある、「Onebox/Local Cluster」を開いて動作確認をしてください。

何度か開きなおしても、上手くいかない場合には、以下を見てください(英語)
https://azure.microsoft.com/en-us/documentation/articles/service-fabric-troubleshoot-local-cluster-setup/


今日はこの辺までにします。明日以降にService Fabricで遊んでみたいと思います。

セットアップ方法は、以下の場所にあります(英語) 詳しくはこちらで。
https://azure.microsoft.com/en-us/documentation/articles/service-fabric-get-started/


「Azure の基礎」はこちらから学べます。いきなり動画(音声)が動くので、注意が必要です。
http://www.microsoftvirtualacademy.com/training-courses/microsoft-azure-fundamentals_jpn?prid=mvp-9379

posted @ 23:55 | Comment (0)

2014年11月9日 #

Surface Pro 3 専用 ドッキング ステーション でUSBポートが動作しないとき

Surface Pro3を使っているのでしたら、ドッキングステーションは
かなりおすすめなのですが、一度だけ不具合に遭遇しました。

USBポートが全然反応しなくなることがありました。

色々とSurfaceの方を再起動したりしたのですが、全然復帰しなかった
のですが、簡単に直りましたのでメモしておきます。

それは、ドッキングステーションの電源を抜いて入れるだけ。

聞けば簡単な話なのですが、全部Surface側でコントロールしているのかな?
なんて勝手な思い込みで、判断が遅れてしまいました。

久しぶりのBlog投稿ですが、ボチボチ再開したいと思います。

posted @ 11:42 | Comment (0)

2013年12月25日 #

C#、昔話

C# Advent Calendar 2013
http://www.adventar.org/calendars/119
最終日、25日のエントリーです。

メリークリスマス!!

仕事が忙しくて、細かいネタを用意することが出来ませんでした。
なので、ちょっと昔話をしたいと思います。

C#との出会いは、Visual Studio .NET 2002のインストールから始まります。
このころは、Visual Basic 6.0が幅を利かせていた時代でした(笑)
VB6.0も良いところが沢山あるのですが、大規模なシステムを組むにはクラスを
まともに扱えなかったため、問題があると感じていました。
C++も良いところが沢山あるのですが、メモリ管理が難しく社内の開発で気軽に
使えるようなものでもありませんでした。

そんな時に、2002年に、C#が目の前に現れました。

メモリ管理が簡単な、C++を望んでいた自分には、ピッタリな製品でした。
無謀にも?、2002から業務アプリの開発で使っていました。

2002は初物の製品でしたが、特に問題もなく開発が出来たように思います。
その1年後には、2003が発売され、.NET Framework 1.1になりました。

その時、自分のプログラムが不具合になった1.0と1.1の挙動の違いを一つ。

decimal 型の値を、ToStringすると、
1.0では、少数の値を入れない時は整数値のみ、
1.1以降は少数の値を入れなくても、整数部と小数部が表示されるようになりました。

この問題で、開発した製品にトラブルが多少出たので、
ToStringはそのままで使わず、第一引数に値を指定するようになりました(笑)

あと、GotDotNet Japan 掲示板で、Disposeについて年末から年越しで書き込みを行ったのも
懐かしい思い出です。

そして、Visual Studio 2005が発売されます。C#は2.0になり、ジェネリクス等が入りました。
やっと、ArrayListともさよならです(笑)
SQL Server 2005も同じ時期だったのですが、両方の足並みをそろえての出荷だったので
とても難産でした。

その後しばらくして、Visual Studio 2008が発売されました。
ここで、C#が3.0になります。個人的には、このバージョンで満足のいく言語になったと思います。

LINQ、拡張メソッド、var(型推論)

拡張メソッドは、好きじゃない人もいましたが、個人的にはとても欲しかった機能の一つです。
MFCの頃、CStringに機能を増やすために、継承をしてオレオレCStringを持っていたのですが、
それを使って汎用ライブラリを作ると、ライブラリのハンドリングが悪くなるので嫌いでした。
拡張メソッドはそれを解決するためだけの物ではありませんが、継承の汚染が防げる意味では、
助かっている人も多くいるかと思います。
(そんな風に言うのは私だけかもしれませんが・・・)

型推論が出た時も少し面白かったですね。
ネット上で、varを使う派と使わない派に分かれて意見が交わされていました。
今はほぼ全員が、使う派だと思いますが・・・
私はもっと変人で、ライブラリを作ると、左辺(受け取る)型に合わせて、
送り出し側を選べるプロパティを作りたくなります。
(こんな事を言うのも、私だけかもしれませんが・・・)

なので、

Form from = new();

みたいな書き方が欲しかったのです・・・ が、

var form = new Form();

の方が言語として良いですね。


とりあえず、そろそろ寝る時間なのでまとめに・・・(笑)
今のC#は、自分の思考をそのままプログラムに起こせるところが魅力です。
多少、もう少しという所もありますが、それでもほかの言語よりは完璧に近いです。

こんな素晴らしい言語を世の中に送り出してくれた、「アンダース・ヘルスバーグ」に
感謝しながら、2013年、Advent Calendarを締めたいと思います。


あっ、アンダースは今年も元気でしたよ~

2013年11月 レドモンドにて

posted @ 1:34 | Comment (0)

2013年9月25日 #

Windows Server 2012 Community Dayのセッション資料がおすすめ!!

最近自宅で、2012 R2をインストールしてみたのですが、新機能に関してちょっと勉強不足感がありました。
「Windows Server 2012 Community Day」でのセッション資料でその足りない知識をうまく補完する事が出来ましたので、うれしくなってブログで紹介することにしました。

個人的には、Hyper-V(第二世代仮想マシン)とストレージプール関連です。

http://technet.microsoft.com/ja-jp/windowsserver/jj127279.aspx

posted @ 9:49 | Comment (0)

2013年9月10日 #

MSDNへ急げ!!:Windows 8.1 RTM, Visual Studio 2013 RC and Windows Server 2012 R2 RTM

8.1と2012 R2のRTMがダウンロード出来るようになっています。
早速ダウンロードして評価ですね。

ただ、8.1のEnterpriseは月末のリリースらしいのでもう少し待つ必要があります。

Visual Studio 2013はRCなので、気を付けてください。
ちなみに、Windows 8.1 Preview版はnot supportなのでこちらも気を付けてください。
ダウンロード先は:
http://www.microsoft.com/visualstudio/jpn/2013-downloads

詳細はこちらから
http://blogs.msdn.com/b/stevengu/archive/2013/09/09/download-windows-8-1-rtm-visual-studio-2013-rc-and-windows-server-2012-r2-rtm-today.aspx

posted @ 9:53 | Comment (3)

2013年7月18日 #

VSUG DAY 2013 Summer に参加します

今回はなんと、スピーカーでの参加です。
LT枠とは違った緊張感があります(笑)

よかったら参加してみてください。


▼日付     2013年7月20日(土)受付10:00~予定
▼会場     マイクロソフト品川オフィス 31F
▼参加費用 無料(VSUG 会員登録が必要となります)

http://vsug.jp/tabid/228/EventID/23/Default.aspx

posted @ 14:57 | Comment (20)

2013年6月19日 #

Minecraft(マインクラフト): Xbox 360 Edition


久しぶりに、Xbox 360のレビューです。
Xboxと言えば、次期xboxが発表されました。

E3のメディアブリーフィングは、結構面白いので一度見て置いて損はないかと思います。
http://www.xbox.com/ja-JP/e3/

ビデオの最後にある、TITANFALLはかなり魅力的です。
これ、買いなような気がします・・・ 面白そう・・・

と、xbox oneの話はこれぐらいにして、マインクラフトに戻ります。

前からずっと、マインクラフトには興味があったのですが、ずっと我慢していました。
パソコン少年の夢をかなえたようなゲームシステムにちょっと嫉妬していたところがあります(笑)

広大なマップに、マップを作りかえられる機能、冒険もクリエイト作業も出来る 箱庭ゲームの決定版みたいな内容は、昔のパソコンゲーマーでしたら一度は夢見た事のあるゲームシステムです。

ですが、ゲーム好きなので、そろそろ逃げ回る事も止める事にして、マインクラフトをプレイしてみる事にしました。

まだ始めたばかりですので、濃いレビューは書けませんが、簡単にレビューしてみたいと思います。

まず、マインクラフトの世界は思っていたより、「過酷」、、、「このたび過酷(ネタ)」じゃありませんが、何も考えずに遊ぶって事は出来なさそうです。
この世界で生き延びるには、この世界のルールを理解する事がまず必要となります。
操作するキャラクターには、体力パラメータや満腹度のパラメータがあります。
体力パラメータがあるという事は、0になったら死んでしまうという事です。

死ぬことなんて無いんだろうなと思ってプレイすると・・・ 痛い目を見ます(笑)
時間の概念もありますので、夜になれば夜なりの危険な出来事があります。

マップも広大ですので、すぐに冒険に旅立つ事が出来ます。

マップにあるアイテムを破壊?削り取り?ながら、自分のアイテムにしていくのですが、他人の家を壊したりしてアイテムを取っていると、住人が傍に寄ってきたりします。キャラクターが腕組みをしているように見えるので、不思議と怒っているように見えてきます。
本当に怒っているかはわかりませんが、自分の中で色々なストーリーを組み上げていく所がこのゲームの面白さなの一つなのかもしれません。

そんな感じでマップを徘徊していると、そのうち夜になります。

怖いんですよ、、、夜は、、、

怖いから、木の上で一晩過ごした事もあります。

山登りの途中で、洞窟を発見したのですが、中に入っていくと、、、

山の頂上に行くと、もっと高い山を発見したりして、、、

食べ物を取りに行って、、、

冒険には、新たな発見と危険が付きものですね。今のところは、まだ簡単な冒険までしか出来ていません。

クラフトの部分は、また別の機会にチャレンジしてみたいと思います。

あと、マルチプレイも出来るので、ちょっと興味があります。誰か一緒にプレイしてくれませんかね?(笑)
友達にも買ってもらって、一緒にプレイしてみたいと思います。

良かったら、Minecraft(マインクラフト): Xbox 360 Edition を試してみてください。

http://marketplace.xbox.com/ja-JP/Product/Minecraft-Xbox-360-Edition/66acd000-77fe-1000-9115-d802584111f7

 

Minecraft: Xbox 360 Edition
  • ASIN:B00C6R5GHM
  • 商品名:Minecraft: Xbox 360 Edition
  • 販売元:日本マイクロソフト
  • 発売日:2013-06-06
  • 製品の特長:
    • 特典:Xbox LIVE 14日間ゴールドメンバーシップ(初回生産版のみ)
    • 開発元:Mojang / 4J Studios
    • 発売元:日本マイクロソフト株式会社
    • ジャンル:アクション & アドベンチャー, 戦略 & シミュレーション
    • CERO:A (全年齢対象)
  • 関連するランキング:
    • 日本マイクロソフト
Minecraft: Xbox 360 Edition




 

posted @ 19:55 | Comment (0)

2013年4月25日 #

AILight Bubble Breaker をリリース!!

ストアアプリ、第二弾を作りました!! 今回は「Bubble Breaker」です。
タッチで簡単に遊ぶ事が出来ます。基本ルールは懐かしのSameGameと一緒です。

少しだけゲームシステムを改良して、 遊びの幅を増やしてみました。
 
よかったらプレイしてみてください。
 
また、このネタを使って開発Tipsも書いていきますので、HPの方も
 よろしくお願いします。
 
お試しにどうぞ!!

http://apps.microsoft.com/windows/ja-JP/app/ailight-bubble-breaker/c156ada5-192a-4a84-a290-d4489bfa8c26
 

posted @ 12:00 | Comment (0)

2013年4月5日 #

Visual Studio 2012 Update 2が来ました

■以下のページで確認する事が出来ます。
http://www.microsoft.com/visualstudio/jpn/visual-studio-update

■注力されている分野は、以下の通りとの事です。
•アジャイル計画
•品質向上
•業務アプリケーション開発
•開発者体験

■追加のアップデートも出ていますのでお忘れなく
•Visual Studio Team Foundation Server 2012 with Update 2
•Visual Studio Team Foundation Server Express 2012 with Update 2
•Team Explorer Everywhere for TFS 2012 with Update 2
•IntelliTrace Collector for Visual Studio
•Remote Tools for Visual Studio 2012 Update 2
•C++ Redistributable for Visual Studio 2012 Update 1
•Agents for Microsoft Visual Studio 2012 Update 2
•Agents for Microsoft Visual Studio 2012 Update 2 Language Pack

■リモートツールのアップデートが出ている事も注目です。
http://www.microsoft.com/visualstudio/jpn#downloads+d-remote-tools

■リモートデバッグの設定方法は、以下をご覧ください。
http://www.ailight.jp/Content/Read/WSA_RemoteDebug

■Somasegar’s blog もチェックしておきましょう
http://blogs.msdn.com/b/somasegar/archive/2013/04/04/visual-studio-2012-update-2-now-available.aspx

さてと、早速Updateしてみます。

posted @ 11:25 | Comment (3)

2013年1月31日 #

Windows Phone 7.8 がくるー

今日はちょっと嬉しいニュースがありました。
IS12T向けに、Windows Phone 7.8へのアップデートを提供開始したとの事です。
国内での、Windows Phone 8の発売がなかったりと、ちょっと残念な事が多かったのですが、
今回のニュースで元気になれました。

提供開始との事ですが、通知が来るまで更新できません。
あと、インストール方法の説明欄に、
 最初の通知を見落としたり、時間がなくて更新をインストールできなかった場合には、
 数日後に再度通知が届きます。

との事ですので、通知を見落とさないように注意しましょう

詳しくは、以下のURLからどうぞ
http://itpro.nikkeibp.co.jp/article/NEWS/20130131/453242/
http://www.microsoft.com/ja-jp/windowsphone/products/wp7.8/default.aspx

ではでは。

posted @ 16:15 | Comment (5)

2013年1月10日 #

Windows ストア アプリからWindows ストアを起動する

新年明けまして、おめでとうございます。
本年もよろしくお願いします。

最近は、ミニゲームデベロッパーになっているアイライトです。
年末年始も、Windows 8向けのアプリをチクチク開発していました。

まだ、公開したアプリはAILight Reversiだけなのですが、これから続々とアプリがリリースされると思います。
よろしくお願いします。

と、ブログでアプリの宣伝をするのもいいのですが、自分が公開したアプリケーションでも、自分の作った別のアプリケーションを紹介できたら、より一層ファンが増えるんじゃないのか?と考えました。
(単純すぎますかね?)

と言う事で、色々と策はあるかと思います。

・アプリの中に、URLを並べておく (別アプリの画像を入れておく、Webの紹介ページへリンク)
・アプリの中から、ストアの情報に飛べるようにしておく

宣伝する為には、色々な方法があるかと思いますが、AILight Gamesは、軽いアプリケーションを目指していますので、1番目の方法は取りたくありませんでした。(画像ファイルは持ちたくなかったので・・・)

となると、効果的に見せるには、アプリの中からWindows ストアを起動する事だと思います。

と言う事で、一生懸命検索して調べてみました。
予想通り、出来る事が分かりました。

それでは、コード紹介です。
var uri = new Uri("ms-windows-store:Search?query=AILight");
Windows.System.Launcher.LaunchUriAsync(uri);

実行すると、"AILight"を検索キーワードとして、Windows ストアが起動します。

直接、アプリの紹介ページに飛ぶ事も出来ます。詳しくは以下のページを見てください。
アプリへのリンク

posted @ 15:43 | Comment (0)

2012年12月24日 #

SignalRを使ってみた

一日に、二度Advent Calendarに参加してしまった、アイライトです。
(思っていたより、大変・・・)
この記事は、One ASP.NET Advent Calendar 2012 の参加記事となります。

23日中に、記事を一本書き上げなくてはいけないのに、現在23時21分
しかも、昼間の天気のよさに負けて、ドライブに出てしまい。
その後、クリスマス会にも参加して、どうしようもない状態での参加となってしまいました。

ちょっと反省・・・(何に反省したらいいのか、迷うぐらい全部がダメ)
と、落ち込んでいても仕方ないので、さっそく素材集めを行います。

今回は、ASP.NET SignalRについて、コメントのような記事を書きたいと思います。
とりあえず、以下のページを見てください。
http://signalr.net/

NuGetで、サンプルを手に入れる事が出来ると書いてあります。

でね。

これ、このまま入力しても入らないんですよ。
では、さっそくSignalRのサンプルを動かすことにしましょう。

まず、新しいプロジェクトでWebのテンプレートの中から、ASP.NET 空のWebアプリケーションを選んでください。

メニューから
表示->その他のウィンドウ->パッケージ マネージャー コンソール
を選んで、パッケージ マネージャー コンソールを開いてください。

プロンプトが表示されますので、SignalRのページに書いてある、以下のコマンドを入力してみます。

Install-Package Microsoft.AspNet.SignalR.Sample

これを、実行すると、、、

パッケージが見つかりません。 ってエラーになってしまいます。

なんですと? SignalR自体が、プレリリースパッケージのオプションをつけて配布しているので、
サンプルにも、オプションをつけて取得してみましょう。

Install-Package Microsoft.AspNet.SignalR.Sample -Pre

ということで、Preオプション(Prerelease Package)をつけて実行します。

無事に、インストールが完了します。

プロジェクトフォルダーの中に、「SignalR.Sample」フォルダーが作成されます。
中に、「StockTicker.html」がありますので、右クリックして、「スタートページに設定」を選択して下さい。

F5(デバッグ実行)を行ってください。
ブラウザーが立ち上がり、SignalRのサンプルが動きます。

ついでに、インストール済みのブラウザーを立ち上げて、URLをコピーしてみてください。
(複数のページで同じURLを見ていてください)

画面に表示されている、「Open Market」をクリックしてみてください。

ここまでくれば、SignalRを調べられると思います。

現座時刻が、23:54分です。ギリギリ

本当は、SignalRでサンプルプログラムを書いて、紹介しようと思っていたのですが、環境の構築に手間取ってしまって、今回はこんな内容になってしまいました。

次回では、SignalRで遊んでみたいと思いますので、その時までのお楽しみということで、今回はしめたいと思います。

記事を落とすことなく、One ASP.NET Advent Calendar 2012 に参加することが出来ました。

次の方へ、バトンを繋げます。

ではでは。

One ASP.NET Advent Calendar 2012 参加記事でした。
http://atnd.org/events/33667

posted @ 0:03 | Comment (0)

2012年12月23日 #

dynamic型を利用した時のパフォーマンス調査

今年は、Advent Calender に初参加してみました。
この記事は、C#側なのですが、ASP.NETにも参加しており、同じ日を設定してしまいました・・・

本人的には、同じ日なら忘れることがないから完璧!! って思っていたのですが、
記事を2本書く大変さを忘れていました(笑)

さてと、愚痴はこれぐらいにしておいて、、、早速記事を紹介したいと思います。


今回は、dynamicを使用した時のパフォーマンスを調べてみました。
テストの方法として、、リフレクション、キャスト、ダイナミックそれぞれを利用した時の実行時間をみてみたいと思います。
サンプルはシンプルに作成し、それぞれobject型で受け取り、引数に1時間足してみるというサンプルです。
実行環境は、Windows 8、Visual Studio 2012 Releaseビルド、Visual Studio上からの実行です。
対象のフレームワーク、.NET Framework 4.5、コンソールアプリです。

呼び出しは、1回と、1千万回 それぞれの呼び出し結果について比較してみました。

サンプルプログラム
using System;
using System.Diagnostics;

namespace ConsoleApplicationForDynamicTest
{
    class Program
    {
        static void Main(string[] args)
        {
            var stopWatch = new Stopwatch();
            var datetime = DateTime.Now;

            for (var loopIndex = 1; loopIndex <= 2; loopIndex += 1)
            {
                Console.WriteLine("テスト:" + loopIndex.ToString());
                for (var loopCount = 1; loopCount <= 10000000; loopCount += (10000000 - 1))
                {
                    Console.WriteLine(" LoopCount:" + loopCount.ToString());
                    stopWatch.Reset();
                    stopWatch.Start();
                    for (int index = 0; index < loopCount; index++)
                        RefrectionTestMethod(datetime);
                    stopWatch.Stop();
                    Console.WriteLine("MethodInfo:".PadLeft(13) + stopWatch.Elapsed.ToString());

                    stopWatch.Reset();
                    stopWatch.Start();
                    for (int index = 0; index < loopCount; index++)
                        CastTestMethod(datetime);
                    stopWatch.Stop();
                    Console.WriteLine("Cast:".PadLeft(13) + stopWatch.Elapsed.ToString());

                    stopWatch.Reset();
                    stopWatch.Start();
                    for (int index = 0; index < loopCount; index++)
                        DynamicTestMethod(datetime);
                    stopWatch.Stop();
                    Console.WriteLine("Dynamic:".PadLeft(13) + stopWatch.Elapsed.ToString());
                }
            }
            Console.ReadKey();
        }

        public static void RefrectionTestMethod(object target)
        {
            var methodInfo = typeof(DateTime).GetMethod("AddHours");
            target = methodInfo.Invoke(target, new object[] { 1 });
        }

        public static void CastTestMethod(object target)
        {
            if (target is DateTime)
            {
                var localTarget = (DateTime)target;
                target = localTarget.AddHours(1);
            }
        }

        public static void DynamicTestMethod(object target)
        {
            dynamic localTarget = target;
            localTarget = localTarget.AddHours(1);
        }
    }
}

実行結果
 

ちょっと予測した結果と違っていて非常に面白いですね。
テスト1回目は、関数を呼び出すときのオーバーヘッドが非常にかかっています。
Dynamicを使われているところを呼び出すと、信じられないほどのオーバーヘッドがかかっていることがわかるかと思います。
しかし、1千万回呼び出したときには、MethodInfoよりよいパフォーマンスをだしていることが分かります。

テスト2回目は、関数呼び出しのオーバーヘッドがほとんどなくなった状態だと思われます。
ループカウントが、1回の場合、MethodInfoがとても遅く見えます。

今回のテストでは、Dynamicのパフォーマンスが非常良いことが分かります。
1回目の呼び出しが遅いのだけはちょっとだけ注意が必要ですね。
パフォーマンスの呼び出し確認を1回だけで行った場合、恐ろしく遅い関数に見えてしまって、間違ったチューニングを行ってしまう可能性があります。

ということで、適材適所で使うかと思いますが、Dynamicは必要十分のパフォーマンスが出ていますので、使って問題ないと思います。
と自分に言い聞かせました(笑)

以上が、C# Advent Calender 2012 参加記事でした。
http://atnd.org/events/33905


 

posted @ 14:45 | Comment (0)