2008/8/4

SetEventMPStart/Stopから広がる妄想  VRMスクリプト禅問答
どちらかと言うと中の人向けメモ、オマケつき。


モーションパス系の命令の中でも、ボクの中で評価が高いのがSetEventMPStart/Stopです。この命令を使うことで、モーションパスの開始/停止に連動して動作するメソッドを作ることが出来ます。今のところ、時間指定による開始/終了、StartMP/Stop命令による開始/終了の両方に正しく連動しているように見えます。

さて、この命令の何が良いかと言うと、

・スクリプトから実行する動作と、レイアウター上の設定から実行される動作を等価に扱うことが出来る。
・その動作に後続する動作を組み込む際、アドオン記法を使わずに済む。

の2点につきます。これは言い換えると、以前に言及したSetEventBranch(またはSignal)Change命令が欲しい、と根が同じことで、 図らずもモーションパス制御のスクリプト系は、その結果得られるであろうメリットを先取りしています。

一見すると、モーションパスの各種設定をおこなうレイアウターのダイアログは雑多な感があり、とっつきにくさを感じると思いますが、これは恐らくは中の人が「スクリプトのスキルがないユーザーにも手軽に使って欲しい」と苦慮した結果であり、同時にそういうユーザーであっても、エキスパート級ユーザーが書いたスクロールを使うことでより高いポテンシャルを手軽に引き出せるように配慮したのだろう、ということがSetEventMPStart/Stop命令の実装から見て取れます。まぁ、ちょっと誉め過ぎっぽいですけど。

とりあえず善意にそうであると仮定して、I.MAGiCの中の人におかれては、是非とも同様の実装を他のギミック付きオブジェクトにも横展開していただきたい、つまり、前述したSetEvent{Object}Change命令を追加実装していただきたい、と思うワケです。具体的なターゲットオブジェクトは、優先度が高いと思われるものから順に

・ポイント
・編成速度(トラコンによる惰行減速は無視する方向で)
・編成向き
・踏切
・信号機

といったところ。コイツらが実装されれば、かなり柔軟性が高く、かつ、ユーザーフレンドリーな自動運転/各種演出を一元的に提供するスクロールシリーズを書ける算段があるのですが、これは逆に言うと、直接的にSetEvent{Object}Change命令の恩恵を受ける(その命令の真価を理解して使いこなす)のがボクしかいない、というアホな話でもあるので、ちょっと無理強いもしにくいというか、ボク自身が命令が実装された頃にスクロール作りに飽きていたり、果てはVRM界隈を去っているというケースがあり得ることも含めて、アレゲな話でもあるワケです。

まぁ、どっちでもいいや。

*     *     *

さて、オマケです。先にリリースした“モーションパス首振りカメラ”を使った演出例を1つご覧にいただこうかと。前回に続き、題材には漆黒氏の「夢空間」を使用していますが、こんなことに使ってごめんなさい、と先に氏に謝っておきます。


<ザク視点で漆黒さんの夢空間を歩いたらトンデモないことになりました>

まぁ、単に視界の首振りがモノアイによる索敵っぽかったので勢いで作っただけなんですけども。たくさんの制御点(何かわからん人はVRM4マニュアルのモーションパスの頁を参照)を細かく配し、高さを微妙に変えて歩行による上下動を再現しているのがポイント高いです、って自分で言うな。
0

この記事へのトラックバックURLはありません
トラックバック一覧とは、この記事にリンクしている関連ページの一覧です。あなたの記事をここに掲載したいときは、「記事を投稿してこのページにお知らせする」ボタンを押して記事を投稿するか(AutoPageを持っている方のみ)、記事の投稿のときに上のトラックバックURLを送信して投稿してください。
→トラックバックのより詳しい説明へ


teacup.ブログ “AutoPage”
AutoPage最新お知らせ