> そろそろローカルでのソース管理がややこしくなって来ました
> ここらで、懸案事項についての方針をお聞かせいただけると幸いです。
> 場合によってはブランチとしてのコミットなど、ご相談させてください。
ブランチを作ってやってもらう分には幾らでも変更してもらって構いません、は
い。色々返事が遅れてすいませんでした。
> ・PlantedMtVoxelを使わず、既存のMountainVoxelに木を持たせるようにする
> ・描画速度の問題に対応するため、オプションで樹木描画をON/OFF出来るようにする
> 関連投稿
> http://www.kohsuke.org/freetrain/archives/general/msg00646.html
> http://www.kohsuke.org/freetrain/archives/general/msg00683.html
了解です。
> ○ボクセルに柵、塀を持たせる。(ついでに地表も)
> ご返答を頂いていません。今後の指針をお聞かせください。
> 関連投稿
> http://www.kohsuke.org/freetrain/archives/general/msg00624.html
> http://www.kohsuke.org/freetrain/archives/general/msg00654.html
ボクセルは非常にabstractなコンセプトなつもりなので、
> public abstract void setFence( Direction d, Fence f );
> public abstract Fence getFence( Direction d );
> protected abstract void drawFrontFence(DrawContext display, Point pt);
> protected abstract void drawBehindFence(DrawContext display, Point pt);
といったようなものが入るのは個人的にはあまり好きではありません。Fenceが
それほど重要視されるべきコンセプトだとは思わないからです。言い換えれば、
Voxelをそのサブクラスではなく、Voxelとして取り扱うような次元では、柵など
という概念があってはならないと思います。
FenceSurroundedVoxelのようなVoxelを継承したクラスがあって、その中の内部
描画ロジックの一助として存在する、ということであればありかなと。
>
> ○建物プラグインのUI統合とplugin.xml記述法の改良
> 実装は川口さんにお任せする、ということでしたが、
> 拙作の試作版ソースは、UI部なども含め不要ということでしょうか。
> もし、私の提案と大きく異なるようなUIや、plugin.xmlの書式をお考えでしたら
> ご計画をお聞かせいただければ幸いです。
>
> 関連投稿
> http://www.kohsuke.org/freetrain/archives/general/msg00676.html
> http://www.kohsuke.org/freetrain/archives/general/msg00685.html
すいません、まだ手が回ってません。あと一週間位で修理に出したPCが帰って
くるので、それからでいいや、という風に思っていました。
私は大まかには次のようにしようと思っていました。
・EntityBuilderContributionという、非常に抽象的な「設置ロジック」を記述
する。これは、特定の(高さ/色とかの)UIを仮定しない。
・GUIコントローラはEntityBuilderContributionに対して作用する。例えば、現
在のような「ドロップダウンで選んで設置/撤去ボタンで操作」というのもで
きるし、「最近使ったEBC5個」みたいな表示も可能だし、ツールバーから直
接設置モードに入ることも出来る
・これらGUIはIControllerSiteをEBCに対して提供する。EBCはこのSiteインター
フェースを使って、追加のコントロール(例えば高さを選んだり色を選んだり
するための)を表示する
この方法だとプラグイン側もサイト側もかなりの自由度があるので、後から色々
な実装をする事ができます。この点が、高さと色にパラメータを絞った477さん
の方式よりもよいと思います。
plugin.xmlの書式は大抵最後に考えるので、今の時点でどうなるかはわかりませ
んが、どのEBC実装を使うのか指定するタグを導入して、後はそのEBC実装依存と
なるでしょう。
477さんの汎用GUIを利用させていただくとしたら、サイト側とEBC側が混じって
いるのでこれを分離する必要があるでしょう。しかし、高さ選択や色選択といっ
た良く使いそうなコントロールを持った汎用EBCを作る、というのは十分あり得
る選択肢だと思います。
川口耕介 / kk@kohsuke.org
_______________________________________________
FreeTrain-general mailing list
FreeTrain-general@lists.sourceforge.jp
http://lists.sourceforge.jp/mailman/listinfo/freetrain-general