カレンダー:
・2008: 3月 / 5月 / 6月 / 8月 / 9月 / 10月
・2009: 1月 / 2月 / 4月 / 6月 / 7月 / 10月
何もせず、ただぐーたらしていた訳ではありませんよ・・・?(本当に
ちなみに、仕事で忙しくて何もしていないと言うオチでもありません。・・・まぁ、仕事はそれなりに忙しくもありますが。(何
と言うか実は、コミット履歴自体は1/15くらいまであるものの、実は本当のMGL・・・って言うか何て言うか、August Frameworkやら、 直接ゲーム開発に関わる部分は、実は11/20辺りのが最後だったり・・・。
つまりは、前回の日記、及び前回の最終リリースより半月後以降は、全然違う事をやっていたと言う事です。
で、何をやっていたかと言いますと。
Roast+の方をずーーーっと、弄ってました。
2009/10/10の日記で書いた、SIMDの件の続きに始まり、ファイルアクセスの共通クラスやら、WaveファイルやらLFSRやら・・・。
まぁ、本プロジェクト(Open-MGL/Neptune)とは全く関係ない、別プログラムのための作業なんですけど。(←
でも折角なので、その過程で出てきた、共通関数/クラスとして出来そうな部分を、Roast+の方にも蓄積・・・と言う訳です。
と言うか、こう言ったライブラリ的な物って言うのは、実際に使っていく中で作って行かないと、いざ使ってみた時に、
なかなか実用的でなかったりしますしね。目的無しで作っても、使われるに値しないものが出来てしまう事がよく有ります。
なのでまぁ、丁度いい機会と言うか、そんな感じです。
で、今ふと気がつけば、何故か「テンプレートプログラミング」にまで手を出してたりします。(何
C++歴かれこれ7年くらい・・・。ようやく重い腰を上げてレンプレートプログラミングに着手した感じです。
あ、ちなみに、ジェネリクス的なテンプレートの使い方だけであれば、勿論以前から使ってましたけどね。
ただしこういうのは「テンプレートプログラミング」とは言わない・・・。本当の意味での
「テンプレートプログラミング」に手を出し始めたのは、ついぞ年が開けてからの事です。
定番書「Modern C++ Design」
も買ったりしました。ま、基本的には出来る限り本には頼らず、自力で解決して行く方針にはしておりますが。(まぁ本を買ったのは、困った時用、バイブル的な感じです)
んでまぁRoast+の方に、そういったテンプレートプログラミング的な要素もバンバン追加していってる訳なのですが・・・
これについて書き始めるとまた長くなるのでまたの機械に・・・。
ちなみにRoast+なのですが、そう言った本格的なテンプレートプログラミングを始めた頃、1月中頃。別Projectとして分離しました。
理由としては、かねてから「ライセンス・・・Open-MGLとは違うものにしようと思ってるんだけれど・・・これって大丈夫・・・?」
って言うのもあり、また、そもそも毛並みがかなり違い、また、規模としてもだいぶデカくなってきちゃっていたので、分離した訳です。
・・・今はソースコードリポジトリの移行となっていますが・・・。まぁ最終的にはWikiとかも移行ですね。
・・・って言うかRoast+もだいぶ方向性が、元のWikiに書いてある奴から変わって来ちゃったなぁ・・・。あ、まぁここらへんも今度の機会に話すか。(何
最後に、肝心のビッグニュースをお伝えしなければなりません・・・。
Open-MGLの方は暫く更新しないつもりで居ます。
Open-MGLのライセンスを BSD License から MIT License へと変更しました。
ちなみに変更の理由としては、BSDの場合、
「特別の許可が無くては、このソフトウェアから派生した製品の推奨や宣伝に、<組織>の名前やその貢献者の名前を使用してはいけない。」
と言う条項があるのですが、別にそんなの制限する理由はないし、むしろバンバン宣伝して貰った方が良いじゃない!?と言う事でです。
元々、MITを初めて見て調べた当時から、「将来的にはMITにしよう」と、思っていたのですが、
当時MITってあんま知られて居なさそうだったのでやめておきました。
で、昨今、割とMITを採用するソフトウェアも増えつつあり、
「そろそろ良いだろう。」と言うことでMITに変更した次第です。