あいてぃーとふぼふ

Kinectでドロイド君を動かそう!(その2)

前回からはじめたこのシリーズも、いよいよ今回が最終回です!∑(´゚Д゚`;)
ということで、こんな感じのサンプルになりました~(*≧∀≦)ノ

普通に扱いやすいです!

本当はもう少し続く予定だったんですが、とりたてて問題もなく完成してしまいました(汗 もちろん、ご覧のように紆余曲折はあったんですが、原因はどれも計算ミスによるものだったので、割愛させていただきます。キネクト自体は驚くほど扱いやすく、それは「Kinect for Windows SDK」のAPIが扱いやすいということでもあります。ただ、まだまだ機能が少ないために全体像を把握しやすかったというのが一番の理由かもですね。APIの少ない今が習得のチャンスです♪

多少の不満はあるけれど!

それでも、キネクトに抱いた不満はいくつかあります。1つめは骨格情報のミラーリングがサポートされていないということです。ただし、これは実装側でデータを変換すれば(X座標を入れ替えれば)よいだけなので、大きな問題ではありません。2つめは、関節の情報が三次元座標だけということです。これも、関節の角度を実装側で割り出せばいいだけなので、やっぱり大きな問題ではありませんでした。けれど、欲を言えば関節の向きも取得できたら嬉しいです。この向きが取得できないと、前向きか後ろ向きかはもちろん、身体をくるりと一回転するような動きをトレースできません。もちろん、実装側で顔認識とか関節座標の履歴を保持すればどうにかできなくもなさそうですが、実装がカオスになりそうなので…(汗 3つめは、デバッグがしにくいことで、確認のたびにポーズをとるのは大変でした。でもこれは、今月末に公開予定のSDK v1.5で改善されるというお話ですので、今から楽しみにしています~(o*゚ー゚)o

それでもここまでできちゃいます!

自分の動きに合わせて、リアルタイムに3Dモデルが動くというのは、個人的にとても新鮮な感動です!惜しむらくはこれが…ドロイド君であって窓辺さんではないことですが…。このように、一見するとおぉ~な感じ(?)のキネクトアプリも、実装自体は大したことありません。これからリファクタリングを行いますが、コメントをふんだんに盛り込んだとしても500行には満たないかなと。リファクタリング中に気付いたことや思い出したことがあれば、またブログに書いていきたいと思います。とにかくもう、キネクトは本当に簡単で面白いです!
ネタに選んで大正解でした♪(。´ゝω・)

ソースコードは夏コミで!

このサンプルの3Dモデルとソースコードは夏コミの同人誌のオマケとして配布する予定(当選すれば)です。ぜひとも在庫の撲滅にご協力ください!他にもサンプルを作成したら、併せて配布しちゃいます。時間があれば、次は3Dスキャナーモドキを作ったり、音声認識を検証してみたいですね。

Kinectでドロイド君を動かそう!(その1)

今回からしばらくの間、「Kinect for Windows」を利用して、思い通りに3Dモデルを動かすサンプルの開発に挑戦してみたいと思います。いわゆるひとつの「モーションキャプチャー」的なサンプルです。できればホントは「窓辺さんの3Dモデル」を動かしたかったんですが…お高いので代わりのモデルを用意することにしました(´・ω・`)

ハイエンド・ドロイド!

ということで今回は、窓辺さんの代わりに「ドロイド君」の3Dモデルを動かすことにします!(*`Д´*)ノ でも、どうせなら普通のドロイド君では物足りません。そこで今回は、驚異の7000ポリゴンオーバーで作成したハイエンドなドロイド君…つまり「ハイエンド・ドロイド」を利用します~!なんということでしょう!曲面やエッジの成形にポリゴンを贅沢に使用しています。しかもこのドロイド君…スゴイのはポリゴン数だけではありませんよ?( ̄ー ̄)

スキニング・ドロイド!

何と!こいつ…動くぞKinectから取得できる骨格情報を参考に、ボーンを仕込んで動くようにしてみました。個人的なこだわりポイントは、頭と胴体の間に「首」となるポリゴンを仕込んだことです。これによって頭を動かすと首が口のように見えるので、なんだかとってもチャーミング♪最終的にKinectでこのポーズが取れれば目標達成です!

使えるものは流用すべし!

ご覧のようにこのドロイド君は、肘や膝が人間の肌みたいに「グニャリ」と動きます。こういう3Dモデルのことを「スキニングモデル」というんです。C#でスキニングモデルを扱う場合は、AppHubで公開されているXNAの「スキニング モデル」というサンプルを参考にすると便利です。今回もこのサンプルを一部参考にして、Kinectで3Dモデルを動かすサンプルを開発していきたいと思います。

意外と情報が少ない?

しかし…この手のサンプルってネットで全然公開されていないんですね。ネタがありきたりすぎるかと思っていましたが、意外とそうでもないみたいです。単純に骨格を描画しているサンプルはよく見かけるんですが、あれってあくまで2D画像として骨格を描画しているので、実はとっても簡単なんです。SDKのAPIには、骨格と画像をマッピングするAPIも用意されていますしね。けれど、骨格を3Dモデルにマッピングさせようとすると、一筋縄ではいきません。行列とか行列とか行列とか…考えただけでも面倒くさそうです…ノ乙(、ン、;)

なお、サンプルが完成した暁には、3Dモデルとソースコードを同人誌のオマケとして配布する予定ですので、在庫の撲滅にご協力ください♪

Kinect for Windowsを購入しました!

今度の夏コミ(当選すればですが…)のネタ用に「Kinect for Windows」を購入しちゃいました~♪(*≧∀≦)ノ

話題のNUIデバイス

Kinectは、マイクロソフトが開発したセンサータイプの入力デバイスです。手を触れずに、身振りや音声で操作することのできる「NUI(ナチュラル・ユーザ・インタフェース)」と呼ばれるタイプのアプリケーション開発に利用できます。Xbox360用のKinectが発売されたのは2010年11月なので、ずいぶん遅めのデビューになってしまいましたが、しばらくはこのKinectを検証していきたいと思います。

実売価格は2万円弱

「Kinect for Windows」の希望小売価格は2万4千800円です。ただし、発売から3か月ほど経過した現在は実売価格が2万円を下回るようになってきました。なにやら最近は「Kinect for Windowsスペシャルパック」といった、窓辺ななみさんとクラウディアさんの3Dモデルが同梱されているパックも発売されているみたいです。…が、ついでにDSP版のWindows7までついてくるので、お値段もお高いんですよねぇ。できれば上記の3Dモデルを検証に利用していきたかったのですが…さすがに趣味で出せる値段ではありませんのでションボリです(´・ω・`)

Kinectを夏コミのテーマに選んだ理由は…また別途お話しするとして、まずは開発環境の構築から始めて行きたいと思います!(ゝω・`)

GWの終わりから始まるモノ

ゴールデン・ウィークが終わった後から始まるものって…何だと思いますか?もちろん、仕事もそうですね~(T△T)でも、二次元と三次元の狭間に生きる我々にとって、もっと大切なことがあるはずです。それは…

今までの経験を活かして…

そうです、答えは夏コミの準備です。ご存じの通り、コミケにサークル(売り手)として参加できるかどうかは、抽選式になっています。夏コミの場合、当落が発表されるのは6月なので、まだ半月以上も先なのです。ですが、当落発表を待ってから動き始めると…たいがい痛い目を見ます。そこで今年は、GW明けから早々に夏コミの準備を始めることにしました!(`・ω・´)b

ネタはいろいろあるけれど…

ということで、現在は「ネタ」を思案中です。今年こそはしっかりと、開発者向けの同人誌を作成するのが目標です!幸いなことに、最近は色々な話題がありますので、ネタには全く事欠きません。例えば「Windows 8」と「Visual Studio 11」による「Metro style apps」あたりは旬なネタですよね~!ところが、私はスレートPCを持っていないので、これらの真価を検証することができません。

Windows 8の解像度って…

もちろん、スレートPCの中には安価なものもあるわけですが、Windows 8 でMetroアプリを利用する場合、選択肢は極端に限られます。そもそも、Windows 8における解像度の最低要件は「1024×768 (XGA)」だそうなので、比較的安価なスレートPCではこの要件を満たせません。さらに、Windows 8をタブレットとして使用する場合、上記の解像度にタブレット機能用のスナップ領域(?)を加算した「1366×768(FWXGA)」が最低要件となります。はふん。この条件を満たすスレートPCって、現状ではオイソレと買える値段じゃない(10万前後)んですよねぇ…。かといって、マルチタッチ対応ディスプレイとかで代用するのは、Windows 8やMetroアプリの方向性と少し違う気がしますし。

結局ふりだし!

ということで、これらのネタは引き続きアンテナを張りつつ、夏コミのネタには別の何かを考えないとマズそうです…orz

C#ぷりみてぃぶ!#1

日経BPさんの「日経ソフトウエア 2012年6月号」より、新しくマンガを連載させていただけることになりました~!。゚(゚ノД`゚)゚。 これもひとえに、読者の皆様のおかげです!本当にありがとうございますです!(*≧∀≦)ノ

新連載、はじまります!

インターン女子 C#を学ぶ」の連載が終わって早一ヶ月。今回はキャラクターを刷新しての新連載です!その名もズバリ「C#ぷりみてぃぶ」!今までは女子高生が主人公でしたので、感情移入が難しかったのが欠点でした。いや、もちろん欠点はそこだけじゃなくて、きわどいアングルやシチュエーションで多大なご迷惑をお掛けしたわけですが…。

そこで今回は、開発者なら誰でも一度は目にしたことのある「妖精さん」を主軸にして、C#や.NET Frameworkに関するTips的な内容をマンガで解説させていただきたいと思います。メインのターゲット層となる初心者~中級者の方々向けに、できる限りわかりやすい表現を心掛けたいと思いますので、お暇なときにでも読んでいただけましたら幸いです~!(≧ω≦)ノ

クラ○ディアさんじゃないし!

主人公の一人「始野めいん」のデザインは、例のごとく編集者さんの趣味アドバイスです。「ツリ目にワンレン」とのオーダーで、私としては「それクラウディアさんじゃ…(汗」と思いつつも、髪色や表現の仕方で独自のキャラクターに仕上げてみたつもりなのですが…いかがでしょうか?回を重ねるごとに味も出てくると思いますので、温かく見守っていただけましたら幸いです。

また今回は第一話ということで、コーディング規則を主軸とした内容にしてみました。具体的には、意外と知らない「Microsoftのコーディング規則」や「C#と.NET Frameworkの関係」など、実際にC#を扱う上で必須となる知識を盛り込んでみました。何かひとつでも得るものがあれば嬉しいです♪

ご当地アイドル「T!P」に注目!

あと、話は変わりますが、今月号には「HTML5 逆引きポケット辞典」が付録として付いてきます。内容が非常に充実していて素晴らしい一冊なのですが、この付録をより素晴らしく昇華しているのが、表紙を飾るアイドルユニット「T!P」です。以前、編集の方が興奮気味に撮影時の様子をお話ししてくれたので、どんなものかと期待していたのですが…スンバらしい~!(*゜∀゜)=3
でも…「手旗」に「黒ハイニーソ」は上級者向けのアイテムですよ?

リニューアルした日経ソフトウエアは、”本気”と書いて”マジ”っぽいです!

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

第77回codeseek勉強会&第17回日本C#ユーザー会 勉強会」に参加された皆様、お疲れ様でした~!(*≧∀≦)ノ

勉強会はいいものですね!

わたし自身、久しぶりの勉強会でしたので、色々な技術に触れられてとても楽しかったです!でも、色々な方々から刺激を受けられるということが、勉強会における一番の醍醐味ですよね~。スピーカーとしても、もっと笑えて楽しいお話ができるように今後とも精進致します。

資料はこちらから!

私のセッションで利用した資料は、以下のサイトから閲覧することが可能です。その他のスピーカーの方々の資料も閲覧することができるので必見です!

第77回codeseek勉強会&第17回日本C#ユーザー会 勉強会レポート

ソースコードはこちらから!

セッションで利用したアプリケーション(上記画像)のソースコード及び3Dモデルは、以下のリンクからダウンロードすることが可能です。ご覧いただけるとわかると思いますが、基本的にはプロジェクトテンプレートから生成される雛形に対して、3Dモデルを追加してGamePageに処理を実装しているだけです。これだけで3Dアプリが作れてしまうのは、Windows Phoneの強みですよね!
レッツ、パンチラ!

codeseek_csharp.zip

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

告知するのをすっかり忘れておりましたが…、4月7日(土)に開催される「第77回codeseek勉強会&第17回日本C#ユーザー会 勉強会」にスピーカーとして登壇させていただきます!(*≧∀≦)ノ

テーマはC#とゲーム!

勉強会のメインテーマは、C#におけるゲーム開発です。そこで私は「Windows Phone!そういうのもあるのか」というタイトルで、Windows Phoneにおけるゲーム開発がどのような感じなのかという概略をご紹介したいと思います。とりわけ、ゲーム開発における大きな壁の一つであるUI部分の開発が、Windows Phoneではとても簡単に行えるということをお伝えできればいいな~と考えております。お時間がおありの方は、ぜひとも足をお運びいただけましたら幸いです!

最近は新しい技術にとんとご無沙汰なので…いかんですね。今後は色々な勉強会にも積極に参加していきたいところです…(;´Д`A

インターン女子 最終回!

絶賛発売中の「日経ソフトウエア」2012年5月号に、インターン女子の第4回が掲載されました~!(*≧∀≦)ノ

第4回と書いて最終回と読む!

全4回に渡って続いた連載も、早いもので今回が最終回!最終回となる今回のテーマは「属性」です。属性は、理解しなくてもプログラミングは出来るけれど、知っていると非常に便利な機能です。じつは連載当初より、属性をテーマにマンガを描くのが楽しみでした。だって属性はマンガ…というか、萌えと相性バッチリですもの!属性を学んだ技術者であれば、誰もが一度は作成したことがありますよね?そう、「NekomimiAttribute」!

今回はこのネコミミ属性を例にして、属性の概略から具体例まで解説させていただきました。属性に今一つ自信のない方は、この機会にネコミミ属性でデビューしてみてはいかがでしょうか?すでに属性をご存じの方は、あの日のネコミミ属性を思い出していただければ幸いです!(≧ω≦)ノ

そして感動のティロ・フィナーレ!

そして…一生に一度はやってみたかった「あの」終わり方!これを商業誌でやらせていただけただけでも、今までがんばった甲斐があったというものです(゚ノД`゚)゚!そして何より、読者の方々がいたからこそ、ここまで連載を続けさせていただくことができました!お読みいただいたすべての方々に、心からお礼申し上げます!今まで本当にありがとうございました(`T▽T´)ゞ

ちなみに、日経ソフトウエアさんは来月号から全面リニューアルとのことですので、今月号でいろいろな連載が軒並み最終回を迎えました。日ソフがどのように生まれ変わるか、今から楽しみですね!

悲しいけどこれ国民の義務なのよね!

今日は確定申告の締切日でした… (;-ω-)ゞ

危うく忘れるところでしたがたしも税務署で申告を済ませてきました。なんと言っても納税は国民の義務ですものね!ああホント、納税できてウレシイナー!。゚(゚ノД`゚)゚。

e-Tax普及率は7割越え…?

私は毎年、税務署で直接申告しちゃいますが、インターネットから確定申告ができる「e-Tax」を利用するという選択肢もあります。でもこれ、事前準備がちょっと面倒臭そうでして…なかなか試してみる気になれません。具体的には、「電子証明書(ICカード)」を発行してもらったり、「ICカードリーダライタ」を購入する必要があるらしいのです。準備するだけでも一苦労ですよねぇ(;´д`)ゞ

で、どのくらいの人が利用しているのか、気になって調べてみました。その結果、国税庁の調査における普及率は7割以上だそうですよ、コレ∑(゚д゚;)!確定申告だけで見ても、全体の4割がe-Taxしているらしいです。う~ん…ホントに?でも、数少ない身近な利用者曰く、確かに便利とのことです。

e-Tax…来年こそは試してみたい…かも?

今夜のディナーは超豪華だし!

ご無沙汰しております…orz

最近はトント更新できておりませんでしたが…リハビリ(?)も兼ねて、またコツコツ更新していきたいと思います。゚(゚´Д`゚)゚。

ということで、コツコツ繋がりで、今夜の夕食は「とんこつラーメン」でした。正確にいうと「ブタメン」ですが…。さらに「蒲焼」と「カツ」に「ステーキ」という超豪華なラインナップです!幼少期のわたしにとっては、まさに満漢全席バリの本格ディナーですよコレ!そんな懐かしさに導かれ、忘れていた想い出たちも蘇ってきました!

心もお腹も一杯だぞっ♪本当に…()´д`()