CRLのプロジェクト

3次元物は大域座標と局所座標の使い分けが難しい。ばねのような線で空間内にある二つのモデルをつなごうとしているとき、ばねはとくにどちらのモデルにも属していないので、端点を大域座標で管理するのが正しいような気がしてしまっていたのだが、作っていじってみるとやっぱりそれは間違った考え方で、それぞれくっついているモデルの局所座標で管理した方が良いわけである。モデルはそれぞればらばらに動くわけだから。

もちろんその局所座標で線を引こうとしても正しくは引けないわけだが、レンダリング時にフックして大域座標に変換してから引く、という手順でできるわけだ。

それでもCroquetの3次元プログラムは、ようやく「掴めて」きたような気がする。それでも450ベースでやっている関係上、正式版になったときに使えない小さなテクニックがたくさんあるだろう、というあたりが悩ましいが。