2006年11月29日水曜日

DXPresentation 0.85 リリース

  • サイドショーガジェットにおいて、タイムキーパーが動作しているときは残り時間を表示するようにした
  • サイドショーガジェットにおいて、現在のスライドにノートがある場合は表示するようにした
  • サイドショーガジェットへの書き出し処理を高速化した
サイドショーガジェットは、Windows Vista でのみ動作します。
DXPresentation はサイドショーガジェットをインストールしなくてもこれまで通り動作ます。

サイドショーガジェットは場所としてはどこに配置されるのがスタンダードになるのだろうか。
ノートPCの液晶裏側に取り外し可能な形で実装されればプレゼンに便利だ。
またNintendoDSやPSPなどが使えるようになって
もおもしろい。
ゲーム機の場合描画能力が高すぎて、それはそれで問題が起きるかもしれないし、対応するためにソフトを
作っても採算が取れない可能性が高いかもしれないが。

DXPresentation 0.84 リリース / サイドショーガジェット対応

  • Windows Vista において、「次のスライド内容」をサイドショーガジェットに表示できるようにした(実験中・取り扱い注意)
  • [設定]メニューを追加した。フルシーンアンチエイリアシングとサイドショーガジェットの設定が可能。

サイドショーガジェットのインストールについて
  • Windows Vista 専用の機能です
  • デタッチャブルなガジェットが今後登場したときに、マルチディスプレイなしに次のスライド内容を確認することができます
  • 今後、ノートやタイムキーパーも表示させる予定です
  • インストールした場合に何が起きても責任を取ることは一切できません
  • ガジェットをインストールする場合は、インストール
    方法を完全に理解してからにしてください
  • 現段階ではアンインストール方法は記述しません(インストール内容をきちんと理解すれば問題なく実行できると思います)

インストール方法:


1. ガジェットの現物はまだ発売されていないため、ガジェットシミュレータをインストールします
1.1 WindowsSDK をインストールします
1.2 SDK の Bin ディレクトリの中から WindowsSideShowVirtualDevice /regserver を実行します

2. DXPSideShow をインストールします
2.1 DXPSideShow.reg をシステムにインストールし、レジストリに書き込みます

yle="font-weight: bold;">3. 使い方
3.1 システムのコントロールパネルの「Windows SideShow」に現れる「DXPresentation SideShow Gadget」にチェックをいれます
3.2 SDK の Bin ディレクトリの中から VirtualSideShow.exe を実行します
3.3 DXPresentation を起動して、[設定]メニューからサイドショーガジェットを有効にします



2006年11月27日月曜日

Windows Vista サイドショーガジェットのサンプルについて

Hello, World が動作しないと以前のエントリで書いたが、よくわからないが動くようになった。

Windows Sideshow Hello World

DXPresentation 0.83 リリース

  • backlight エフェクトでのライティング修正。ポイントライト追加。
  • backlight エフェクトを多少高速化した。このエフェクトはピクセルフィルレートの高いビデオカードが必要。
  • 細かい修正



2006年11月25日土曜日

DXPresentation 0.82 リリース

  • backlight エフェクト追加。後光が射したような感じの表現を目標とする。このエフェクトはまだ開発中。
  • 細かい修正


開発中の backlight エフェクト

2006年11月22日水曜日

DXPresentation 0.81 リリース

point3 に致命的なバグがあったので修正:

  • フルシーンアンチエイリアスを指定できるようにした。settings.ini ファイルに bAntiAlias=TRUE と記述する
  • point3 エフェクトで背景の色指定によって停止することがあったので修正した。
  • point3 エフェクト実行中に背景色がおかしくなることがあったので修正した。
  • プログラマブルシェーダ準備

アンチエイリアシングはそのうち設定ダイアログから設定できるようにしたい。
シェーダは HLSL で書こうと思うが、初めてなのでまだ入門書を読んでいる。アセンブリ言語で書くのと比べると恐ろしく簡単そうだ。

2006年11月21日火曜日

ITMediaエンタープライズにインタビュー記事掲載(Windows Vista サイドバーガジェット)

縁あって、ITMediaエンタープライズにインタビュー記事が掲載された。Windows Vista サイドバーガジェット絡み。
http://www.itmedia.co.jp/enterprise/articles/0611/21/news020.html

DXPresentation 0.80 リリース

0.79 2006.11.19 センタリング(.textalign center)設定時の、point2 エフェクトのパーティクル描画がずれていたので修正した
0.80 2006.11.21 point3 エフェクトを追加した。パーティクルのバリエーション。ブラーを ON にしたほうが効果がある。


point3 エフェクト

2006年11月20日月曜日

マイクロソフト プレゼンター 3000 / Microsoft Presenter 3000 が発売される

 Microsoft Presenter 3000 が発売される。

http://www.microsoft.com/japan/hardware/presenter/presen3000.mspx

ロジクールやコクヨなどのコードレスプレゼンターよりも価格が安いし、タイマーがついている。おそらく買う。
今日は社内でプレゼンを見る機会があった。相変わらず配布資料を凝視することを前提としたプレゼンだった。事前にハードコピーを配布する場合、スクリーンに投影されているスライドは今どのページをみればいいのかを教えてくれる程度の機能しかもたない。ページをめくるトリガに成り下がっているわけだ。少人数を相手にしたプレゼンの場合はそれでもいいのだが、人数が多い場合は相当な一方通行になるので、オーディエンスは退屈になる。ハードコピーを配らず、プレゼン
ターが魅力ある話をするのが解決の第一歩だが、プレゼン技法だけで全てを解決できる問題ではないように思える。オーディエンス同士の一体感のようなものを醸成するハード的な工夫が必要なのではないだろうか。


2006年11月18日土曜日

DXPresentation 0.78 リリース

  • センタリング(.textalign center)設定時に、一行に一文字しかない場合レイアウトが乱れていたので修正した
  • blast エフェクトを実装(このエフェクトは実装途中です montablockcolor で指定されたカラーを暫定的にエフェクトに使用しています)


開発中の blast エフェクト


DXPresentation で今後やりたいこととしては、プログラマブルシェーダを用いた様々なエフェクトがある。特に HDR は費用対効果が良いので使いたい。あとはパーティクル系、ライトトレイル、爆発系、シネマフィルムなどをやりたい。ただし、現在の DXPresentation は固定
?・ェーダしか使っていないから、どんなビデオカードでもそれなりに動作するが、以上にあげたようなエフェクトをやりだすと普通のノートPCでは性能が追いつかない可能性もある。

2006年11月17日金曜日

Windows Vista Sideshow Gadgets / サイドショーガジェットについて

Vista のサイドショーガジェットの Hello World サンプルをビルドしてみた。ビルドはうまくいき、ガジェットの実行時もガジェットホスト側のエラーはでない。しかし、VirtualSideShow.exeからロードすると、ガジェット画面に Page not found と出てしまう(Vista RC1)。ReadMe 通りにセットアップしたのだが。
Windows SDKs が古いのが原因かもしれない。仕事以外で久しぶりに C++ をいじった。

WPF を用いた高橋メソッドツール FXPresentation 0.01 リリース

WPF を用いた高橋メソッドツール FXPresentation 0.01 をリリースした。Windows Vista 専用

DOWNLOAD: 
http://www6.plala.or.jp/nyk/files/FXPresentation001.zip



●FXPresentation とは
・FXPresentation は高橋メソッドを用いたプレゼンテーションツールです
・指定さ
?たフォーマットのテキストファイルを再生します
・文字はスクリーン一杯に描画されます
・Windows Vista に搭載される WPF(Windows Presentation Foundation)を作者が学習するために作成されました
                 
●DXPresentation との違い
・テキストの画質が向上しました
・ドロップシャドウがソフトになりました
・ベベルが斜めになりました
・2D描画になりました
・アニメーション・エフェクトがありません
・そのほか機能が縮小されています
今後なんとかします

今後は DXPresentation にあった機能を取り入れていきたい。ま
?、Vista 専用なのだからミラーツールの代わりにサイドショーガジェットを使ってもおもしろいかもしれない。

スクリーンショット:


プレゼンターツールは DXPresentation のコード(.NET Framework2.0)をそのまま使えた


TMPresentation や DXPresentation と比較して、多少テキストの品質が上がっている

2006年11月16日木曜日

WPF / .NET Framework 3.0 の生産性について

前回のエントリで WPF は Vista 入手までいじらないかもと書いたが、もう少しいじってみる。3Dアニメーションなしなら、フレームレートの低さが目立つことはないだろうから。


現状の VS2005 でプログラムを作るとしたら、WPF よりも WindowsForm を使ったほうが圧倒的に生産性が高い。IDE がまだまだ中途半端にしか対応していないからだ。それに自分の場合WindowsForm に初めて触れたのが去年の 12 月だったから、せっかく使い方を覚えたのにもう捨ててしまうのはもったいない。WindowsForm と WPF をひとつのプログラムで併用するようなことも可能であればやってみよう。


ところで、「XAML IN A NUTSHELL」というオライリーの本を買ってみた。XAML のリファレンス本で、なかなか読みやすい。ペーパーバックは軽い(質量が小さい)ので持ち運びしやすくて重宝する。もう一冊気になっている本で、「Applications = Code + Markup: A Guide to the Microsoft Windows Presentation Foundation」という Perzold の本があるのだが、こちらはハードカバーで1000ページ以上ある。翻訳を待っていたらいつになるかわからないので、買うかもしれない。


2006年11月13日月曜日

WPF のエフェクトのパフォーマンスについて

Viewport3D のパフォーマンスについて調べる前に、まずは 2D 表示について色々とやってみることにした。Viewport3D のレンダリングが重い原因がわからず、作業が進まないからだ。
テキストを装飾付きでレンダリングするために FormattedText から Geometry -> GeometryDrawing -> DraingImage と作っていき、最終的に Image を作っている。このときエフェクトとして、ブラー、ベベル、グロー、ドロップシャドウなどが使えるのだが、ベベルの品質に疑問を感じる。特に RadialGradientBrush と組み合わせるとグラデーションのアルファ値によっては絵が破綻する(Vista RC1)。直る予定のあるバグならよいのだが。
また、複数のビットマップエフェクトを同時に適用したり、アニメーションと組み合わせることができるが、そういうことをすると途端に動作が重くなる(Athlon64 3400 / Vi
staRC1 / Radeon1600Pro)。ソフトレンダリングになっているかのような重さだ。というか、ピクセルシェーダーを使ってこの重さは考えられないから、多分ソフトレンダリングだ。
以上のように、RC1上でよくわからない現象が起きているので Vista RTM 上で WPF の評価をしたい。しかし自分は手に入る環境にはないので来年1月末の Vista 発売まで WPF を触ることは多分ないだろう。

2006年11月11日土曜日

WPF の Viewport3D のパフォーマンスについて2

WPF の Viewport3D のパフォーマンスだが、自分のプログラムではやはり良くない。ウィンドウのサイズを変えたり、頂点数を変えてみてもあまりフレームレートに影響がないので、GPUパイプラインのかなり前にボトルネックがあるように思える。ジオメトリに貼る VisualBrush の構成内容に影響されているのかもしれない。とにかくボトルネックが何なのかを確認しないとまずい。


あとアニメーションをさまざまなプロパティに適用できてとても便利なのだが、負荷が重いときは必ずドロップフレームさせるポリシーになっているようだ。これはこれで正しいが、用途によっては非常に見苦しい絵になることもある。


重いのは Vista が RC1だからなのだろうか。そうであるなら、RTM まで別のことをやっていたほうが時間の無駄にならない。そうではなく WPF のパフォーマンスがこれだというなら、今自分の作っている 3D プログラムは Direct3D で書く。NHK のデモはどんなコードだったのだろう。


まあ、Windows Form でやっていたような 2D の UI 構築を WPF でリッチな表現に書き直すことには意義があると思う。ただ Orcas は CTP で打ち止め宣言が出ているので、少なくとも Visual Studio 2005 を使っているうちは、やる気がでないという開発者も多いのではないか。これはマイクロソフト的にもまずいと思うが。


2006年11月9日木曜日

WPF の Viewport3D のパフォーマンスについて

昨日のエントリで、WPF の Viewport3D のパフォーマンスが悪いような気がすると書いたが、環境のせいかもしれない。
今作っているプログラムは、ノートPC(VistaRC1 x86 / GeForce Go7400)では30fpsもいっていない感じなのだが、デスクトップ(VistaRC1 x64 / RadeonX1600PRO)では、
常に 60fps 前後出ていることを確認した。Perforator という非常に便利な SDK のツールでフレームレートを確認できる。
ちなみにプログラムはジオメトリをたくさん並べて、カメラをアニメーションさせる内容。
話がそれるが、このプログラムでは当初はカメラのモーションは自前でやっていた。しかし、SplineAnimation がかなり使えそうな感じなので、これでやることになりそうだ。
書くコードの量が減って助かるが、罠がないことを祈る。

2006年11月7日火曜日

.NET Framework 3.0 が正式リリースされた

.NET Framework 3.0 が正式リリースされた。また、Windows SDK や VS2005 extensions(旧Orcas) も更新されているようだが、手持ちの Windows Vista RC には対応していないようだ。WindowsXP ならうまくいくのだろうが、落ち着いて作業するにはどうしたらよいというのだろう。
最近 WPF の Viewport3D をいじっている。感想としては、シーンをひとつの XML ファイルで表現でき、ある程度のアニメーションをその中に組み込むことができて便利だ。XAML を使わない場合でもドキュメントツリーを逐次構築すれば、すなわちシーンを構築したことになる。ここでいうシーンにはカメラやライトやモデルのマテリアルなど必要なものがほとんど全て入れられる。またかなりの抽象化が進んでいて GPU のことを考える必要はない(これは欠点にもなる)。DirectX を直接使うのに比べるとリソース
管理を厳密にやらなくてもよい分生産性は高い。今後、XAML ベースの 3D オーサリングツールを使える環境であれば、誰でも 3D プログラムを簡単に作ることができるようになるだろう。
Viewport3D の欠点としては、パフォーマンスが良くないように思える(自分のミス/環境のせいかもしれない)ことと、GPUを生かしきれるような自由さが無いっぽい点がある。UI の記述やこれまで Flash でやってきたことを本当の 3D としてやりたい場合には最適だと思うが、ゲームなどパフォーマンスとビジュアルのどちらも大切なアプリケーションでは制限が多いかもしれない。
WPF に関しては今後いろいろ試してみる。