エクスプレッション

3Dレイヤーの裏面を非表示にするエクスプレッション

カードを3Dレイヤーを表裏に貼り付けて表現する場合、サイズがまったく同じでない場合や、回転時のモーションブラーによって裏面になったレイヤーが見切れることがあります。

見切れに備えて、裏面は初めから表示しないよう設定しておけば安全です。

これは簡単なエクスプレッションで実現できます。

if(toCompVec([0,0,1])[2]>0){
    value;
}else{
    0; 
}

「toCompVec()」はベクトル(向きと強さ)をレイヤーそのものの設定ではなく、コンポジションでの見た目上の値に変換する関数です。

toCompVec([0,0,1])で[x,y,z]方向へのベクトルを取り上げ、

if(画面手前方向(Z軸)への力が正数であれば){
    元の不透明度のvalue;
} 異なれば {
    0;
}

という意味です。私の説明が下手なのも相まってなんのこっちゃですから、丸暗記で構いません

経験上、応用する機会が限られますので、「これで裏面が見えなくなるエクスプレッション」と丸暗記で構わないと思われます。

ちなみに、if文は短く記述することも出来ますので、コピペで構わないのであれば下記の1行で事足ります。

(toCompVec([0,0,1])[2]>0)?value:0; 

ちなみに、2Dレイヤーに戻すとZ軸が消えてしまい、エラーが出ます。3Dレイヤーでしか使用しないエクスプレッションなので問題ないかと思いますが、3D-2Dレイヤーを切り替えるような編集中に出るエラーが気になる方は、「try~catch」でエラーが出ないようにもできます。

try {
    (toCompVec([0,0,1])[2]>0)?value:0; 
} catch(e) {
    value;
}

(正確にはエラーがなければ裏非表示エクスプレッション、エラー時には本来の不透明度valueが適用という振り分け)

裏面を見せたくない場面は意外と多いため、コピペできるようにしておくか、スクリプト化した記事も公開しましたので「裏面を非表示にするスクリプト「hideBackface.jsx」」を参考にスクリプト化するのが便利です。

リンク切れフッテージのファイルパス一覧をテキストファイル出力するスクリプト「exportDeadLinkPath.jsx」前のページ

裏面を非表示にするスクリプト「hideBackface.jsx」次のページ

ピックアップ記事

  1. フリーランスの開業届提出は開業freeeでとにかく簡単に
  2. なぜ?After Effectsの操作を「スクリプト」で効率化
  3. なぜ?After Effectsのレイヤーをエクスプレッションで効率化
  4. amazonのスポンサー商品(広告)を非表示にするブックマークレット「amazO…
  5. YouTubeで一時停止中のコントローラーを非表示にするブックマークレット

関連記事

  1. エクスプレッション

    オーディオのフェードイン・アウトをエクスプレッションで自動化する

    オーディオレイヤーの音量のフェードイン・フェードアウトをエクスプレッシ…

  2. エクスプレッション

    レイヤーを自動で拡大・縮小させるエクスプレッション

    選択レイヤーのインポイントからアウトポイントにかけて、指定した%サイズ…

  3. エクスプレッション

    2つのレイヤー間に均等配置させるエクスプレッション

    2つのレイヤーを「root」と「goal」として、その間に挟まれたレイ…

  4. エクスプレッション

    エクスプレッションで一括制御+疑似親子+ミラーリング

    エクスプレッションを使えば、他のレイヤーのプロパティを参照することが…

  5. エクスプレッション

    エクスプレッションでグリッド上に均等配置する

    複数のレイヤーをグリッド状に整列させるエクスプレッションを仕込むスクリ…

  6. エクスプレッション

    フェードイン・アウトをエクスプレッションで自動化する

    レイヤーの不透明度に、フェードイン・フェードアウトを自動化するエクス…

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

CAPTCHA