[ 蒸気機関車の画像規格 ]


●蒸気機関車拡張プログラム用の車両について

蒸気機関車の走行シーンを表現するためには、動輪を動かすことが必要不可欠であり、通常の電車走行キット仕様のままでは実現できない。更にリアリティを求めるならば、煙も表現したいところである。
ということで、蒸気機関車を表現するための「蒸気機関車拡張」プログラムがあるわけだが、これ用の機関車画像の仕様について解説する。
* 解説内容の実例は「走行見本(M00SL)」を参照されたし。

●画像3分割

蒸気機関車の画像は「車体」「動輪」「煙」に3分割する。
但し「煙」は必須ではない。
* 煙はLv.2プログラム以上のみ。Lv.1では煙不可。
* Lvはプログラムの蒸気機関車表現への対応レベルを示す。詳細は蒸気機関車拡張ダウンロードページ参照。
各画像については以下に詳細を記す。

●車体画像
車体画像
機関車画像のうち、走行時に変化しない部分の画像。
但し「逆転機表現(後述)」を有効に設定した場合は、車体画像の切替処理を行う。
* 逆転機表現はLv.3プログラム以上のみ。Lv.2以下では表現不可。
* キャブからつながる逆転機を動かすロッド(逆転棒)が微妙に動くため、動輪画像だけではなく車体画像も切り替える必要が生じるのだ(機関士側のみ)。この切替処理により「機関士が後退時には後ろを見る」といった表現も可能。

●動輪画像
動輪画像
機関車画像のうち、走行時に変化する部分の画像。
原則として重なる車体画像と寸法はまったく同じでなければならない(例外については後述)。
動輪一周を何枚かの画像にして、走行速度と連動して画像を切替えて表示する。
更に「逆転機表現(後述)」を有効にした場合は、逆転機の位置によっても画像切替を行う。
* 逆転機表現はLv.3プログラム以上のみ。Lv.2以下では表現不可。

動輪画像ファイル名にはロッドの位置を示す「動輪コード」という番号を付ける。
たとえば1周で8枚の動輪画像では、100〜107のコード番号を使い、ファイル名は「dourin100.gif」〜「dourin107.gif」という風になる。
コード番号は「昇順で右回転」とする。
左向機関車では後退方向に昇順、右向機関車では前進方向に昇順となる。
* 動輪パラメータに指定するのは、ファイル名から「動輪コード+拡張子」を除いた部分のみ。上記の例では「dourin」が指定文字となる。
なお、2006年 6月更新以前のプログラムでは、動輪画像は.gif必須。.pngを使う場合はプログラムのバージョンに注意。

一周枚数 刻角 コード番号 解説
4 90° 100〜103 枚数が少ないため動輪を描く負担は軽いが、スロー時の動作がギクシャクしてリアリティに欠ける。
* スローのない定速走行シーンに使う場合は、動輪枚数が少ない方が、ロッド表示位置が限られることによって、かえって違和感なく見える場合もある。
* 4枚動輪の使用例 → No.1002(井笠鉄道 1号機)参照。
* 6枚動輪の使用例 → No.695(D&RGW K28)参照。
6 60° 100〜105
8 45° 100〜107 動輪の描きやすさとリアリティのバランスを考えるとこの枚数しかないかも。
* 8枚動輪の使用例 → No.172(C57)、No.369(D51)、No.1024(8620)、No.1028(9600)、No.1089(C58)参照。
12 30° 100〜111 動輪径が大きい場合は、このぐらいの枚数が欲しいところ。でも描くのが大変。
16 22.5° 100〜115 この縮尺での事実上の上限枚数。動作はスムーズだが、1周16枚というのは描くのが非常に大変である。
* 16枚動輪の使用例 → No.225(B6)、No.244(Big Boy)参照。

動輪仕様

* 動輪の描画については「描画雑記(車輌篇3)」に記事あり。といっても、おぱく堂の方法を語るだけのページだが。


●逆転機表現

Nゲージの模型などでは機構上の限界からか逆転機関係のロッドは中立に固定されているが、この縮尺の画像では5パターンまで表現可能である。

プログラム 逆転機(前後とカットオフ大小) 解説
前・大 前・小 中立 後・小 後・大
Lv.4 手動運転版(未定) 手動運転版では自ら逆転機を操作するわけだから、表示も細かく切り替わった方がいいように思う。
Lv.3 M00SL-Advanced カットオフの大小は表現せず、前・中・後の3パターンのみ設定可とする。
A09SL(予定) × 自動走行版。前進と駅停車しかないので後退設定なし。
Lv.2 A00SL 逆転機表現なし SL対応がLv.2以下のプログラムでは、ここまで表現しない。
A02SL系
CA50SL系
Lv.1 RA00SL・TA00SL
SA系
鉄道模型風 GA30SL等

逆転機表現を有効にした場合、画像枚数が増える。
M00SLの場合「前進・中立・後退」の3パターン切替。
車体画像は3枚、動輪画像は8枚動作とすると、8×3=24枚。車体はともかく、動輪は描くのが大変である。
* なお、右向機関車の場合でも車体切替を行う予定(A09SLなど)。
車体上の逆転棒の動きは機関士側の左向でしか関係ないのに何故か? 逆転機が右側にある海外機関車などに対応可能にするためだ。
* 動輪だけ逆転機ありにして車体切替をなしにしたい場合、前中後の車体画像指定を全て同じ画像にすればよい。


【逆転機表現の問題】
蒸気機関車の逆転機は「逆転」以外の機能を持ち、速度コントロールの要である。
そのため動作が単純ではなく、走行中にも限りなく中立に近い位置にあることもある。それらを単純に前中後と切り替えることがリアルか、と問われれば素直に肯定はできない。さらに言えば、実際の逆転機は無段階に動作するものであり、カクカクと切り替わるものではない。ゆえに画像をカクカクと切り替えることは、かえってリアリティに反すると感じる人もいるかもしれない。
この機能を使うか使わぬかは選択可能であるし、ギミックとしては面白いかもとも思うので、問題があるのは認めつつこの機能を搭載した。

●煙画像

煙はつかみどころがなく画像的にも難儀なので指定は必須ではない。
煙画像
煙は車体外に大きくはみ出す存在なので、寸法は車体や動輪とは異なる。
高さは標準のシーン上端と重なる画像高とするため、線路位置まで121px高の画像となる。但し、ドレインからの白煙を描かないのであれば、煙突から下は不要であり、その部分の画像をカットしてもよい。
長さは、機関車より長くてもかまわない。
* プログラムによっては編成より長い画像だと問題が出る場合がある。

煙は機関車単位ではなく編成単位なので、機関車重連の場合は「重連用に描いた煙」が必要となる。

煙には動きがあるが、プログラム的には動きをコントロールしない。動きを表現する場合は、アニメgifを使うものとする。
* 但し、アニメgifとダイナミックHTMLの併用は処理を重くする。ただでさえ低速CPUマシンでの動きが重い蒸気機関車拡張にアニメgifは余り持ち込みたくないところではあるが、かといって他に良い方法があるわけでもない。

ブラウザ限定で煙画像の半透明化可能。
この場合、他のブラウザで見た場合に、不透明の煙を表示するか、煙表示をやめてしまうか、選択可能。

プログラム 解説
Lv.4 手動運転版(未定) 詳細表現 機関車の状態に応じて煙画像を切り替える。但し、その仕様については全く決まっていない。
Lv.3 M00SL 簡易表現 煙用画像を1枚重ねるだけ。半透明化対応(ブラウザ限定)。
* 補機設定時は、補機用にもう1枚煙画像を使用する。
A09SL(予定)
Lv.2 A00SL(旧称A00-Loco) 簡易表現(制約あり) 煙用画像を1枚重ねるだけ。半透明化対応(ブラウザ限定)。
* M00SL等の本格派Lv.3との違いは「補機用の煙画像なし」と「煙画像後端が編成後端より後ろに来てしまった場合の処理を行わない」ということ。A02SLではあまり影響はないが、A00SLでは編成が画面外に出ると、煙がまだ画面内に残っていても画像が突然消えたりする。
A02SL系
CA50SL系
Lv.1 RA00SL・TA00SL 煙表現不可
SA系
鉄道模型風 GA30SL等

* 白い煙、黒い煙、ほとんど煙の出ない絶気運転、ドレインからの排出、汽笛、安全弁など様々な要素があるため、煙の表現は本当に難しい。これらを状況に応じて切り替えるLv.4の詳細表現の仕様をどうすべきか、まったく見通しが立っていない。→ 参照「電車走行キット開発史 - 番外7 蒸気機関車

●3画像の重ね位置
画像の重ね位置
「車体」「動輪」「煙」の3つの画像は、左行・右行とも機関車先端を揃えて重ねる。
なお、右向機関車を左行させる場合などは、進行方向である左端を先端とみなすので注意が必要。
* 「車体」と「動輪」は寸法の完全一致が原則のため、実は左端揃えで処理をしている。ゆえに寸法不一致画像の場合、右向では先端揃えにならないので注意。

重ね順は、手前←「煙」・「車体」・「動輪」→奥、とする。
* 一部のプログラム(現在はM00SLのみ)では「車体」と「動輪」の重ね順を逆にすることが可能。
場面限定拡張「A667」v2.33以前添付の旧ED42画像を蒸気機関車拡張で走らせる場合は、逆順にしないと表示がおかしくなる。v2.4以降添付の新ED42画像は蒸気機関車拡張標準規格に合わせてあるので問題なし。

●車体と動輪のオフセット指定
画像のオフセット
原則として「車体」と「動輪」は完全に重なる寸法でなければならない。
しかし、たとえば「D51の動輪を流用して、D52の車体を載せる」といった表現を行う場合、D51の動輪画像を全部D52の寸法に改造(左右長を伸ばす)するのは大変である。そこで、車体と動輪の重ね位置をずらすことを可能にして、完全に一致しない組み合わせでも走らせられるようにした。
指定数値は、+で動輪が右へ、−で動輪が左へずれる。左行・右行に関係なく、車輛画像左端が基準になるので注意。
* 不一致画像を組み合わせる場合、重連に注意。2両目以降のズレを補正するためには後述の動輪画像の間隔設定が必要。
* なお「動輪だけ重連」時は、機関車画像を重連にした場合の仮想位置を基準にして、そこからの動輪オフセット数値を指定する。
* DLとSLの重連を表現する場合、通常はSLが前でDLが後にしか設定できない。しかし、このオフセット機能を応用すると、DLが前でSLが後という重連が設定可能になる。DLの全長分だけ動輪を後方に下げてやればいいのだ。

●動輪画像の間隔指定
動輪画像間隔設定
「D51の動輪を流用して、D52の車体を載せる」といった寸法不一致画像を組み合わせた上でさらに重連にする場合、2両目以降のズレを補正する必要がある。それを可能にしたのが、この動輪画像の間隔設定。指定数値分だけ動輪画像の間隔を広げる。
* 以下のプログラムでは、この機能を搭載していない旧バージョンがあるので注意。M00SL ver.1.1〜、A00SL (旧A00-Loco/A00B-Loco) ver.2.1〜、A02SL ver.1.1〜で対応。
* 負数指定できないので、広げるだけで狭めることは出来ない。
* オフセット設定と併用する場合、指定数値に注意(おぱく堂製作蒸機の場合、特に右向)。
* この機能を応用して「後部蒸機補機」表現可。動輪設定の内「動輪のみ重連」を有効にして、前部本務機と後部補機間の距離分だけ「動輪画像の間隔」を設定すればよい。……左上フレーム見本に設定実例あり。No.190 の瀬野八 D52補機。


<< 前頁へ戻る