見出し画像

Rosso Laboratory

追跡カメラ・キルスイッチ

前回ご覧いただいたような連続する追跡地上カメラを置いた場合、カメラに何も仕込んでおかないとずっと追跡カメラに切り替わっていってしまい作業とか出来なくなるので、切り替えを一斉にオン・オフするためのPythonスクリプトを作りました。

#追跡切替カメラ
#OBJID=9464
import vrmapi
def vrmevent_9464(obj,ev,param):
    di = obj.GetDict()
    if ev == 'init':
        obj.SetTraceMode(False) #初期値は追跡オフです
        obj.SetInViewMode(False) #初期値は追跡オフです
        obj.SetTraceRange(1500) #追跡距離1~2000
        obj.SetTrainFilterMode(3)
        obj.SetTrainFilterID(3606) #追跡対象編成ID
        di['switch'] = 0
        obj.SetEventKeyDown('O',100) #追跡切替キー
    elif ev == 'broadcast':
        dummy = 1
    elif ev == 'timer':
        dummy = 1
    elif ev == 'time':
        dummy = 1
    elif ev == 'after':
        dummy = 1
    elif ev == 'frame':
        dummy = 1
    elif ev == 'catch':
        dummy = 1
    elif ev == 'active':
        dummy = 1
    elif ev == 'view':
        dummy = 1
    elif ev == 'keydown':
        if param['eventUID'] == 100:
            if di['switch'] == 0:
                obj.SetTraceMode(True)
                obj.SetInViewMode(True)
                di['switch'] = 1
            elif di['switch'] == 1:
                obj.SetTraceMode(False)
                obj.SetInViewMode(False)
                di['switch'] = 0

カメラのプロパティを弄らなくてもよい様に対象編成IDとかの指定も出来るようにしています。デフォルトの作動キーは数字のゼロではなくアルファベットのオーです。初期値は作業用に追跡オフ。一度押すと撮影用に追跡オン。もう一度押すとオフという様にトグル式になっていますが、キーでオフにするとグローバルカメラが固まる現象が起こったので作業をする時は一度も追跡オンにしない方が良いだろうと思います。

PVアクセスランキング にほんブログ村


ランキングに参加中。クリックして応援お願いします!

名前:
コメント:

※文字化け等の原因になりますので顔文字の投稿はお控えください。

コメント利用規約に同意の上コメント投稿を行ってください。

 

※ブログ作成者から承認されるまでコメントは反映されません。

  • Xでシェアする
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

最新の画像もっと見る

最近の「Pythonスクリプト」カテゴリーもっと見る

最近の記事
バックナンバー
人気記事