4/22/2009

Fast Light Tool Kit

Fast Light Tool Kitの初心者のためのチュートリアルを少し見た。
これはWindowsの.NETのFormの作り方によく似た感じを覚える。
クラスをインスタンス化して、Begin()-End()の間でコントロールを設置している。そのあとでShow()、表示させて、Run()でメッセージループの開始をしている。このWindowのクラスの抽象度はとてもいいと思う。惜しむらくはBeginとEndに目的語に当たるものをちゃんと設定してほしかった。あるいはUnlock-Lockといった対になることとその間だけでなにかが許可されていることを表す関数名がよかった。
この抽象度は.NETのFormも同じぐらいだ。これは、C#のFormの動きをみればよく分かる。どちらが先とか言うことではなくて、この設計思想はたとえばボタンをすぐに乗っければいいと思う人にとっては、Begin()-End()のロック機構がまどろっこしいだろうし、呪文にしては、Begin-Endは上記の理由で不適切だと思う。
ぱっと見た感じだけど、よく考えられていると思う。そしてなにより扱いやすそうだ。抽象度が適当だと思う。このライブラリは更新も割りと頻繁に行われているようなので、当分はいけるのかな。日本語の解説サイトがないことがもしかしたら普及が遅い理由なのかもしれない。あるいはFLTKがクロスが不十分か、Macが非対応か?
そしてクロスプラットフォームにそれほどこだわるのはなぜか?実行形式にされないと結局はどの環境でも使えないし、そもそもパフォーマンスをあげるのは、やはりオーダーメイドで、仮想レイヤーが少ない場合だろう。この流れでいうと、Windowsのみで、クロスプラットフォームサポートを捨てた日本製のToolKitの開発というのも意外とアリなのかもしれない。解説サイトが日本語は当たり前だ。でも技術的な知識の蓄積は見込めないし、コードの修正、改造なども頻繁とは行かないだろう。海外のユーザーがつかわないと技術的な情報の蓄積が見込めない(母体数と能動的参加者の明白な差)ので、海外の技術者コミュニティにコミットしたものがいいだろう。それでいうとGLUTとFLTKはいいのだろう・・・
あとは映像製作用に特化した細分化された巨大なライブラリ群かな…
細分化された巨大なライブラリというのは、必要に応じて、使うライブラリを減らせるということでファイルサイズに制約がある場合に対応できて、なおかつ製作中は多くのライブラリでサポートすることによって撮影を簡便にすることだ。・・・え、既存のライブラリを集めればいいって?そりゃそうだ。
さらにさらにいうとライブラリの信頼性については、各々が確認してから使うしかないのがつらい。ライブラリの信頼性はアプリケーションの信頼性だし、もろもろのソースコードにまつわる問題と一蓮托生だ。とりあえず自分でWindowsのFormをC++ベースで抽象化してみる。・・・本当はC#が好きです。

0 件のコメント:

コメントを投稿