実践編5 AEとの逆連携(C4d Lを音楽と同期させる)戻る デジタル降魔録へ 次へ
- テクスチャを経由して(謎の物体 X)
- エクスポーターを経由して(青ウニ参上!)
- 3Dオーディオースペクトラムを作る
使用されている略語は以下のとおりです。
C4d L……Cinema 4D Lite AE……After Effects Ai……Adobe illustrator Ps……Photoshop
従来のワークフローは『C4d L』で作って『AE』でまとめて、あるいは加工してから『映像』へ、という流れでしたが、『AE』で作って、それを『C4d L』で加工と 3D化を経て再び『AE』に戻されて、もう一度手を加えてから『映像』にする、ラウンドトリップ・ワークフローで、C4d Lが利用できないかと考えていて、このアイデアを思いつきました。【雨の波紋を 3D化する】もその一つですね。
今回はもう一つ突っ込んでみました。それは、Lite版の C4d Lでは、オーディオに関してはほぼ何もできませんが、AEの助けがあれば不可能ではなくなることに気づいたからです。
もう使い古された感も濃厚ですが、AEに備わった【オーディオスペクトラム】と【オーディオをキーフレームに変換】と呼ばれる機能を使って映像を作り、それを C4d Lに持ち込んで、モーション 3Dグラフィックスを作ってみようという試みです。
ここからしばらくは AEの復習みたいな説明が続きます。すっかり熟知している方はそのあたりは飛ばしてくださって結構です。
C4d Lを使っていない方でも AEのオーディオ振幅関係に興味のある方は、これらのエフェクトや機能の紹介を兼ねて、まずは何に利用するものなのかを説明しますので、このまま読み進んでください。そのあとに、具体的に何を作ったのか、その作り方を参考にしてください。そして最後に、それを C4d Lへ持ち込む際の注意点やその方法を説明します。
まずは、【オーディオスペクトラム】です。
オーディオデータを周波数別に細かく分解して、各周波数の強さを取り出してグラフィックを動かすものです。文章で説明するよりも現物を見てもらったほうがいいですね。
次の映像がその一例です。
最初の例のように、スペクトラムアナライザみたいなものでも可能ですし、円形マスクを反転してパスを利用すると丸くかたどることもできます。マスクの反転をしないと正しく円形になりません。ふつうはマスクを使わずに【オーディオスペクトラム】を掛けた上に、エフェクトの極座標を加えて円形に丸めてもかっこいいものができますが、マスクパスを使うと変形させることができますから、使い勝手がいいと思います。
そして、このピコピコ動くものは、オーディオビジュアライザー (Audio Visualizer)とか、スペクトラムアナライザー、あるいはグラフィックイコライザーとか、いろいろな名称で呼ばれるものです。それらは音楽に合わせて動くグラフィックを指していまして、昔は音楽系のユーチューブなどでは引っ張りだこのものでした。呼び名が長ったらしいので、ここでは総称して『スペアナ・グラフィック』、ピコピコ動く部分を『イコライザーバー』あるいは単に『イコライザー』と書かせていただきます。
続いて【オーディオをキーフレームに変換】です。
これはオーディオデータの音量レベルを数値に変換して、それをフレーム毎に数値をキーフレームとして打ち込んでくれるものです。ただそのままではただのキーフレームの羅列(振幅キーフレーム)でしかない何の役にも立たないものですが、この数値をデータとしてエクスプレッションで読み取って、各種のプロパティの値に代入することで、その物体がオーディオに合わせて動き出すというものです。
AE単体でもこれらを利用して、ビートに合わせたモーショングラフィックスを作ることができますが、今回はこれを C4d Lに持ち込んで、モーション 3Dグラフィックスに変身させてみようというのが目的です。
ということで……。
せっかく 3D化するのですから、形のある、それでいて簡単でちゃちゃっと作れちゃうものがいいと考えたのですが、でき上がったのは、まったくもってセンスのかけらも無い、悪役レスラーが隠し持っているガジェットみたいな、 "謎の物体 X" で恥をさらしてしまいましたが、そこはひとつ、ご辛抱ください。(家具を傷だらけにしそうなお掃除ロボにも見えます)
UFOのような円盤型の腹部には、スペアナ・グラフィックが 2つ、イコライザーとして動いており、その中心部には【オーディオをキーフレームに変換】を利用したビートに合わせて大きさが変わる光る球体をはめ込んでいます。この 3つを合わせて『ぴょこぴょこイコライザー』と命名しました。(だっせぇよ!)
そして円盤の周囲から尖ったものが出たり入ったりしているのは、AEで作った単純な白黒グラデーションで塗った円形シェイプです。映像を見る限りそうは思えないかもしれませんが、リズムに合わせてグラデーションの濃淡に変化を与えるだけで、C4d Lはそれを 3Dの高低差に変換します。名前は『とげとげライダー』です。(なんでライダー?)
【2つのイコライザーを作る】
円盤部の周囲から内側へ向かって広がるイコライザーと、中央で放射状に広がるイコライザーは、ともに【オーディオスペクトラム】を利用したものです。
AE単体でもこの部分は利用できますので【オーディオスペクトラム】の作り方や設定値などは次の映像から参考になさってください。
円形のイコライザーを例に、いまの映像をまとめます……。
まず、黒の平面に円形マスクをかけて、マスクの反転にチェックを入れます。反転しておかないと正しくイコライザーが出ませんので注意してください。利用しているのはマスクのパスですから、マスク自体には何の意味もありません。そして円形でなくても問題ありません。
そしてこの平面に【オーディオスペクトラム】を適用して、別レイヤーに対象となる BGM素材をセットします。このオーディオを解析してスペアナが作られます。
【オーディオレイヤー】
対象となるオーディオを載せたレイヤーを指定します。
【バンド】
指定の周波数帯を何分割するか、の指示です。大きいほど細かくなりイコライザーバーがぎっしりと並びますが、その分パソコンに負荷が掛ります。
【オーディオの長さ】
フレーム毎で解析する音の時間幅(時間長)です。
値を小さくする(例:20ms)と、音に過敏に反応してトゲトゲしく激しく動き、値を大きくする(例:200ms)と前後の音を平均化するため、滑らかでゆったりした動きになります。
【オーディオオフセット】
人間の感覚は、聴覚が敏感で視覚がその次だそうです。つまり、耳が先に反応して遅れて視覚が反応するため、耳にはいるよりも映像のほうを少し早めに動かしてやると自然に感じます。
そこで、耳で聞こえたときと視覚が反応したときの差がなくなるように、ここの数値で調整します。プラス方向へ数値を上げると実際の音より数値(ミリ秒)分速く動きします。(例:30ms)
【極パスを使用する】
開始ポイントをセンターにして放射状に伸びるようになります。隙間がないため円形になるというイメージではなく。1点から四方八方にに触手が伸びる感じになります。
【ぴょこぴょこイコライザーの中心にある球体を作る】
中心部で動いている光の球体は【オーディオをキーフレームに変換】を使って作られています。
この機能は【オーディオスペクトラム】とはまるで逆のもの。それ自身が動いたり光ったりしません。参照するオーディオの音量変化を記録したものですが、それをうまく利用すると、多種のコントロールができます。
その一つの例が、映像の中心部でビートに合わせて大きさが変化している光る球体です。
原型はブラーの掛かった白色の円形シェイプです。たまに曲の雰囲気に合わせて光の色が変化するのは、単純に【塗り】の【カラー】にキーフレームを打って細工しているだけです。参考にするほどではありませんので省略させてください。
《振幅キーフレームの作り方》
【オーディオをキーフレームに変換】を起動するには、まず参照するオーディオレイヤーの変換範囲をワークエリアで示すか、その範囲でオーディオレイヤーをを切り取ったものにします。それを選択してから、ウィンドウメニューの【アニメーション】→【キーフレーム補助】→【オーディオをキーフレームに変換】を押すか、右クリック→【キーフレーム補助】→【オーディオをキーフレームに変換】で実行します。変換はすぐに終わります。
続いて、変換された振幅キーフレームをエクスプレッションで制御します。
例えば、ビートに合わせてシェイプの大きさを変化させるには、シェイプの【サイズ】プロパティに次のエクスプレッションを書きます。
v = thisComp.layer("オーディオ振幅").effect("両方のチャンネル")("スライダー");
// 【調整ココ】音量の最小値と最大値の想定(曲に合わせて調整してください)
minScale = 0;
maxScale = 25;
// 音量の変化(min〜max)を、スケールの比率(0〜150)に変換
s = linear(v, minScale, maxScale, 0, 150);
[s, s]
これももう散々やってられるでしょうから、説明は必要ないかもしれませんが、簡単にしておきます。
① 対象となる円形シェイプの【サイズ】プロパティにエクスプレッションを書く
円形シェイプの中にある【レイヤートランスフォーム】欄を展開して、【サイズ】プロパティにあるストップウォッチアイコンを "Alt" キーを押しながらクリックすると、【サイズ】の項目にエクスプレッションが使えるようにデフォルトのコードが出ますので、それを消して先ほどのコードを書きます。
② v = thisComp.layer("オーディオ振幅").effect("両方のチャンネル")("スライダー"); の説明
【オーディオをキーフレームに変換】を実行すると【オーディオ振幅】と名前の付いたヌルレイヤーが作られます。その中にオーディオの振幅を数値化した振幅キーフレームが並びますが、その項目を展開してみてください。
【右のチャンネル】と【左のチャンネル】、そして【両方のチャンネル】の 3つの項目に分かれてキーフレームが打たれています。その中の【両方のチャンネル】からフレームごとに数値を取り出して『v』という変数に入れるということです。
minAudio = 0; maxAudio = 25; の意味
この意味を考える前に、【両方のチャンネル】の項目を選択してから、グラフエディタを起動してみてください。ただの点々だったキーフレームがギザギザと上下するグラフに展開されます。
その中の最大値と最小値がどれぐらいかを見て、minAudio = 0; maxAudio = 25の数値を変更してください。音が鳴っていないときは、ほぼ『0』を示していますが、オーディオによって最大値はまちまちです。そのためこれは調整するのが必須になります。
s = linear(v, minScale, maxScale, 0, 150); の意味
これは、変数 vの値を minAudio ~ maxAudio の範囲内に制限しつつ(クランプする)、その比率のまま 0~150 の数値に変換して変数 s に代入する働きをしています。
《補足》
所詮、振幅キーフレームには物理的に音量の大小がグラフ化されているだけですから、そのまま利用すると、人間が意識したとおりの動きにはならず、だらだらとメリハリのない繰り返しの動きになります。そこで、聞いている人が意識する旋律に切り替わるような動きをあえて入れてやるのも、一つの方法だと考えています。
例えばバスドラムの音に意識がいっているときは、『ドン、ドン、ドン』とビートに合わせてグラフが上下しているのは許容範囲です。しかしそこにピアノの旋律が入ってきたときなどは、意識はドラムの音から離れて、ピアノを追いかけたくなるのが人間の心理です。ついそちらへ引っ張られてしまうものです。そんなときはあえてグラフを操作して、ピアノの流れに合わせてグラフを上下させるような調整はするべきだと思います。
今回は触れませんでしたが、一つの音源から一つの振幅波形を得るのではなく、 AEに搭載されている【パラメトリック EQ】や【ハイパス・ローパス】等を利用して、ベース音とピアノ音を分けた音源にして、それぞれの振幅波形から個別に制御するなどが考えられます。
「そこまで手を入れるなら、最初からオーディオ振幅を作る意味があるの?」と思われるかもしれませんが、ゼロから手動でキーフレームを打つよりも、オーディオ振幅を『動きの基本波』として利用し、そこに人間の感覚に合わせた補正を加えていく方が、圧倒的に効率的で自然な動きを作ることができると思っています。
上の画像の右側みたいに、もともとの振幅波形が跡形もなくなるまで整形する必要はないと思いますが、単調な動きばかりではなく、意識的にコントロールされているという部分もあってもいいのではないかと思っています。でもここは、個人の感性の部分になりますので、どれが正解というものはないかもしれませんが、参考までにご覧ください。
《振幅キーフレームを整形する方法》
例にしたのは別の曲になりますが、とてもビートが読みやすい曲でした。そこでこの映像を参考にしてもらいたいのですが、AEでオーディオ振幅を調整するにあたり、DTM(音楽制作)の専門用語に出てくる ADSRの中で、最低限知っておいていただきたいものに『アタック』と『リリース』の概念があります。
アタック: 音が鳴り始める瞬間の立ち上がり(立ち上がりの速さ・強さ)
リリース: 音が鳴り終わって消えるまでの余韻(減衰の長さ)
複雑な音響理論まで知る必要はありませんが、これらの言葉の意味だけ把握しておくと、この後の波形編集のロジックが格段に理解しやすくなります。
それでは続いて『とげとげライダー』を作りますので、ここから先は C4d L寄りの話になります。
【初めて CINEMA 4D Liteを知った方へ】
まだ C4d Lに手を出していない方も、せっかく AEに搭載されている本格3Dソフトですから、使わずにいるのはもったいないです。
『機能限定版』とはいっても、それは単なるオマケではなく、制作に必要な基本機能はしっかり備わっています。ぜひ一度挑戦してみてください。きっと AEで制作する映像の中で新しい世界が開けるはずです。
とはいえ、C4d Lを最初からここで説明するには、あまりにも内容が濃すぎます。そこで 3Dの面白さと奥深さに目覚め、ぜひ挑戦してみようと奮起された方は、【CINEMA 4D Liteやってます【最初の一歩】 】から順にお読みになっていただければ、今ここで書かれていることが「なぁんだ、たいしたことやってねえな」とほくそ笑む日が必ずやってきます。なにしろワタシがその道を歩んできたのですから……。
(参考までに、My Portfolioに並んでいる映像はすべて C4d Lで作成されています)
『とげとげライダー』が立体的に出たり入ったりしているのは、AEで作った白色と黒色の変化する映像が基本になっています。これを C4d Lの【変位】チャンネルで利用すると、高低差の付いた物体に変換してくれます。
ではその作り方です。
まずは 300×300pxのコンポジション、『とげ原型』を作り、それにすっぽりはいる、白黒濃淡の円形シェイプ『丸シェイプ』を一つ作ります。
『線』は無しで、『塗り』はセンターを白色にして、外に向かって黒色に変化するグラデーションを掛けただけのものです。
タイムラインにはこの円形シェイプのレイヤーと、目的の音源を参照して【オーディオをキーフレームに変換】が吐き出した【オーディオ振幅】レイヤーとその音源が載っているだけです。
『オーディオ振幅』レイヤーと『丸シェイプ』レイヤーを展開しますと、次の画像のようになります。
『丸シェイプ』の【不透明度】プロパティには、次のエクスプレッションが書かれています。
v = thisComp.layer("オーディオ振幅").effect("両方のチャンネル")("スライダー");
// 【調整】音量の最小値と最大値の想定
minAudio = 0;
maxAudio = 25;
// 音量の変化(min〜max)を、不透明度の(0〜100)に変換
c = linear(v, minAudio, maxAudio, 0, 100);
// [c] で不透明度を変える
[c]
『オーディオ振幅』レイヤーに並ぶキーフレームを見て、なんとなく違和感を覚えた方もおられるかもしれませんので、簡単に説明しておきます。
これはワタシ風のやり方で、振幅が音楽のときはビートのアタックにあたるキーフレームを、リップシンクのときは声優さんの声のピーク時にあたるキーフレームを "フクシアピンク" の色にして目立つようにしています。
こうすると……、次の画像をご覧ください。
音源の『波形表示(緑部分)』と【オーディオ振幅】レイヤー(赤色)の『キーフレーム』の関係。そしてその下のノコギリの歯のような波型は、そのキーフレームをグラフエディタで見たときの画像が合わさっています。
ノコギリの歯のようになっているのは【オーディオ振幅】レイヤーのキーフレーム一つ一つを整形して、かつ、音源のアクセントとなるアタック位置を示すフクシアピンクのキーフレームがぴったり合っています。こうすると、波形の整形中にズレた場合、音源のビートとピンク色のキーフレームの位置がズレていますので、目でも確認できるようになります。
では次です。
音楽で変化する白黒グラデーションの『とげ原型』コンポジションができたら、次に全体の入れ物になるものとして、6800×300pxの『stage』コンポジションを作り、その中に『とげ原型』コンポジションを次のように並べます。
すべて同じ『とげ原型』コンポジションです。異なるのは場所の配置と、タイムラインの時間軸の配置がピラミッド状になったところです。
つまり、緑色のレイヤーを時間軸の先頭にして、それ以降は 1フレームずつズラして配置、場所の配置も緑のコンポジションを画面中央の 3400pxの位置に配置して、あとは外に向かって均等配置にして広げています。
C4d Lの【変位】チャンネルに必要なものは、白から黒のデータです。今のままだと白から透明に変化しますから、タイムラインの一番下に黒色の平面を置いて対処しています。
次の画像が、音楽と同時に『とげとげライダー』の原版を動かしたところです。
複雑そうな動きに見えますが、構造は先ほどの説明したとおり単純で、ビートに合わせて明暗を繰り返しているのは一つだけです。それが 1フレームずつ時間をズラして動くので、アメリカのレトロテレビドラマ【ナイトライダー】の動きと、基本は同じです。だから『とげとげライダー』です。(うへぇ。昭和!)
それを C4d Lの【変位】チャンネルのテクスチャに使えば、白色はでっぱり、黒色はへっこむという高低差を作ってくれます。するとそれがレベルメーターのように音楽に合わせてピコピコ動くものになります。もちろん 3Dですから見る角度は自由です。
次はこれらのデータを C4D Lite に持ち込みます。
ところで、先ほどから作っていたものは AEのオーディオエフェクトで動く動画ばかりです。それを C4d Lに持ち込んだところで、なにがどうだという疑問しか浮かばないかもしれません。
「だいたい Lite版で動画がインポートできるのか?」と、心配になるかもしれませんが、Maxon社の開発チームはちゃんと道を残してくれていました。
少々、問題点はありましたが、すべて解決して、かつ 3Dの中できれいな映像となって再び AEに戻ってきているのは、先にお見せしました "謎の物体 X "が実証しています。
【テクスチャに使える動画の種類】
『H.264』でエンコードした『mp4』動画はすんなりと持ち込めました。例えば、平面オブジェクトのマテリアルとして『mp4』動画のテクスチャを張り付けてやれば。ちゃんと C4d Lの中で動いています。
注意が必要なのは、動画を利用したテクスチャを使用するには、アニメーションの設定をしないと動きません。それについてはこちらをお読みください。
【テクスチャにアニメーションを使う】
● QuickTimeのProResデータ(movコンテナ)も『16:9』のサイズなら持ち込めました。それ以外の比率のものは無視されますので注意してください。
● 連番PNG(ファイル名に通し番号がついているもの)も読み込めます。PNGは静止画のデータですが、AEの【レンダーキュー】のデフォルトで『PNG』を選択すると、ワークエリアの範囲を『連番PNG』として通し番号を振った画像が出力されます。C4d Lではその中のもっとも最初の番号のファイルを選んで読み込んだ後、【計算】ボタンを押すとすべての画像を取り込んで動画として扱えるようにセッティングしてくれます。
【計算】ボタンがどこにあるか、なども【テクスチャにアニメーションを使う】で説明しています。
● C4d Lでオーディオファイルが再生できないと映像が作れない、と思われたかもしれませんが、安心してください。C4d Lの中でも映像に合わせてオーディオを鳴らすことはできます。その方法は以下のページで説明しています。
【 オーディオを再生したい】
● AEで作った白黒映像を C4d Lのマテリアルチャンネルで使う方法は【雨の波紋を3D化する】でやったの同じですので、【テクスチャの特殊な使用法】をお読みください。
【何が問題だったのか(フォーマットによるレンダリング速度の違い)】
ひとまずマテリアルに動画持ち込めることはわかりましたが、どのフォーマットが効率いいのかです。なにしろエンコードを 3回通すからです。最初は、AEから C4d Lのテクスチャに渡す映像作成時です。次が C4d Lで 3D化したあと それを AEに持ち込んで加工とオーディオーのミキシングをするときに『.c4d』ファイルのままでは激重ですので、QuickTimeの ProRes4444あたりに変換してから加工に入ります。それが終わったら 3回目のエンコードを経て、晴れて映像となります。
このような工程ですので、できたらなるべく速いのに越したことはありません。このことは以前このサイトのトップページぼやいていますが、1回目と 3回目のエンコードは通常のシーケンスですから、エンコードの速い順。
ProRes422HQ > ProRes4444 > H.264
という一般的な順序になりますが、問題は 2回目のテクスチャに使われた動画がレンダリングされるときです。使用したフォーマットの違いで、通常のエンコードで費やす時間の比ではないほどの時間が掛かりますので要注意です。
何も知らずに軽いから『H.264』でテクスチャに送ったもので通したら、たったの 1分半ほどの 1080pサイズなのに、なんと 7時間半という。新幹線で東京まで往復できる(ここは大阪ですので)、現代のタイパをなめとんのか、とでも言いたくなるような時間を費やした苦い経験があるからです。
そこで、QuickTimeの ProRes422HQで実行したところ、約 3時間47分で、約半分に短縮できたのですが、まだ東京まで行けてしまいます。
ということで、お察しのとおり『連番PNG』が最速でした。
連番PNGを使うと、ぬあんと 59分53秒でした。7時間半が 1時間にまで短縮したのです。
ただし!
ここは声も高々に宣言しますよ。やはり世の中そんなに甘くない。
エンコード時間は最速でしたが、ファイルの数と容量がとんでもないことになります。
『スペアナ・グラフィック』と『とげとげライダー』2つで、7826個の PNGファイルと 12.1GBにも上るハードディスクを占領されました。(気ぃつけなはれや~)
ところで……。
『H.264』が最も遅かった理由を調べてみると、差分データで記録されていたからでした。
差分データというのは、一定の間隔で 1枚の完全版の静止画を記録し、その後は変化のあった部分だけをデータ化して記録する方式のことです。このデータをテクスチャに使用してレンダリングすると、レンダラーはあるフレームの画像データを再現するために、何フレームもさかのぼった場所に記録された完全版のデータから、レンダリングする画像までの差分を計算して生成するために、普通よりも多くの時間を費やすということです。
『PNG』ファイルは 1フレームごとに独立したファイルですので、ダイレクトアクセスで画像を読み込めますから、その分、爆速でレンダリングが進んでいくのは後から考えれば当然です。
ちなみに、ProRes(.mov)も1フレームごとに完全な画像を記録していますが、動画ファイルの構造から読み出しフレームを探し出す処理や、色データ(4:2:2や4:4:4)の展開にわずかな負荷がかかるため、『連番PNG』よりも少し遅くなります。
どちらにしても特殊な使用方法ですから、このようなことはめったにないと思いますが、とりあえず、3Dに動画をテクスチャとして取り込むときは『16:9』サイズの『mov』ファイルか、ハードディスクに余裕があるのなら『連番PNG』と覚えておいてください。
では説明を元に戻します。
これが C4d L側の作業画像です。
円盤の構造ですが、何も凝ったところはありません。円盤の中心になる部分は【フィレット】を付けた角の丸い円柱で、その円柱と同じぐらいの直径の円柱をキャップ無し(フタの無い円筒形)にして、円盤の周りを囲っているのが、『とげとげライダー』が張り付く円柱です。オブジェクトマネージャでは『とげとげ』と書かれています。
【変位】チャンネルが機能して、ただの白黒グラデーションが尖った物体になっています。最も尖っている部分が白色で、黒に近づくほど低くなっています。
形が円錐形ではないのは、マテリアルタグ でサイズやタイリング設定を調整しているせいです。(ピンク枠の部分)
上の画像の『①』『②』は2つの映り込み専用の球体 に使用するマテリアルをコンポジットタグ (右クリック→【レンダータグ】→【コンポジット】)で映り込む先を変えている部分です。
コンポジットタグの設定は次のようになっています。
映り込み専用ですので、影が落ちないようにしているのは共通ですが、『①』はカメラから見える映り込み、すなわち背景としている宇宙の絵です。
『②』はカメラから見えないようにした別の宇宙の絵で、これは円盤の中央部分の鏡面反射に強く反射して、ツルツルに磨き上げられたような滑らかな表面を作っています。
その円盤部分の【発光】チャンネルに、『スペアナ・グラフィック』のイコライザー動画をテクスチャとして読み込んでいるのが、次のマテリアル設定です。
ご覧のように 5220個の「連番PNG』ファイルが使われていて、動きが速いイコライザーでもきれいに見えるように、奮発して 60fpsです。これもファイルが巨大になった原因の一つですね。
次の画像が『とげとげライダー』のマテリアル設定です。
色は【発光】チャンネルで作った "虹色グラデーション" で、暗い宇宙でも光って見えるようにしつつ、【変位】チャンネルに読み込んだ『togeToge.png』で高低差を作る【変位量】や『最大高さ』で設定しています。
【タイプ】の設定は『強度(中心)』がいい結果を生みますが、この『とげとげライダー』に関しては普通の『強度』の設定で、いい感じになりました。
右端の画像が、読み込んだアニメーション設定です。30fpsで、2600個の『連番PNG』がセッティングされています。
これが "謎の物体 X "の全貌でした。
《なんか消化不良です》
『スペアナ・グラフィック』と『とげとげライダー』だけではあまりにも陳腐ですので、もう少し別の例で実験してみます。
次の映像は我流の方法で整形した振幅キーフレームを使って、AEの最新エフェクト【カールノイズ】の【コントラスト】プロパティを制御した例です。
音が鳴ります。音量にご注意ください
ここまで徹底的に整形する必要はないかもしれませんが、これでもまだ細かい点でビートとズレてしまっている点が多々あります。満足するまで作業をしていたら、完了のときを迎えることは無いかもしれません。(凝りすぎ注意報発令)
コントラストプロパティに記載したエクスプレッション
v = thisComp.layer("オーディオ振幅").effect("両方のチャンネル")("スライダー");
// 【調整ココ】音量の最小値と最大値の想定
minAudio = 0;
maxAudio = 70;
// 振幅の変化(min〜max)を、30~200にする
s = linear(v, minAudio, maxAudio, 30, 200);
【カールノイズ】というのは 2026年6月より AEに搭載された最新のエフェクトで、流動体の動きを作ることができます。よく似たものに『フラクタルノイズ』がありますが、あちらは『雲』『煙』のようなものに適しています。
この【カールノイズ】が白黒画像を出力するのも理由があって、余計な色情報がない白黒(グレースケール)は、彩度ゼロの純粋な輝度情報(明暗)だけです。だからこそ、AEの色付けエフェクトが素直に乗ってどんな色彩にも自在に加工が可能であり、かつ C4d L的に、もってこいのシロモノなのです。
例えば、白色に近いほど不透明になり、黒色に近づくほど透明になる【アルファ】チャンネルのテクスチャに使えたり、白に近いほど出っ張り、黒に近づくほど引っ込む、という高低差のデータとして機能する【変位】チャンネルにも使えます。
上記の映像は【コントラスト】を制御していますので、AEの画面では明るさが変化しているだけですが、C4d Lを通すと凸凹した グニャ~が出たり入ったりを繰り返すとことになります。
次の映像は同じ【カールノイズ】の【展開】プロパティをエクスプレッションで制御した例です。【コントラスト】プロパティとは異なり、ビートに合わせて脈打つような動きに変化します。
展開プロパティに記載したエクスプレッション
v = thisComp.layer("オーディオ振幅").effect("両方のチャンネル")("スライダー");
// 【調整ココ】音量の最小値と最大値の想定
minAudio = 0;
maxAudio = 70;
// 振幅の変化(min〜max)を展開の数値として -20~20にする
s = linear(v, minAudio, maxAudio, -20, 20);
最後に先ほどの白黒の【カールノイズ】を C4d Lで 3D化した『カールノイズ グニャ~』の映像です。
音が鳴ります。音量にご注意ください
カールノイズには、まだまだたくさんのパラメータがあります。面白い動きが作れるかもしれません。いろいろ試してみてください。
前回は "謎の物体 X "で始まり、【カールノイズ】の "グニャ~" とした抽象的な映像で終わりましたが、少々不満が残りました。それは C4d Lの【変位】チャンネルを利用した 3D化ですから、複雑な高低差はできるのですが……なんとなくインパクトに欠けていました。
それは【変位】チャンネルの 3D化が『白黒のカラー情報で高低差を付ける』という間接的な手法であり、いまひとつ手ごたえが得られない感じだったからです。ただ曲面を持ったとても複雑なものであっても、確実に 3D化できる有効な方法だと思いますが、派手さがないというか……そこらあたりがしっくりこなかったのです。
そこでもっと強烈なものができないか探っていたところ、いいものを見つけました。こんな方法も可能なんだ。というか、「こんな機能、誰が使うねん」という、超マニアックで変態的なアプローチを紹介します。(なんかムチャクチャなこと書いてますが……)
それが【Maxon Cinema 4D Exporter】機能です。
「おおぉ、なんかすごそう!」
以前紹介した、C4d Lの数値を AEへ送る方法、運び屋ヌルの逆パターンで、AEから C4d Lへデータを送ることができます。
さすがに Lite版である C4d Lでは不可能だろうと思っていたのですが、ちゃんと存在していました。まじで びっくりカメラでした。(出た! オヤヂ……)
数値を扱いますから、何にでも使えるのですが、派手な例で実験したほうがインパクトがありますね。そんな要求に適したものは、やっぱりオーディオビジュアライザーでしょう。
今、オーディオと同期させて動くグラフィックのブームが一周回って、再来の兆しを感じますので、ここではオーディオの振幅波形から数値を拾い、それを C4d Lに送りましょう。そして受け取った数値でオブジェクトを直接制御します。
例えば、オブジェクトの位置座標と連携させればピョコピョコ動くし跳ねるし。スケール値ならビートに合わせてビクビク脈打つような動きを繰り返します。あるいは、デフォーマのいずれかのパラメータと連携させれば、音楽とともに変形するとか、波打つとか、歪むとか、モーグラフ で制御すれば、想像を超えるものが生まれるかもしれません。とまあ、ちょっと考えただけで、たくさんのアイデアがあふれ出します。しかもすべて 3Dオブジェクトですからね。360度ぐるりと見渡せるんです。
全部試していたらキリがないので、とりあえず、どうやって AEの振幅レイヤーに並んだキーフレームを C4d Lに送れるのか、その工程を順に箇条書きします。
① オーディオレイヤーを参照して【オーディオをキーフレームに変換】を適用。そして振幅レイヤーを作る
毎度の作業です。詳しくはこちらをお読みください。
【振幅キーフレームをつくる】
② ヌルオブジェクトを作り 3Dレイヤーにする
これは必須です。この 3Dヌルの動きをあとでキーフレーム化して C4d Lへ送ります。そうしないと、送るときに「3Dレイヤーが無いよ~」というエラーが出ます。
③ 次元に分割を適用して振幅レイヤーを読み込むためのエクスプレッションを、ヌルオブジェクトの『Y』プロパティに書く
次元に分割をして X、Y、Zプロパティを個別にコントロールできるようにすると、少しだけエクスプレッションのインストラクションが省略できます。今回送るのは『Y座標』です。
『Y座標』を送る理由は特にないです。キーフレームが打てるプロパティならなんでも可能ですが、受け取るのは C4d Lのヌルですから、【位置】のプロパティが都合いいのと、波形の上下がなんとなく『Y座標』の動きと一致したから、ただそれだけです。利用するのは AEから送られてきたキーフレームの数値のみです。
※ここ重要
要するに、リアルタイムに AEからデータが送られてくるのではなく、一旦キーフレームという時系列データ(フレームごとの数値)に変換されたものを読み取って、その数値を C4d Lのフレーム毎に利用するということです。
そしてこの段階で、曲のリズムに合わせた波形に整形をします。ついでにその作業を助けるためのヘルパーオブジェクトを作ります。ヘルパーオブジェクトについて詳しくは後述しています。
④『Y』プロパティを選択してから【アニメーション】→【キーフレーム補助】→【エクスプレッションをキーフレームに変換】を実行する
これで C4d Lへ送るキーフレームが作成されます。
⑤【ファイル】→【書き出し】→【Maxon Cinema 4D Exporter】を実行する
できた『.aep』ファイルが変換されて、『.c4d」ファイルとして書き出されます。
少し経って、こんなダイアログが出ますが、これは「2Dレイヤーが混ざってるけどそれはエクスポートしませんからね」というメッセージですので、気にせず『OK』を押してください。2Dレイヤーとは、振幅レイヤーとか波形整形のヘルパーオブジェクトのことです。
⑥ C4d Lを起動して、書き出した『.c4d』ファイルを読み込む
⑦ AEからカメラやカメラターゲットに続いて、キーフレームを打ったヌルがオブジェクトマネージャに並んでいるか確認する
AEから送り込まれるのはヌルだけではなく、AEの 2ノードカメラと目標点が自動的に作られて、それが、C4d Lのカメラと、カメラターゲットに変換されます。
カメラ類が必要なければその場で削除しても問題ありませんが、のちに必要になると思いますよ。
そして、肝心なのは AEから持ち込まれたヌルが、C4d Lのヌルとなって、その『Y座標』にキーフレームが打たれた状態でできあがっていることです。
タイムラインパネルを開いて再生ヘッドを動かすと、ちゃんとそのヌルが動くのが見られます。ただし、C4d Lと AEでは『Y座標』の挙動が逆なのを頭に入れておいてください。AEは位置が下へ行くほど『Y座標』の数値が大きくなり、C4d Lは下へ行くほど小さくなります。そこで、Xpressoで『-1』を掛けて反転させます。
Xpressoというのは C4dで使用される AEのエクスプレッションみたいなものの、もっと今風のビジュアルプログラミング環境と呼ばれるものです。
テキストベースプログラミングの人間からしたら、回りくどくてやっとれんワ、と思わず漏らしそうになる代物です。(ここの説明もくどいぞ、実際……)
⑧ あとはそのヌルのY座標を何らかのパラメータの制御値として Xpressoで加工してやる
【変位】の白黒データと違って、数値で直に 3Dをコントロールしますので、Xpressoは必須です。
ただし、そのヌルを親として単純に上下させるだけでしたら、Xpressoを使わずとも、ヌルの子階層にそのオブジェクトを設置すればリズムに合わせて上下します。
Xpressoの出し方やノードのポートの扱いなどは、このサイトでも少し触れていますので、初めての方は下記の記事を参考にしてください。
パースガイド作成ツール(その 4/6)[思わずうなる XPresso] 前編
パースガイド作成ツール(その 5/6)[むむむの XPresso]後編
ここで使用した Xpressoは後述します。先に AEで作った上下運動するヌルの動きを何に利用するかを考えました。
せっかくですので、派手にパーッと弾けるようなのがいいですね。
最初に考えたのが、【地形】オブジェクトの山の高さを曲に合わせて上下運動させるというパターン。【変位】チャンネルで凸凹を繰り返していた動きが、もっと派手になるぞ、と考えたのですが、あまりにも短絡的でひねりも何もないのが恥ずかしくなったため、急遽取りやめてこれになりました。
音楽に同期した 3Dモーショングラフィック。
題して『青ウニ参上!』(仮面の忍者かっ! リメイク版みてね……)
相も変わらず意味不明の物体ですみません。なにしろデザインは二の次、動かすことに先走る習性を持つワタシの病気みたいなものです。(クソゲーメーカー から何も変わっとらん……)
右下に出ている数字は Xpressoで正しく制御されているかをモニターしている AEから送られてきた Y座標を表す数値です。『0』から『1000』までの数値が来ています。つまり、AEでのコンポジションサイズの縦サイズが『1000』pxだということです。
想像したとおり、【変位】を使った動きよりも直接的でダイナミックな動きが作れますので、こっちのほうが見ていて楽しいですね。(だからといって、何でウニ? しかも青いし……)
ちなみにこのウニは、【地形】オブジェクトを球体にして、ビシビシしたトゲが出るようにしています。そのとげの高さを AEから送られてきたリズムデータに合わせて動かしているのです。
それでは本題に入ります。
AEから C4d Lへ【オーディオをキーフレームに変換】で作成した振幅キーフレームを送る方法です。
【ヘルパーオブジェクトを作る】
【オーディオをキーフレームに変換】で作られた振幅波形は、上下に波打つものです。それを C4d Lでは【青ウニ】オブジェクトのトゲを伸ばしたり引っ込めたりする運動に変えています。つまり曲のビートに合わせてトゲの伸縮をイメージして操作するのですが、目で見えるのは波形の上下です。しかも波形が上がると『Y座標』は下がるという、混乱極まりない状態での波形の整形は、長く続けていられない苦痛に襲われます。
それを直感的に『大きさの変化』として補助的に動くものがあれば、イメージが伝わりやすくなります。そのためのヘルパーとして、作業中の AEにプレビュー用の円形シェイプを用意します。そしてこの円が振幅の上下を円形の伸縮に変換します。
このように最終レンダリングには使わず作業の補助・視覚化のためだけに使うオブジェクトを CGの世界では『ヘルパーオブジェクト』(またはガイド)と呼びます。
次が、そのヘルパーオブジェクトの動きとヌルオブジェクトの動きを説明した映像です。
もっとも下の黄色の 3Dレイヤーが C4d Lに送るキーフレームで、下記のエクスプレッションが次元に分割をした『Y』プロパティに書かれていて、振幅の変化が『Y座標』の位置に変換されて動いています。
v = thisComp.layer("オーディオ振幅").effect("両方のチャンネル")("スライダー");
// 【調整ココ】音量の最小値と最大値の想定
minAudio = 0;
maxAudio = 70;
// 振幅の変化(min〜max)を、Y座標0~1000にする
s = linear(v, minAudio, maxAudio, 0, 1000);
このヌルレイヤーの動きは振幅が大きいときは下へ動き、小さいときは上に動きます。(上端が Y=0になっているから)
これをヘルパーの役をする円形シェイプの【スケール】プロパティに、次のエクスプレッションを書いて、サイズの大小の変化にしています。
ところで、ヘルパーの円形シェイプがガイドレイヤーになっている理由は、単純に作業中だけの存在で、正式には表に出ないようにしています。(裏方さんです)
こうすることで、振幅が大きくなるとトゲが伸びる=大きな円になる。振幅が小さくなる=トゲが引っ込んで小さな球体になる、とイメージしやすくなり、波形整形の手助けになります。
v = thisComp.layer("オーディオ振幅").effect("両方のチャンネル")("スライダー");
// 【調整ココ】音量の最小値と最大値の想定
minAudio = 0;
maxAudio = 70;
// 振幅の変化(min〜max)を、X,Yサイズの 0~100にする
s = linear(v, minAudio, maxAudio, 0, 100);
[s,s]
振幅の整形ができたら、3Dレイヤーのヌルの動きをキーフレームに変換します。工程④ですね。3Dレイヤーのヌルの『Y』プロパティを選択してから【アニメーション】→【キーフレーム補助】→【エクスプレッションをキーフレームに変換】を実行します。
するとすぐに『Y』プロパティのタイムラインにずらっとキーフレームが並びます。
続いて 工程⑤、【ファイル】→【書き出し】→【Maxon Cinema 4D Exporter】を起動します。
このあと、C4d Lを立ち上げてから書き出した『.c4d』ファイル開くと、次のような画面になります。
オブジェクトマネージャに AEから送られてきたもろもろが揃っています。そして画面下部にあるタイムラインのドープシートには、送られてきたキーフレームが打たれて並んでいます。
同じような画面にならないときは、オブジェクトマネージャが展開されていない、ビューポートが【透視】以外になっている。そもそも『.c4d』のエクスポータがエラーを起こしている。など初歩的なミスもあります。
特に、AEに 3Dレイヤーが作られていないと『.c4d』ファイルの書き出しが始まりません。送り出そうとしているヌルレイヤーが 3Dレイヤーになっているか確認してください。
『.c4d』ファイルを開いたら、ヌルオブジェクトが肝心です。正しくキーフレームが打たれていて、キーフレームごとに数値が変化していることを確認してください。
タイムラインのドープシートの使い方などは【タイムラインのトラブル】をご覧ください。
また、C4d L側で作業するときも同じ曲が流れていないと確認が取れません。C4d Lでオーディオを鳴らす方法は、以下のページをご覧ください。そこでも書いていますが、音源は『.wav』よりも『mp3』のほうがエラーが少ないようです。
【 オーディオを再生したい】
キーフレームも打たれていて、再生バーを動かすとヌルオブジェクトが上下するようでしたら、ほぼ問題ないと思われます。オブジェクトマネージャではグループ化されているカメラやカメラターゲット等の階層からヌルオブジェクトを引きはがして、最上階層に移動させ、あとはご自由に料理する準備を始めましょう。
ワタシの場合は『青ウニ参上!』ですから、青ウニを作って Xpressoを作成しました。これがオブジェクトマネージャの様子です。
上の画像の【属性マネージャ】が【地形】オブジェクトの『ウニ』設定です。
【サイズ】の『Y値』はすでに Xpressoで制御されているため、フレーム毎にいろいろな値に変化しますので無視してください。Xpressoは最後にまとめて説明します。
それと完成動画とは異なって、数値表示が 2つ出ているのは、Xpressoの説明に必要でしたので追加しただけです。
もう一つ、重要なことがあります……。
【AEの振幅レイヤーを後から修正したときはどうするのか】
もし AEの波形整形を修正したときは、AEにある 3Dヌルの『Y』プロパティに打たれていたキーフレームは全部削除して、再度キーフレームを作成し直します。その後続けて『.c4d』ファイルをエクスポートしますが、そのときは別名ファイルにしないと、せっかく進んでいた 3D作業が上書きされてしまいます。
別名保存したら、その『.c4d』を開いて、その中のヌルオブジェクトを作業中のプロジェクトにコピペし、新『振幅』ヌルオブジェクトとします。
次に、旧『振幅』ヌルに貼っていた Xpressoタグを新『振幅』ヌルにペースト。古い『振幅』ヌルはこの時点で削除。
続いて、ペーストした Xpresso内の【振幅】ノードをクリックしたら、【属性マネージャ】を見てください。その中にある【ノードの属性】→【参照】に、新『振幅』オブジェクトを指定すると、新規の振幅に入れ替わります。
ではオブジェクトマネージャに並んだ順に説明していきます。不必要な部分は読み飛ばしてください。
①『Objの映り込み』
これは定番の、対象にしているオブジェクトに背景が映りこむようにするための装飾オブジェクトです。コンポジットタグでカメラには映らない巨大な球体が置かれていて、青色光珠画像や、抽象的(宇宙的)な模様のマテリアルが二重に掛けられています。これが『青ウニ』の青色の正体です。
上の赤い丸が点いているのは、作業中にこのマテリアルが見えてしまうとジャマなので、消しているからです。
②『ライト・環境』『ライト』
環境ライトと【減衰】を『2乗に反比例』にした『全方向』ライトで、これら 2個は照明用です。
③『カメラレール』
『青ウニ』の周りでカメラを走らせるための『円形パス』です。直径を変えたり上下させることで、カメラズームやオービットの動きを再現しています。
④『カメラターゲット』
AEでいうところの、カメラの目標点です。カメラが常に向く点になります。この場合は『青ウニ』のセンターに固定しています。
⑤『カメラヌル』
カメラレールの円形パスに沿って走るのは、この『カメラヌル』で、子階層のカメラではありません。そうしないとカメラの自由が利かないからです。カメラの視点はカメラターゲットから離れませんが、撮影する角度を変化させるときに、この親子関係が必要になります。
【スプラインに沿う】のタグが貼られています。
⑥『カメラ』オブジェクト
『青ウニ』を撮影するためのカメラです。【ターゲット】タグが貼られています。
⑦『Text』オブジェクト(ValとVal2)
カメラの視野には、AEから送られてきた数値を常にモニターするテキストを実体化した【押し出し】オブジェクトが設置されています。そしてその位置を固定するために、カメラの子階層に入れています。こうするとカメラがどこを向いても、『Textオブジェクト』は同じ位置を維持します。ただこの『Textオブジェクト』は数値のモニターですから、最終的には不要なものです。
ちなみに Valは『青ウニ』の下の数値で、Val2は上の数値です。詳しくはXpressoで説明します。
⑧『振幅』ヌルオブジェクト
AEから送られてきたヌルで、このヌルに Xpressoタグを貼っています。
9『青ウニ』ヌルオブジェクト
『青ウニ』の親となるヌルです。下層階に『青ウニ』の本体、【地形】オブジェクトが入っています。
この後は、AEから送られてきた振幅キーフレームの数値を読み取って、『青ウニ』のトゲを出し入れする Xpressoの説明です。
ちなみに『青ウニ』のトゲを出し入れするのは、【地形】オブジェクトの【サイズ】パラメータの『Y値』を変えればいいだけです。ただ、AEからやってくる数値は、だいたい『0~1000』です。
だいたいと書いたのは、振幅を整形したときに波形がマイナスへ振れたり、最大値の『1000』をたまに超えることがあります。それを適した数値に変換しないと画面から飛び出したり、ちまちました動きになったりします。そのあたりも考慮した制御にしないといけません。
これが Xpressoの状況です。
これを見ると、テキストベースでバリバリプログラムしてきた人はたじろぎますが、これがビジュアルプログラミング環境だということです。
正直、何度触っても「腑に落ちん……」と首をかしげています。複雑になってくると、線がぐちゃぐちゃと接続されて、視覚的に見苦しくなります。なんだか昔の『goto』文のスパゲッティ状態みたいに思えるのですが、いまやこれが流行りだそうで。まあ、新しい波には乗っておくのが無難ですかね。(思考が昭和で止まってますもんで……)
では順に説明します。
①では【振幅】オブジェクトの『Y座標』値を ②の【数式】ノードへ入れています。
数式ノードでは以下の計算式が入っています。
ここで AEからやってきた数値を反転しています。座標系の補正ですね。
で、次。
反転された数値が、【マップ変換】ノードにはいりますが、【マップ変換】の説明の前に、覚えておかないといけない掟があります。この手のややこしい話が嫌いな人は飛ばしてください。もし C4d Lのことを隅々まで知りたい方はこのままお付き合いください。ここから先は自分の忘備録ともなっています。
まずこの数値の違いを見てください。(青ウニは鬱陶しいので消してあります)
写真は 2枚合成してあり、右下が AEの画面、左上が C4d Lの画面です。
AEから送られてきた数値の流れを順に見ていきます。
最初は右下の AEの画面で、442フレームに再生ヘッドが止まっていて、そのときの Y座標が 763.5724、単位は pxです。
つぎに C4d Lの同じ442フレームのときの【振幅】の Y座標の値は -7635.7242です。AEの示す数値の 10倍になっています。
その振幅が、Xpressoの【数式】ノードで、-1を掛けて正の数にしましたので、そこから吐き出された数値が 763.572となっています。マイナスが消えていますが、また 1/10になっています。
そしてそれが【マップ変換】ノードを通って出された答えが 229.072となっています。
まず、一つ目の疑問。
なぜ AEの数値とそれを引き受けた Y座標の値が10倍になっているのか。
これは簡単、C4d L側の環境設定(単位設定)が『mm』になっているからです。AEの 763.5724という数値を、C4d Lが自分の基本単位である『cm』として受け取り(763.5724 cm)、それを mm 表記に換算(×10)して属性マネージャに表示しているためです。
次の疑問。
では、『cm』扱いになったとしても AEの『px』とは共通性が無いはず。
はい、これも簡単。C4d Lでは、『px』という単位は直接扱いませんので、単純に同じ数値を『cm』として引き継ぎます。環境設定(単位設定)と Xpressoの内部単位(cm)の違いを理解しておくと、数値の桁ズレに悩まされなくなります。
続いて、今回の要です。
【マップ変換 ノードについて】
もう一度、【マップ変換】ノードに関する部分の写真をご覧ください。
ここではいったい何をやっているのかといいますと、AEのエクスプレッションを思い出してください。何度も出てくるこの部分です。
s = linear(v, minAudio, maxAudio, 0, 100);
これは、変数 vの値を minAudio ~ maxAudio の範囲内に収めつつ(クランプする)、その比率のまま 0~100 の数値に変換して変数 s に代入する働きをしています。
これと同じことを Xpressoでは上の画像のような設定でプログラムします。ここがテキストベースのプログラミングとビジュアルプログラミングの違いですね。
画像の『パラメーター』欄をご覧ください。
◇ 入力の下限:0
◇ 入力の上限:1000
入力ポートに入ってくる数値を『0~1000』の範囲にするのですが、AEと比べるとさらに細かい設定になっていて、クランプの設定まで可能になっています。(AEは範囲の上下を自動クランプしています)
要するに『下を切る』『上を切る』にチェックを入れないとクランプしない状態ですので、いまのままだと、0未満や1000を超える数値が入ってきても、そのまま計算されてしまう "何でもあり" 状態です。ですので、AEのように、求める数値の範囲外に突き抜けないように『下を切る』『上を切る』にチェックを入れるのが正解です。ちなみに『下を切る』とは『0』以下の数値、マイナスの数値が入ってきたときに出力を『0』で止めるための設定になります。
◇ 出力の下限:0
◇ 出力の上限:300 (入力値の0.3倍)
入力設定の比率のまま 『0~300』 の数値に変換して、出力ポートから出す、となります。つまり入力値の『0.3倍』にされた数値に変換されます。
【入力範囲】【出力範囲】の設定は『ユーザー定義』で問題ありません。『0→1』とか『0→100』などがありますが、これはただのショートカットみたいなもので、入力の手間を省くことができます。何か特別なものかと思っていましたが、C4d Lで時々あるお茶目な「なんじゃこれ?」設定のようです。
そしてラスト。【マップ変換】で出力範囲に変換された数値が『青ウニ』のとげの長さと、画面でモニターしている上のテキストへ送られています。もう一度写真をどうぞ。
入力ポートが 0.3倍にされますので、820.509×0.3=246.1527≒246.153となっています。(あぁ。スッキリ)


















