ヌルをペアレント化するために使用される場合、After Effects 2020シェイプレイヤーパスは3D方向を無視しますか?
楕円のパスをたどるためにnullをアニメートしようとしています。パスは3D空間で回転します。パスをnullの位置にコピーすると、コピーされ、nullがパスの周囲でアニメーション化されますが、シェイプレイヤーの3D方向設定は無視され、nullのキーフレームはカメラを直接指すように設定されます。 2Dモード:

このスクリーンショットでは、赤いキーフレームトラックはヌルに貼り付けられた位置データであり、白い円はパスのストロークです。もちろん、nullを回転させても何も起こりません。これは、キーフレームがオフになっているためです。
私はこれにかなり慣れていないので、問題をうまく説明していない、またはまだ理解していない簡単な解決策があると感じます。任意のガイダンスをいただければ幸いです。ありがとうございました!
回答
シェイプレイヤーのパスはレイヤー空間にあります。言い換えると、レイヤーが構成空間のどこにあるかに関係なく、座標はレイヤーを基準にしています。レイヤーのコンテンツは、そのレイヤーを基準にしてz軸上で常に0になります。そのため、そのパスをモーションパスとしてコンポジション空間のレイヤーに適用すると、常にX / Y平面上を移動し、z軸上で0になります。ヌルレイヤーがシェイプレイヤーと同じ座標空間を使用するようにするには、それをシェイプレイヤーの子にするだけです。次に、座標はその親を基準にします。これが不可能な場合はtoWorld()
、式でレイヤースペース変換を使用できます。
thisComp.layer("shape Layer").toWorld(value);
それをポジションに適用します。それは、位置の値を取得し、それがレイヤー「シェイプレイヤー」のどこにあるかを見つけて、それがコンプ座標のどこにあるかの値を与えることです。
シェイプレイヤーのパスがコンプスペースで測定されるという点で、ちょっとした落とし穴があります。パスをnullにコピーする前に、を使用して、シェイプレイヤーのアンカーポイントをコンテンツの中心に設定することをお勧めしますctrlalthome。それ以外の場合は、コピーされたパスの値からその位置を差し引くことができます。
thisComp.layer("Shape Layer 1").toWorld(value-thisComp.layer("Shape Layer 1").transform.position)