2008年05月の駄文
2008年05月29日……次期箱庭の事など
次期箱庭は島関係のデータとDBとのやり取りと最初の島の登録処理が大体完了した。
目下問題になっているのはゲームの設定データをどうやってファイルとやり取りするかという問題。
要はゲームの設定パラメータをどうやってファイルから読み込むかという問題。
今までの箱庭はほとんどの設定はスクリプトに直接書いてあったものを手作業で修正して再アップするというものだったが、今回は当然「スクリプト」でもなければ「スクリプトに直書き」というわけにもいかないので、「設定」として可変な部分をロジックとは分離する。
ゆくゆくは管理者によるパラメータ変更などもWebで行えるようにしたいため、設定ファイルは「読み書き」できることが望ましい。
ってことで今流行の「XMLファイル」で設定をさせてみようと実験中。
主にDigesterとJAXBを使っているが、まあどっちもそれなりにイロイロ問題があったが、モノになりそうな気配。
Digesterは解析ロジックを外出しにして、新しい設定ファイルができた場合も再コンパイルなしである程度対応が可能なものの、読み込みしかできない。
今のところ「Hexの種類の設定」に使用。
JAXBはその他ほとんどのモロモロのパラメータを保存するのに使用。
でも、開発のしやすさを考えてMaven経由でxjcを使おうとしたが、これが結構難問。
まずJAXBのMavenプラグインが貧弱なうえに、バグあり。
これはJAXBを使ってXMLスキーマからBean classを生成する部分だけ別Mavenプロジェクトにすることでアドホックに対応。
(本当はJAXBのバージョンをあげればxjcもバグがないものもあるようなのだが…できるだけJDKの状態でやれるところまでやりたいので。)
あと、XMLスキーマからJavaソースを作らせる方法だと、eclipseなどでコーディングをやっている場合に自動生成される予定のClassがあつかえない。(まだ存在しないのだから…。)これはMavenの流儀に違反しそうなので、xjcはあくまでも補助的にclass生成に使い、Mavenから毎回xjcを呼ぶことはしないようにした。
あ〜、上のほうに行くにしたがってだんだん厄介になってきた!!
Map構造を3Dにしたのはいいけど、それって表示が普通のHTMLだけじゃできないってことじゃん!!
Flashですか?Appletですか?それとも古のJWSですか?(笑)
Java3Dって何度も挫折してるしなぁ…。困った。