
今回は、1つのヌルオブジェクトで鳥のゲームキャラクターをリギングします。
ステップごとに進めて学ぶ(推奨)か、プロジェクトをダウンロードしてください。すべてのアセットと完成プロジェクトは AEJuice Pack Manager – Newsletter – Rig Bird Game にあります。最新のプラグインバージョンへの直接リンクはこちらです:
Windows / macOS
Windows / macOS
準備
どんなプロジェクトもコンポジションから始まります。ここではピクセルアートなので、200×150で十分です。FPSは特に重要ではありませんが、24にしておきましょう。

すべてを制御するNull Objectを作成します。少し準備をします:
NullをControlにリネームします。
サイズを16×16に変更します。
Anchor Pointを中央に移動します(Ctrl+Alt+Home)。

すべてを制御するNull Objectを作成します。少し準備をします:
NullをControlにリネームします。
サイズを16×16に変更します。
Anchor Pointを中央に移動します(Ctrl+Alt+Home)。
再センタリングします(Ctrl+Home)。
背景を追加します。
Jump
キャラクターをコンポジションに追加しましょう。
2つのスプライトが必要です:Static と Jump (AEJuice Pack Manager – Newsletter – Rig Bird Game からダウンロード可能)。
それらをセンタリングします(Ctrl+Home)。
Control レイヤーを作成し、2つのレイヤーを Control にペアレントします。

Control レイヤーを作成し、2つのレイヤーを Control にペアレントします。

これで Control を動かすと、すべてのスプライトも一緒に動きます。
重要! レイヤーが動いてもピクセルが所定の位置に留まるように、ピクセルモードを有効にしてください。このプロジェクトのすべてのレイヤーで必要です。
キャラクターが地面に立つように Control を配置します。
今のところ気が散らないように、Jump レイヤーをオフにしておくとよいでしょう。
キャラクターが空中にいるかどうかを認識できるようにするには、地面のレベルを設定する必要があります。最も簡単な方法は手動で設定することです。ありがたいことに、これは変化しません。
Slider Controlを追加し、Land Levelと名付けます。
値として Control のY Positionを設定します(今は地面の上にあります)。
もう1つスライダーを追加し、[Character] と名付けます(私はエクスプレッションを持たせるプロパティに角括弧を使います)。
スライダーに次のエクスプレッションを追加します:
Land = effect("Land level")(1); //ground level
y = transform.position[1]; //character's y position
if (y < Land) 1 //if character is higher than ground level then 1
else 0 //0 in all other cases
あとは不透明度を設定するだけです。
Jump レイヤーの場合:
M = thisComp.layer(“Control”).effect(“Character”)(“Slider”);
if (M == 1) 100
else 0
else 0
Static レイヤーの場合:
M = thisComp.layer(“Control”).effect(“Character”)(“Slider”);
if (M == 0) 100
else 0

素晴らしい!これで鳥がジャンプ(または飛行)できるようになりました。
