Zバッファの泣き所

3Dグラフィックを実現するグラフィックカードは、一般的にZバッファをベースに動作しています。メモリーが限られていた3Dグラフィックの黎明期は、ポリゴンの前後判断がもっとも難しい問題でした。現在は、潤沢なメモリーが利用できるようになり、高速で確実に前後判断ができるZバッファという仕組みが使われています。

このZバッファ、原理的にシンプルでしかも強力です。

Z停止
Zバッファを停止した場合の画面です。手前のキャラから描いています。後ろのキャラクターが、後から描かれるため、手前のキャラクターを上書きしてしまいます。これだと前後関係がおかしいことになります。

Z有効
Zバッファへの書き込みを有効にすると、前後判断が適切に行われ、前後関係が正しく描かれます。Zバッファは、画面のピクセル単位で判断できるため、どんなに複雑な形でも正しく描画できます。

このZバッファ、画面のピクセル単位で比較するという原理からくる大きな弱点が存在します。

判断失敗
それは、写真のように半透明の場合です。
手前の半透明キャラが先に描かれると、後から描く奥のキャラクターは、手前のキャラが前方にいると判断して重なる部分が描画されません。半透明に透けて見えるようになるのが好ましいのですが。

半透明を多用するパーティクルやガラスは、このような理由で前後判断ができません。ただし、どんな場合でも逃げ道はあるもので、ある種のトリックを使うと、「前後判断をしている」風の描画を実現できます。これは、次回のアップデータで提供できる予定です。

ホームドア開発中

ホームドアの実例

ホームドアの開発をすすめています。最近では、山手線への導入に向けた動きが本格化したことが話題になっています。
ホームドアは調べてみると、鉄道関連メーカーがつくる柵としてのドアと、ドアメーカーがつくる自動ドアベースの2種類があるようです。写真は、可動式柵タイプです。幅2400mmのユニットが左右一組で1つのドアになります。この幅は一般的な4扉通勤電車のドア位置と一致します。

以下、開発中のホームドアです。センサーと連動して扉の開閉ができます。

homedoor1.jpg

homedoor2.jpg

homedoor3.jpg

実物を調べると、連結部分などドア間隔と長さの異なる箇所は、スペーサーで調整しています。VRMもスペーサーを部品化します。

パーツショップの更新が遅れています

大変お待たせして申し訳ございません。現在、トレイントレイン事務局のシステムの都合により、パーツショップの更新に遅れが生じています。エミッター部品のご提供については、パーツショップの更新が完了するまでお待ちください。

エミッター、パーティクルについては、今回初めて搭載する機能になります。実際にご利用いただいた上で、よりよくするためのアイデアなどがございましたらinfo@までお気軽にフィードバックをお寄せ下さい。

現在までいただいているフィードバックの一例

  • パーティクル数の増加
  • パーティクルの前後判断機能の追加
  • ストラクチャーとの衝突判定

アップデータを更新しました

鉄道模型シミュレーター5/オンラインのアップデータを更新しました。バージョン5.0.6.65です。
鉄道模型シミュレーター5は、アップデータのページよりダウンロードしてください。

多くのリクエストをいただいていた「実感的な雪」、「たき火の煙」、「噴水」、「花火」、「自作ビルボード」を実現できるエミッター&パーティクルシステムを搭載しました。エミッターは、雪、雨を設定できる天候エミッターと、煙や自作ビルボードを設定できるエミッター部品があります。天候エミッターは、従来の天候設定にかえてご利用いただけます。
工場の煙突からでる煙、公園の噴水、滝、舞い散る桜、雪を蹴散らすスノープロウなど、レイアウトに躍動感を与えることができます。
エミッターの設定方法は、マニュアルのリンク先をご参照ください。
この他に、リクエストをいただいた、樹木の上に樹木がのらないようにする仕組みを実装しました。森、林が作りやすくなっています。

マニュアル
天空と雲と太陽    http://mobiuslink.jp/vrmonline/manual/?p=419
エミッターとパーティクル    http://mobiuslink.jp/vrmonline/manual/?p=2811
自作ビルボード    http://mobiuslink.jp/vrmonline/manual/?p=2818

VRM5用エミッター部品は、開発中のVRM5第5号に収録します。
マニュアルは一部更新作業中です。

エミッターとパーティクル

現在、パーティクルエンジンの最終調整を行っています。パーティクルは、エミッターと呼ばれる放出用の部品から発生します。(ストローから吹き出すシャボン玉のようなものです)

エミッター

これはエミッターのダイアログです。(開発中のため製品では一部変更される場合があります。)
エミッターのダイアログでは、パーティクルの放出方法、速度、受ける力などを設定します。エミッターの形状は、平面などを選択できます。テクスチャーは、システムにあらかじめ組み込まれているパターンの他に、あらかじめ用意した画像を使用することができます。(工夫次第でいろいろとおもしろいことができます。)
パーティクルには、重力、風の影響を与えることができます。設定できるパラメータは多岐にわたりますが、ダイアログ上部の簡単設定を選ぶと、一発で設定することできます。

燃焼

Fire

燃える大地。 開発中のパーティクルの一例です。

現在開発を進めている新しい雪表現は、パーティクルエンジンによって実現しています。パーティクルは、テクスチャーで表現される粒子です。数百のパーティクルを様々な運動をさせることで、雪、炎、煙、花火などを表示できます。

アップデータを更新しました

鉄道模型シミュレーター5/オンラインのアップデータを更新しました。バージョン5.0.6.63です。
鉄道模型シミュレーター5は、アップデータのページよりダウンロードしてください。
バグ修正を目的とした緊急アップデータになります。

主な変更点
・自動センサーで踏切が開かない問題の修正。
・自動センサーに動作追加
  「編成の種別コードを設定する」
  「編成のIDを取得する」
・共通ステータスのフィルターに編成ID一致を追加。

アップデータを公開しました

鉄道模型シミュレーター5/オンラインのアップデータを更新しました。バージョン5.0.6.62です。
鉄道模型シミュレーター5は、アップデータのページよりダウンロードしてください。

今回、バグ修正を目的とした緊急アップデータになります。

主な変更点
・自動センサーのフィルター動作修正と「アクティブな編成」の追加。
(アクティブな編成=現在操作対象になっている編成が通過したときに検出します。)
・フレキシブルレールと複数ジョイントをもつレールとの自動ハンドルを修正
(ストラクチャーのフレキシブル部品は、複数のジョイントをもつ部品に対して自動ハンドルに失敗する場合があります。)
・遠景樹木のガンマ値を調整

予定していますパーティクルについては、透明度の実装に難航しています。解決次第、公開します。