分析の観点で考えています。実装とは大幅に異なる可能性があります。描画に関する主要な機能は3+αのエンジンに分けられる。仮にUrd/Berd/Skuldとする。†SakuraScript?に明示的に書くコマンドの他に、以下のようなものもある。文法解釈し、全てのコマンドをタイムライン上に並べていく。必要な描画作業を行う。起動中のゴーストが自らsurface.txtを書き換える。ネットワークから動的にダウンロードするゴーストや、複雑な成長をするゴースト。起動中のゴーストのsurface.txtを書き換えて、ワンクリックでテストしてセーブ。SHIORIレスでアニメーション定義だけをごりごり書いてデバッグできるツール。起動中のゴーストにmoveを外部から送ったり、さらに上書き的にmoveさせたり、特定の位置まで動かしてから外部ツールが何かをしたり(同期が必要、の意)。今と変わらないけど、例えばバルーンレス(デスクトップに直接書いちゃう)とか。全部ファイルで永続化。ゴースト側から読み書き可能にする。なってるんじゃないかな。†タイムラインをバイパスしていきなりコマンド呼ぶのはリスキーな気がする。すると、呼び出し時はSkuldに渡して、必要に応じてイベントを発行してもらう。