2007/11/11
アドオン・スクロールで別オブジェクトのメソッドをコールする方法 VRMスクリプト禅問答
突然思いついたので、忘れないように自分用メモ。
なんで今まで思いつかなかったんだろう、と自己嫌悪。gws/2.0自動運転スクロールを書く日が来たら、この手法で書こう。でもその前に、自分に対する絶対的な編成の通過方向を検知してくれるセンサーが欲しいなぁ。そういうのがないと、全部を改めて書き起こす気力が起きないし。
なんか寂しいから絵でも貼っとくか。

こういう景色を作るときにちょっと物足りなかったのが、VRM4第8号収録予定のここらへんの部品で充実するかな。
0
<スクロール:親オブジェクト>みたいな書き方をすれば、呼び出し側と呼び出され側(変な日本語・・・@)を別のスクロールにして、かつ、呼び出され側を組み込まなくてもエラーにならない=ユーザーが機能を拡張するかしないかを、スクロールを組み込むか組み込まないかで選択出来る、はず。
Var{Object} ObjChild
BeginFunc MtdMain
if ObjChild
call ObjChild MtdSub
endif
EndFunc
BeginFunc MtdSub
//参照エラーを出さないためのダミー
//(コレが味噌)
EndFunc
<アドオン・スクロール:親オブジェクト>
get ObjChild {子オブジェクト}
<アドオン・スクロール:子オブジェクト>
BeginFunc MtdSub
//後から追加する処理
EndFunc
なんで今まで思いつかなかったんだろう、と自己嫌悪。gws/2.0自動運転スクロールを書く日が来たら、この手法で書こう。でもその前に、自分に対する絶対的な編成の通過方向を検知してくれるセンサーが欲しいなぁ。そういうのがないと、全部を改めて書き起こす気力が起きないし。
* * *
なんか寂しいから絵でも貼っとくか。

こういう景色を作るときにちょっと物足りなかったのが、VRM4第8号収録予定のここらへんの部品で充実するかな。

2007/11/12 4:16
投稿者:tetta
いや、この発想は凄い。
VRMスクリプトを知り尽くしたghost師匠でなければ、でてこない発想?ですよね。
インスタンスが無い時のフォローもされてるし、型は定義済みのオブジェクトですし。
ただ私的には、コンパイラーが味噌のファンクションをその型のメソッドとして認識はしてくれないような・・・。普通はチェックされてしまうような気がします。
親と子が同一のオブジェクト型なら辛うじて?
とも思いますが、VRMのコンパイラーの騙す手法の1つなのかとも・・・。
ghost師匠の実験結果が楽しみです。