Skip to main content
Known Participant
July 5, 2021
Question

スクリプトでエクスプレッションを適応したい

  • July 5, 2021
  • 1 reply
  • 683 views

スクリプト初心者です。
スクリプトでエフェクトにエクスプレッションを適応したいのですが、エクスプレッションの記述がスクリプトに反するようでうまく行きません。

if (comp("コンポ名").layer("レイヤー名").effect("チェックボックス制御")("チェックボックス")==1) 0 else 100 ;

上記をエクスプレッション(文字列)として任意のレイヤーに入れたいと思っています。しかしこのままだと「予約語'if'が正しく使用されていません」と出てしまいます。
スクリプトは使いますが、スクリプトがない環境でプロジェクトを開いても変更可能にしておきたいためエクスプレッションにしたいと思っています。
解決策または参考になるページなどありますでしょうか。よろしくお願いします。

    This topic has been closed for replies.

    1 reply

    Community Expert
    July 5, 2021

    エクスプレッションエンジンがJavaScriptに設定されていると、掲載されているエクスプレッションではエラーになります。

     

    例えば、
    以前のExtend Scriptの場合:

    if (effect("チェックボックス制御")("チェックボックス") == 1) 0 else 100 ;

    JavaScriptの場合:

    if (effect("チェックボックス制御")("チェックボックス") == 1) 0 
    else 100 ;

     

    2行に分ければエラーは出ませんが、JavaScriptは以前のようにAfter Effectsだけで使用できた省略した記述は通用しないので、スクリプトで使用するif文の書き方で省略しなければ大丈夫だと思います。