Rosso Laboratory

Rosso Laboratory

主に鉄道模型シミュレーター(VRM)などの仮想鉄道アプリを扱うブログです。またHDR写真の記事も書いています。

影を付ける

「今回はかなりキツかったぜ」という影付け。



「track」でも「shadows」の項目があるので出来るのかと思ったが駄目だった。やはりTRS2006では「bridge」である必要があるみたい(別の方法が無いとは限らないけども今のところ不明)

「track」と「bridge」では「initiator」と「terminator」のモデリングの位置構成が違う(下記参照)し、「double-track」であることが必要条件になっているみたいだし、影のみならず両端も上手く出現してくれず苦労したわ。そういえば影用モデルは一体化しないと駄目というのもあったなぁ。

今回の作業で影付きモデルが比較的少ない理由がよく分かったよ。これは結構面倒な作業だ。両端は使い回しているとはいえ、全部で6個の3Dモデルで構成されるからね。

---*---*---*---

<おまけ>
TRS2006用のモデリングの位置構成図解。

<GMAXの上面から見た場合の位置構成>

この構成さえ解っていれば、私のように試行錯誤する必要はなくなるだろう。

で、ようやく解ったことは、TS2009の「track」は、TRS2006の「bridge」と同じ位置構成に変わっているということ。Config.txtの構文もかなり違う(下記参照)んだけどね。

「bendy」は使えないがデフォルトでオン状態と思っておけば良い。そして、「initiator」が「endcap-prev」、「terminator」が「endcap-next」になり、「mesh-table」で登録したものを呼び出せば良い。TRS2006では「bendy」をオンにしたら、「initiator」や「terminator」が表示されなかったけど、この点が改善されていたんだね。

TS2009の「track」は、Config.txtの構文や3Dモデルの位置構成等、TRS2006から大きく変わってしまったから、その辺が分からず、上手くいかなかったんだなぁ。「spline」は使えないけど、「track」で使えることが判明したので良かった。

<参考>
<Build2.5(TRS2006用)Config.txt(一部抜粋)>
length 4.8 ←dividerの長さ
endlength 3 ←端末の長さ(構成的に不要みたい)
initiator "terminal_start" ←initiatorはterminal_startフォルダ内のメッシュを指定
terminator "terminal_end" ←terminatorはterminal_endフォルダ内のメッシュを指定
divider "default"
 ←dividerのメッシュを指定(default.imという名であれば不要みたい)

<Build2.9(TS2009用)Config.txt(一部抜粋)>
mesh-table ←IMファイルを登録する構文
{
 default ←Config.txt内での登録名
 {
  mesh "default.im" ←IMファイル名
 }

 terminal_start
 {
  mesh "terminal_start/terminal_start.im" ←フォルダ名¥IMファイル名の場合
 }

 terminal_end
 {
  mesh "terminal_end/terminal_end.im"
 }
}

track ←dividerに相当する部分
{
 mesh-length 4.8
 track-lod-tree ←Level Of Detailを使わなくてもこの構文を使う
 {
  mesh "default" ←Config.txt内での登録名で指定
 }
}

endcap-prev ←initiatorに相当する部分
{
 mesh-length 3
 track-lod-tree
 {
  mesh "terminal_start"
 }
}

endcap-next ←terminatorに相当する部分
{
 mesh-length 3
 track-lod-tree
 {
  mesh "terminal_end"
 }
}


全く同じことを指定しているんだが、Config.txtはこんなに違うんだよねぇ。TRS2006までは結構曖昧な感じだったのが、TS2009では結構厳密になったという感じがする。まぁ、それは3Dモデルの位置構成の変更が主な理由だろうけども。