JSXBINってなに?

jsxbinは文字通りJavaScriptをバイナリ化した(実際にはバイナリではなく統合と難読化です)ファイルです。作成はAdobe ExtendScript Toolkit(ESTK)の「ファイル」メニューから「バイナリ形式で書き出し」を選択します。出力されたファイルはjsxbinという拡張子で保存されます。使用方法は通常のjsxと変わりありません。

注意点としては、これは通常のコンパイラのビルドと違い、エラーやワーニングを出しません。スクリプト自体に致命的なエラーがあったとしてもバイナリ化はすんなり完了してしまいます

jsxbinファイルは、ファイルをESTKで開いても編集作業は困難です。開発には元のjsxファイルを使用します。

jsxbin化するによってユーザーがスクリプトのコードを改造したり無意識に改変して動かなくなるというトラブルを防止できたり、ユーザーが自分で設定すべき項目を設定ファイルに独立させることでわかりやすくできたりします。

実行速度の向上はあまり目に見えて速くなるという実感はありませんが、コメント行などが削除されることでスクリプトのロード時間短縮などは期待できるでしょう。

またincludeディレクティブのファイルが統合されるので、配布する時の構成がシンプルにできます。

注意点としては、下位互換が失われるということがあります。CS5のESTKで作成したjsxbinをCS4で実行しようとするとエラーとなります。上位互換はありますので、CS4のESTKで作成したスクリプトはCS5で実行可能です。厳密にはスクリプト自体にも互換性が保証されているわけではないので、実行したいバージョンでプログミングを行なうように注意してください。

不特定多数のエンドユーザー向けにはjsxbinを使い、開発者向けにはjsxとincludeファイルを提供するのがお勧めです。

デメリットとして、After Effectsの「ファイル」→「スクリプト」→「スクリプトファイルを実行...」からスクリプトを実行できなくなります。これを回避するにはjsxbinファイルの拡張子を「jsxbin」から「jsx」に変更します。

この記事はサイトオーナーのブログより一部修正して転載いたしました。オリジナルの記事はこちらで読めます。

http://hiroshisaito.net/blog/after-effects-scripting-notes.html