2010年10月09日

ベクターイメージ

今までSilverlightでラスターイメージのみ扱ってきたのだけど、ベクター
イメージを使ってスプラッシュスクリーンを変更してみたいと前から考えて
いたんだよね。
とりあえずSilverlightにベクターイメージの表示から始めようという事で
フリーウェアのInkscapeというドローソフトを使って、ベクターイメージを
XAMLで保存してSilverlightで表示してみた。

あっけないほど簡単に出力できた。
フリーでしかもXAML出力に対応しているとは、やるなぁInkscape。
posted by Rael at 22:37| Comment(0) | TrackBack(0) | Silverlight | このブログの読者になる | 更新情報をチェックする

2010年09月27日

ゲームスコアのネットランキング

去年からずっと放置していたゲームスコアのネットランキング対応について
いろいろ調べてみたのでまとめてみます。

Silverlightを使ってローカルマシンでスコアを保存するなら分離ストレージ
を使えば簡単に出来るのだが、やっぱりブラウザで動くSilverlightだから
ネットを使ったランキングに対応したい。
でもネットランキングに対応するにはクライアントサイドのプログラムである
Silverlightだけでは不十分でサーバサイドのプログラムを用意する必要がある。

ASP.NETを使える無料のレンタルサーバがあればC#でサーバ側も開発出来るし
Silverlight側の対応も楽ちんみたいなんだけど、無料のレンタルサーバ
だとASP.NETが使えるという条件は簡単には見つからなかったので諦めました。
それで次に考えたのがPHPでサーバ側を開発するという案。
PHPなら無料のレンタルサーバで対応している所が多いし、外部プログラムのCGI
よりApacheのモジュールで動くPHPの方が少し処理が速いらしい。
あとCの文法に近いし、オブジェクト指向も使えるからC#が理解出来ていれば
多少の勉強でPHPに移行出来ると思う。

スコアランキング場合、データをサーバ側に保存する際にMySQLなどの
データベースを使うにはデータ量的に大げさすぎるので、オブジェクトを
シリアライズしてファイルに保存するという方法で十分だと思う。
MySQLなどのデータベースとSilverlightを連携したアプリはいずれ作りたい
と思っているのだけど面白い案が浮かぶまで保留という事で。

SilverlightとPHPを連携させる方法なんだけど
まずSilverlightのWebClientかHttpWebRequestを使ってスコアや名前などの
データをまとめてPOSTリクエストでサーバに送信する。
リクエストを受け取ったPHPがソートやスコア保存などのデータ処理をして
XMLでネットランキングのデータをレスポンスする。
レスポンスを受け取ったSilverlightがXMLtoLINQなどを使ってXMLのデータを
処理して結果を反映させるという方法がいいんじゃないかなと。
本格的なWebサービスを外部に公開する場合はSOAPとかRESTを利用するんだろう
けど、機会があればいずれやりたいという事で。

残った問題は条件の良い無料のレンタルサーバだけです><
posted by Rael at 20:49| Comment(2) | TrackBack(0) | Silverlight | このブログの読者になる | 更新情報をチェックする

2010年08月04日

ライフゲイム

図書館でなにげなく「ライフゲイムの宇宙」という本を読んだ。
まあ本の内容はちょっと難しくて飛ばし読みしてしまったのだが
書いてあったライフゲームのルールが単純だったので作ってみた。
ライフゲームとはジョン・ホートン・コンウェイという数学者
が1970年に考えた生命のシミュレーションゲームだそうです。
続きを読む
posted by Rael at 21:02| Comment(2) | TrackBack(0) | Silverlight | このブログの読者になる | 更新情報をチェックする

2010年07月03日

Webカメラ

Silverlight4の新機能を色々試そうという事で、Webカメラを使ったアプリを
作ってみました。
Webカメラを使えば拡張現実、OCR、QRコード、顔認識、ボディジェスチャとか
の画像認識系やセキュリティカメラ、ビデオチャットなど夢が広がりまくりなんですが、
今回は単純にWriteableBitmapを使って色を変化させるアプリです。
続きを読む
posted by Rael at 19:52| Comment(0) | TrackBack(0) | Silverlight | このブログの読者になる | 更新情報をチェックする

2010年06月14日

MMLとコンテキストメニュー

Silverlight4Toolsの日本語版が公開されたのでコンテキストメニューを試してみた。
素の状態だと右クリックのイベントから自力でメニューを描画してやらないとダメなので
Silverlight4ToolkitのContextMenuを使う。
続きを読む
posted by Rael at 19:39| Comment(0) | TrackBack(0) | Silverlight | このブログの読者になる | 更新情報をチェックする

2010年05月09日

Balderを使って3Dモデル表示

以前からAR(拡張現実)というものに興味があったので、
Silverlightで作れるAR(拡張現実)アプリの基礎知識」という@ITの記事
を興味深く読んでいたのですが、その中で3D表現が実質無いSilverlightで
間単に3D表現が出来るBalderというライブラリを紹介してました。
先月Silverlight3での開発は終わりとか言ってしまったのだけど、
Silverlight4Toolkitの日本語版がいつ出るのやらという状況なので
3でBalderを使って3Dモデルの表示を試してみました。
続きを読む
posted by Rael at 21:57| Comment(0) | TrackBack(0) | Silverlight | このブログの読者になる | 更新情報をチェックする

2010年04月29日

Visual Web Developer 2010 Express公開

Visual Web Developer 2010 Expressが公開されたので早速インストールしました。
デザイン機能が使えるのはやっぱり便利で、アプリケーションを作る手間が
少なくなって作成意欲が上がります。
なのでこれからはゲーム作成が中心ですが、それ以外の物も作っていくつもり。
あと、ブログにソースをちゃんと貼れるようにしたからSilverlightでのゲーム作成の
基礎みたいな記事も作りたいなぁと思ってます。需要があるかわからないけど^^;
VWD2010が公開されたから、後はSilverlight4Toolkitの日本語版だけだな。
posted by Rael at 16:13| Comment(0) | TrackBack(0) | Silverlight | このブログの読者になる | 更新情報をチェックする

2010年04月16日

ダンジョンの自動生成

前に迷路の自動生成を作りましたが、今回はダンジョンを自動生成しました。
いわゆるローグ系のトルネコとかシレンのような部屋と通路があるタイプの
ダンジョンですね。
今回はダンジョン生成だけじゃなくてマップチップとキャラの描画と
当たり判定までやってます。
続きを読む
posted by Rael at 19:20| Comment(0) | TrackBack(0) | Silverlight | このブログの読者になる | 更新情報をチェックする

2010年03月05日

視差スクロール

去年ラスタースクロールを作ったけれども、今回は
ファミコンなどの横スクロールゲームに使われていた
立体的な奥行きを表現するラスタースクロールを作ってみた。
視差スクロールとも言うらしい。

続きを読む
posted by Rael at 19:24| Comment(0) | TrackBack(0) | Silverlight | このブログの読者になる | 更新情報をチェックする

2010年02月17日

迷路の自動生成

忍者トゥルーパーを作る時にマップデータを用意するのが大変だったので
ゲームのマップを自動生成したら楽が出来るんじゃないかなと思い
実験的に迷路の自動生成を作ってみました。
続きを読む
posted by Rael at 20:31| Comment(0) | TrackBack(0) | Silverlight | このブログの読者になる | 更新情報をチェックする

2010年01月21日

忍者トゥルーパー更新

忍者トゥルーパーを更新しました。変更内容の方は
・全画面表示アイコンと音声のミュートアイコンを画面の右上に配置
・ダブルクリックでの全画面表示切り替えを廃止
・全画面表示時にマウスカーソルを静止させると消えるように変更
・OutOfBrowserに対応
以上のようにゲームの内容には直接関係無いアップデートになってます。

ゲームコミュニティサイトのモゲラに登録した影響だと思うけど、ログを
みると複数のフリーゲーム紹介サイトからリンクを貼ってもらっている。
リンク先からや直接モゲラから来る人など多くの人が忍者トゥルーパーで
遊んでくれているみたいです。
作ったゲームを遊んでもらえるのは単純にうれしいです。
ただモゲラやフリーゲーム紹介サイトではFlash製のゲームが中心で
Silverlight製のゲームがポツンとしていて、寂しい状態なんです><
もう少しSilverlight製のゲームが増えるといいのだけど、普及率を
考えるとまだ難しいのかな。
posted by Rael at 19:13| Comment(2) | TrackBack(0) | Silverlight | このブログの読者になる | 更新情報をチェックする

2010年01月15日

忍者トゥルーパー完成

横スクロールジャンプアクションゲームの忍者トゥルーパーが完成しました。

忍者トゥルーパー

全8ステージ。
全64チャプターがゲームスタート時にシャッフルされて
毎回違う組み合わせで遊べます。
2ステージごとに難易度が上がります。
20000点ごとに残機が増えます。
ダブルクリックで全画面表示になります。

ほとんどのSEと全てのBGMは「ユウラボ8bitサウンド工房」様の
ものを使用させて頂きました。ありがとうございます。
やっぱり音楽が無いとゲームが盛り上がらないですからね。
素晴らしいサウンドファイルをフリーで公開してもらって助かりました。
あとサウンドだけじゃなくて公開されているゲームもレトロゲーム風で
いい感じです。

とりあえずSilverlightのバージョン3で一つのゲームを公開出来て
良かったです。
以前のゲームと比べるとグラフィック関係が強化されてますが、これは
Silverlightの機能によるものとピクセル単位でプログラムを制御
させるように変更した所ですね。
今回のゲームは当初の予定より規模が大きくなってしまったので、
次回ゲームを作るならもう少しコンパクトなゲームにしたいなぁと
思ってます。
posted by Rael at 21:41| Comment(0) | TrackBack(0) | Silverlight | このブログの読者になる | 更新情報をチェックする

2010年01月12日

横スクロールアクション作成その3

テストプレイ真っ最中の忍者トゥルーパーの動画を
撮ってみました。



難易度が低い序盤の動画なので簡単っぽく見えるかも
しれないけど、ゲームの後半の方は難易度が高くなる
ので完全クリアするのは難しくなると思う。
自分ひとりでテストプレイしているので難易度が現在
どのぐらいの高さかどうか計るのが難しいのですよね。
あと難易度が高いステージはマップの調整に時間がかかり
ますし、テストプレイする方も大変です。^^;
単純なアクションゲームだからまだ全体の時間が短くて
楽な方なんだろうけどRPGとか時間がかかるゲームだと
もっと大変だろうなぁ。

動画の音楽ですが、まだ音関係の方が出来ていないので
仮でソーサリアンの消えた王様の杖を使ってます。
ファルコムの楽曲がフリー宣言で自由に動画で使えるように
なったので使わせてもらいましたけど、ゲームに直接使う
ことは出来ないのですよね。残念。

後はテストプレイと最後に残った音関係が終われば完成
なのですが、Silverlightの音関係は不安定でしかも機能も
少ないからゲームで満足して使えるレベルとは言えないのです。
MediaStreamSourceを使って基礎から作ればなんとかなる
らしいのですけど大変そうだしなぁ。
とりあえず音関係は後回しにして、完成を優先させます><
posted by Rael at 21:17| Comment(0) | TrackBack(0) | Silverlight | このブログの読者になる | 更新情報をチェックする

2010年01月06日

横スクロールアクション作成その2

着々と完成に近づいてきている横スクロールアクションゲームですが
ゲームのタイトルを決定しました。
その名はずばり「忍者トゥルーパー」です。ヽ(・∀・ )ノ

忍者タイトル.jpg

タイトル画面

名前の由来はスターシップトゥルーパーズとニンジャウォーリアーズと
サムライトルーパーをミックスさせたものなんだけど、完成した
タイトル画面を見ると結構それっぽく出来たんじゃないかなと。

あとゲームのあらすじを考えた。

-あらすじ-
ネムリヤ王国の人里離れた山中にある忍者養成学校「中山忍」に通う
見習い忍者「トシヒコ」は、最終試練場であるオネオネ山に辿り着いた。
はたして最終試練を達成して忍者トゥルーパーの称号を
授かる事ができるのだろうか。

やっぱり単純なアクションゲームでも簡単なストーリーは必要だな
と思って作ってみたのだけど、う〜ん。
僕に文才を下さい><
posted by Rael at 19:45| Comment(0) | TrackBack(0) | Silverlight | このブログの読者になる | 更新情報をチェックする

2009年12月28日

横スクロールアクション作成

作成中の横スクロールアクションゲームですが
スーパーマリオとワンダーボーイを合わせてさらにシンプルに
したものをイメージして作ってます。
画面の雰囲気はファミコンを基準に作っていますが、あくまで
雰囲気重視でパレットやスプライト数の制限は無視してます。
作っているうちに色々アイデアが浮かんできて要素を足したく
なってくるのですけど、完成させるのを第一にして出来るだけ
シンプルで余分な要素を排除するようにしてます。

忍者SS.jpg

まだいくつかバグが残っていますが、プログラム的には
ほとんど完成状態まで出来上がってきました。
あとは素材とかマップとかのデータが必要なんですが
ここからがゲーム作成の腕の見せどころというか、ゲームの肝に
なる部分なのでとても大事なんです。
でもクオリティを上げるには時間がかかる部分なんですよね><

あとマップなんですけどリプレイ性を上げるために
ランダム要素を入れるといいかなって思って、マップを細かく
分断してシャッフルするようにしてみたのですけど
マップデータを2倍用意したりして大変な事になってます^^;
リプレイ性が上がったかどうかは完成後にぜひプレイして
判断してくださいね。
posted by Rael at 22:24| Comment(0) | TrackBack(0) | Silverlight | このブログの読者になる | 更新情報をチェックする

2009年11月21日

横スクロールアクションとSilverlight4ベータ

前回はRPG風の動きでしたが今回は重力が付いた横スクロール
アクションゲームの動きを作りました。
スーパーマリオを代表としたレトロゲームでは定番のやつですね。
続きを読む
posted by Rael at 19:31| Comment(0) | TrackBack(0) | Silverlight | このブログの読者になる | 更新情報をチェックする

2009年11月12日

マップチップ その2

前回のキャラクタの移動は1ドット単位で動いていて
背景のマップは常にキャラクターを中心に動いてました。
今回はキャラクタの移動を16ドットで制御する方法で
動かして、背景のマップは端まで来るとキャラクターの
移動と関係無く止まるようにしてみました。
続きを読む
posted by Rael at 19:35| Comment(0) | TrackBack(0) | Silverlight | このブログの読者になる | 更新情報をチェックする

2009年11月08日

マップチップ

レトロゲームではアクション、シューティング、RPGなど
色々なゲームで使う事になるマップチップとスプライトの実装を始めました。
基本的な構造はCLDC 1.1+ MIDP2.0のLayerManager関係を参考にしてます。
なぜMIDPを参考にしたかというと、最近auの端末でオープンアプリを
弄っていたのですが、ゲーム用のクラスが充実しているし
構造も洗練されていたのでこれは使えるんじゃないかなと。
続きを読む
posted by Rael at 23:03| Comment(0) | TrackBack(0) | Silverlight | このブログの読者になる | 更新情報をチェックする

2009年10月04日

マウスホイール

Silverlight3からマウスホイールのイベントが追加されたので
簡単にマウスホイールの処理が書けるようになりました。
ホイールの処理は以前に作ってあったのですが動作テストを
していなかったので試してみました。
続きを読む
posted by Rael at 19:47| Comment(2) | TrackBack(0) | Silverlight | このブログの読者になる | 更新情報をチェックする

2009年09月01日

タイル表示

Silverlight3.0ではWPFにあるTileBrushオブジェクトの
TileModeプロパティがサポートされていないので、画像を
タイル状に並べて塗りつぶすという事が出来ません。
そこでWriteablebitmapを使ってタイル表示をしてみました。
続きを読む
posted by Rael at 20:34| Comment(0) | TrackBack(0) | Silverlight | このブログの読者になる | 更新情報をチェックする

広告


この広告は60日以上更新がないブログに表示がされております。

以下のいずれかの方法で非表示にすることが可能です。

・記事の投稿、編集をおこなう
・マイブログの【設定】 > 【広告設定】 より、「60日間更新が無い場合」 の 「広告を表示しない」にチェックを入れて保存する。


×

この広告は1年以上新しい記事の投稿がないブログに表示されております。