エクスプレッション

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

関連記事

  1. エクスプレッション

    オートコンプリートでエクスプレッションを簡単適用

    プロパティのストップウォッチアイコンをキーを押しながらクリックで開く…

  2. エクスプレッション

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

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

  3. エクスプレッション

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

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

  4. エクスプレッション

    なぜ?After Effectsのレイヤーをエクスプレッションで効率化

    「なにかの動きに連動する」アニメーションを作るには、キーフレームで頑張…

  5. エクスプレッション

    アナログ時計でエクスプレッションの考え方を学ぶ

    エクスプレッションという「計算式で導くアニメーション」を、アナログ時…

  6. エクスプレッション

    タイムリマップでレイヤー管理するエクスプレッション(フリーズフレーム)

    複数の種類で同じ大きさのオブジェクトを何度も使用する場合、プリコンポー…

コメント

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

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

CAPTCHA