Rosso Laboratory

Rosso Laboratory

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

第8回その1 ビューワー起動時にライトを付けよう

【第1章】車両で遊ぼう
第8回 色を変えたヘッドライトを付けよう
ヘッドライトで簡単な動作で練習します。

その1 ビューワー起動時にライトを付けよう
まずは簡単な単独動作から。

【使用するVRMNX命令】車両の命令:SetHeadlight(点灯状態)
ヘッドライトの点灯状態を設定します。点灯状態はTrue(または1)で点灯、False(または0)で消灯となります。

【使用するVRMNX命令】車両の命令:SetLightColor(光源番号,R,G,B)
ッドライトに連動する光源に色を設定します。光源番号は通常は0、Rは赤の光量で0.0-1.0、Gは緑の光量で0.0-1.0、Bは青の光量で0.0-1.0。

【やってみよう】ライトが見やすいように夜間に設定した「親子で学ぼう用レイアウト(8初期状態).vrmnx」を開き、編成「TRAIN_11」の車両1両目「CAR-1」にスクリプトをこのように書こう。書くのが大変ならコピペしよう。完成品は「親子で学ぼう用レイアウト(8-1).vrmnx」です。

#CARID=1
import vrmapi
def vrmcarevent_1(obj,ev,param):
    if ev == 'init':
        obj.SetHeadlight(True)
        obj.SetLightColor(0, 0.0, 1.0, 0.0)

【解説】まずヘッドライトを点灯させて、その後色を緑に変えています。

【実践】それでは「運転」を押してビューワーを起動させましょう。緑色の光でライトが点灯していれば成功です(^^)/


【追加】指定時間で発生する'time'イベントの使い方を追加しておきます

【使用するVRMNX命令】SetEventTime(秒数,ユーザーID)
ビュワー開始から指定時間後に発生する'time'イベントを呼び出します。ユーザーIDには任意の数値(省略した場合は0)を設定します。

こちらは編成「TRAIN_11」に書き込みます。

#OBJID=11
import vrmapi
def vrmevent_11(obj,ev,param):
    if ev == 'init':
        obj.SetEventTime(3,200)
(中略)
    elif ev == 'time':
        car = obj.GetCar(0)
        if param['eventUID'] == 200:
            car.SetHeadlight(True)
            car.SetLightColor(0, 0.0, 1.0, 0.0)
(以下省略)

とするとビュワー開始後3秒で緑色の光でライトが点灯します。完成品は「親子で学ぼう用レイアウト(8-1追加).vrmnx」です。

←戻る 目次 進む→
PVアクセスランキング にほんブログ村