open-mgl-dev (開発バージョン) (0.7.9.80) | 2009-11-02 22:25 |
open-mgl (DirectX9, VC++2008) (0.7.9) | 2009-09-27 20:32 |
roast-dev (開発バージョン) (0.0.1.40-dev) | 2009-11-02 23:09 |
DirectXを利用した2D、3Dグラフィクスゲーム開発向けのC++ライブラリです。
初心者でも簡単に扱え、且つ、上級者の使用にも耐えられるライブラリを目指します。
比較的オブジェクト指向の強いライブラリでもあります。
August Frameworkでは更にオブジェクト指向の色を強め、コントロールベースによる開発を行います。
全ての機能クラスはコントロールとして扱われ、基底クラスとして agh::CControlBase を持ちます。
共通の基底クラスを持つ事により各クラス間のインターフェースが統一され、複雑な連携を取る事も可能になりました。
それぞれの各機能クラスは、必ず”デフォルトの処理”を持ちます。
これにより、ユーザが入力すべきコードは必要最低限になります。
これまでのDirectXによるゲーム開発では、莫大な初期化処理を記述する必要がありましたが、
August Framework ではフレームワークが勝手にやってくれます。
言語上の制限により、コントロールの登録処理を1行記述する、程度の手間は多少残りますが、
それ以外には、特に何かする必要がなければ、何もする必要はありません。
最も短いコードでは3行で済みます。あなたは指定された一つのヘッダファイルをincludeし、
使いたいクラスを宣言し、実行すべきメソッドを呼び出せばいいだけなのです。
(WinMainの宣言や、windows.hのinclude等については除いたステップ数です)
これは、まっさらなウインドウを表示するだけの場合ですが、
しかし、これに加えて、画面上に一つの画像を表示しようとした場合でも、+10ステップ程度の追加で済みます。
初めてDirectXによるゲーム開発を行う人にとっては”これが当然”と思うかも知れませんが、
そうでない人にとってはそうではないのです。そういう人々にとって August Framework は
かつてない程の高速なゲーム開発を実現する手段になるでしょう。
現在、Open-MGLを利用した上位アプリケーションとして「Neptune」と言うソフトを(別の SourceForge.jp プロジェクトとして)開発中です。
Neptuneは2D、3Dゲームの統合開発環境(IDE)──というよりも「オーサリング・ツール」です。
単なる言語ライブラリでは限界があると判断し、2008年初めに開発を開始しました。
なお、これに伴いOpen-MGLの開発がとまったわけではなく、むしろNeptune開発中に
「こんな機能があるといいな」と言うのをどんどんフィードバックし、こちらも依然として開発を続けています。
(むしろこのフィードバックにより、以前にも増して開発が活発化しているとも言えます。)