また来た来たDirectX関連ライブラリ使いたくなる時期が

1年周期。DirectX直叩きとLuna(現Selene)などDirectX関連ライブラリ利用が入れ替わります。
昨年はずっとDirectX直叩きだったので今年はSeleneのターン!


加えて現在湍で使用しているManaged DirectX(MDX)は新版である2.0の開発が停止しXNAへの置き換えが決まっていることや、プレイする人の環境によっては「湍のためだけに」MDXを別途インストールしなければならなくなる現状も推進力です。
C++用ライブラリをC++/CLIでラップしてC#から使おうと考えています。


しかしSeleneはいつの間にかXファイルを読み込めない子になっていらっしゃいました。
XファイルからSMFという独自形式に変換しなければなりません。
この形式では当たり判定の設定やマテリアルごとのレンダリング設定などやれることは増えているのですがあんまり使うつもりもなく…


ほぼデフォルトにして最有力と思われていた候補が急減速してしまったため選択肢が増えてしまいました。
以下、結構インチキな印象に基づいてますので注意。

  • Luna

ソースコードは公開。
機能の量は十分以上。視錐台カリングや立体の当たり判定も含まれる。
現在開発が停止していますがその分今後の更新に振り回されない。
でもそれならMDXも開発停止がネックじゃなかったのという自問。

ソースコードは公開。
機能の量は最大。とてもじゃないですが使い切れません。
モデルデータ読み込みがSMF限定でなければ…Xファイルも読めれば…
X→SMFの変換を行うツール「Amaryllis」のソースまでも組み込んでしまえば読み込み時に変換を行えるかも知れない。

  • DXライブラリ3D

ソースコードは非公開。
機能の量は中くらい。今まで好きなときに機能を追加できる自作ライブラリだった身としてはちょっと不満も。
モデルのレンダリングを行うDrawModel関数の引数で位置や角度を指定するのは…
行列で渡せれば悪くなかったのですが。

  • DXUT

ソースコードは公開。
機能の量は中くらい。まだちゃんと見てないけど機能量以前に情報少ない気がします。
自作ライブラリと構造的には一番近いハズ。
更新が頻繁でついていくのが大変かも。

  • 直叩き(ぉ

おのれの腕を信じる
痒いところに手が届くのはそれはそれで悪くないけど、これではMDXのインストールが不要になる以外は何も変わらない


比較はこんな感じ?
眠いのでもう寝ます。