祝:マイクロソフト勤続15年

私は1996年8月1日にマイクロソフト(株)に入社したので、マイクロソフト勤続15年になりました。 入社したころに頂いた Microsoft 創立20周年記念の腕時計(1995年に配られたもののようです) Softimage が原点です 入社したときは Softimage という 3D コンテンツ制作ツールのドキュメントやトレーニングの日本語化などを担当していました。Softimage 社はモントリオールに本社があり、形式的にはマイクロソフト(株)に入社ですが、実質的には Softimage 社に入社でした。Microsoft は Softimage 社を 1994年に買収しましたが、1998年に Avid Technology に売却しました(その後2008年に Autodesk が買収)。ですから Softimage の仕事をしたのは正味2年くらいでしたが、このころの上司・同僚・パートナー・競合・出版の方々などとは今も交流があり、たった2年とは思えません。 Avid に売却されたとき、本来は人も移動しなければならなかったのですが、DirectX, Direct3D のテクノロジーに興味があったので、DirectX エバンジェリストとしてマイクロソフトに残留する道を選択しました。 Softimage お宝 Tシャツ DirectX に育ててもらいました 1998年に移動したとき、DirectX 関連で5~6人いたメンバーはあっという間に二人に減り、毎年のようにマーケティング関連の部署をあちこち移動しましたが、幸いなことに DirectX というブランドは大きかったので、クビにもならずエバンジェリストとして比較的自由に活動できました。DirectX 6 ~ 9 を担当しましたが、技術的にも GPU の処理が拡大し、ゲームやグラフィックス分野でシェーダー プログラミングが普及した非常に面白い時代でした。 2000年に DirectX 8 の、2002年と2004年に DirectX 9 の SDK ドキュメントを日本語化しました。1999年に…

4

Mango Teapot ② Teapot クラス

Mango Teapot は Windows Phone 7.5 の AR アプリケーション サンプルです。ソースコードは MangoTeapot.codeplex.com にあります。 Silverlight と XNA によるグラフィックス デバイスの共有 Teapot クラス 加速度センサーと モーション カメラ 以前 Silverlight 5 (beta) で Teapot を描画したとき、頂点バッファとインデックスバッファを基に Blinn-Phong シェーダーで描画する Teapot クラスを作成しました。そのときの Teapot クラスに以下の変更を加えました。おもに XNA 4.0 への対応とシェーダーから固定機能(BasicEffect)への移行です。 IVertexType XNA 4.0 ではカスタム頂点フォーマットを定義する際に IVertexType を継承しなければならないので、それに対応しました。 private struct VertexPositionNormal : IVertexType {   private Vector3 _vertexPosition;  …

0

Mango Teapot ① Silverlight と XNA によるグラフィックス デバイスの共有

Windows Phone “Mango” では、Silverlight と XNA でグラフィックス デバイス(GPU サーフェイス)の共有が可能になっており、両方の API を使って同じ画面の描画ができるようになりました。また、カメラやコンパスや加速度計などさまざまなセンサーもアプリケーションから利用できるようになりました。 先日の「Windows Phone “Mango” 開発支援セミナー」用に、これらを活用したAR(Argument Reality)サンプル Mango Teapot を作成したので、その内容を数回に分けて解説します。 Mango Teapot は Windows Phone 7.5 の AR アプリケーション サンプルです。ソースコードは mangoteapot.codeplex.com で公開しています。ビルドするには Windows Phone SDK 7.1 Beta 2 が必要です。エミュレータでも動作しますが、実機での動作には Windows Phone “Mango” が必要ですので、もう少しお待ちください。 Silverlight と XNA によるグラフィックス デバイスの共有 Teapot クラス 加速度センサーと モーション カメラ      …

0

7/21 ライブ:Windows Phone “Mango” 開発支援セミナー~実践編

この Tech Fielders セミナーも数日で満席になってしまいましたが、7/21(木)13:30 からやはり Ustream でライブ配信するので、当日来られない方はライブ配信をご覧ください。 高橋さんが、担当セッション「Windows Phone アプリケーション開発実践~画面開発編~」の予告をしているので、私も対抗して(?)予告です。 WP アプリケーション開発実践 ~XNA 編~ Mango == XNA + Silverlight グラフィックス タッチとジェスチャ 加速度センサーとモーション カメラ これらを駆使した Mango Teapot をデモしますよ。

0

CodePlex:Kinect Audio Positioning

昨日の「Kinect for Window SDK をつかおう!」セミナーで紹介した Kinect マイクロフォンアレイを使った音源位置検出(正確には角度検出)の WPF サンプルを KinectAudionPosition.CodePlex にアップロードしました。 ビームフォーミング技術を使って角度を検出しているそうです。上図の緑の線がビームです。音源がどのビーム(青色)にいるかと、ビーム間のどのあたりかも予測値(オレンジ色)として分かるようになっています。 InotifyPropertyChanged を継承した KinectMicArray クラスを作成しました。このクラスでは BackgroundWorker でオーディオをサンプリングして(実際にはオーディオストリームは使いませんが)、KinectAudioSource.SoundSourcePosition プロパティ(音源予測角度)と、BeamChanged イベント ハンドラーで得たMicArrayBeamAngle を取得します。取得したことを Progress Report として UI スレッドに報告して、UI スレッドで PropertyChanged イベントを発生させています。これは BackgroundWorker(別スレッド)では PropertyChanged イベントを発生させることができないためです。 メインウィンドウでは、(WPF アプリらしく)直線の角度とこれらの角度をバインディングして、自動的にアニメーションができるようにしました。このサンプルではコード(C#)で書きましたが、XAML でも書けるはずです。

0

7/11 ライブ:Kinect for Windows SDK をつかおう!

7月11日(月)開催予定の[Tech Fielders セミナー 東京] 「Kinect for Windows SDK をつかおう!」は募集後すぐに満員になってしまいました。  しかし、2011年7月から私たちのチームの Tech Fielders セミナーは Ustream Live でライブ配信できるようになりました。Facebook の日本マイクロソフト UX チームのページから Ustream Live をクリックしてご覧ください。13:30 開演予定です。 P.S. 7/21 開催予定の 「Windows Phone "Mango" 開発支援セミナー~実践編」もやはりすぐ満員になってしまいましたが、同じように Ustream Live でライブ配信する予定です。

0

MSDN マガジン:MS は DEC の教訓を生かせるか

6月号の翻訳に、5月号の「DECよ、永遠に」の続き、「MS は DEC の教訓を生かせるか」が掲載されました。DEC はかつてすべてのコンピューターを VAX だと見ており、PC は何もできないおもちゃだと言って、市場の変化に乗り損ねた。MS は今すべてのコンピューターを PC と見ており、スレートは何もできないおもちゃだ言って、Windows Phone 7 にまで Office を載せて自慢している。DEC の二の舞にならない?という趣旨でした。 Steve Jobs は一つのiPhoneのために100以上のアイデアを葬ったと言われています。断舎利じゃないけど捨てる戦略が必要なんですけどね。

0

Kinect ジェスチャ ライブラリー

Microsoft フランスのエバンジェリスト David Catuhe が、Kinect のジェスチャを登録・認識するライブラリーを作成して、kinecttoolkit.codeplexで公開しました。解説は彼のブログに載っています。 SwipeGestureDetector によって swipe のジェスチャが認識できるそうです。また、ジェスチャを軌跡として描画することもできます。

0

Hokuriku.NET Vol.7 in 福井 (7/30)

7月30日(土)に福井市で開催される、コミュニティ勉強会「Hokuriku.NET Vol.7 in 福井」で Kinect for Windows SDK beta について講演します。 プログラムは以下の通りです。 Kinect for Windows SDK beta:川西 Windows Phone 7 + Azure:初音玲さん WP7 か Silverlight 5 で何か:西村誠さん Silverlight 5 でぶり返す WPF 不要論:八巻雄哉さん ライトニングトーク

0

MSDN ライブラリ:C++ による Windows プログラミングの学習

先日、「Hilo:Windows 7 C++ ネイティブ テクノロジ学習プロジェクト」 が日本語で公開されましたが、初学者には少し高度な内容でした。C++ 初学者向けのコンテンツ「C++ による Windows プログラミングの学習」の日本語版が MSDN ライブラリで公開されました。内容は以下の通りです。 Windows C++ プログラミングの概要 開発環境を準備する Windows におけるコーディング規約 文字列を使用する ウィンドウとは WinMain:アプリケーション エントリポイント モジュール1、初めての Windows プログラム ウィンドウを作成する ウィンドウ メッセージ ウィンドウ プロシージャを記述する ウィンドウに描画する ウィンドウを閉じる アプリケーション状態を管理する モジュール2、Windows プログラムにおける COM の使用 COM インターフェイスとは COM ライブラリを初期化する COM のエラーコード COM でオブジェクトを作成する 例:「ファイルを開く」ダイアログボックス オブジェクトの有効期間を管理する オブジェクトにインターフェイスを要求する COM のメモリ割り当て COM のコーディング プラクティス COM のエラー処理…

0