久しぶりのブロマガです。
何を話すかというとMMDの補間曲線、それもカメラのお話しなどをちょろりとしていきたいと思います。「そんなもん十分知っとるわ、たわけが!」という方には価値のない文章ですので回れ右しておいてください。そんなに大したことも言えないし。
対象読者は「カメラの補間曲線って何? どういう意味があるの?」という人です。その辺を私の拙い知識と技術で解説していきます。数学的素養があると理解が早いと思いますが、なくても解るように図解入りでやるだけやってみます。
「ちゃんと解説しろや!( ゚Д゚)」って方、私一応MMDer歴半年未満なんで、指摘があれば出来る範囲で注釈入れていきたいとは思いますが、まぁその辺はテキトーに流しておいてください。間違ってる箇所も指摘をもらえれば訂正していきたいと思います。
ブロマガにコメント付いたことなんてないけどな!
1.そもそも補間曲線てなんですか( ゚Д゚)ノ
……と、言う人も居るかもしれない。のでザクッと説明。
MMDのモーションは最小単位まで分解していくと「開始時点の位置姿勢」と「終了時点の位置姿勢」、2つのキーフレームで成り立ちます。
この2つを「どのくらいの時間をかけて」「どんな割合で変化させていくか」を指定するのがキーフレーム打ちという作業になります。変化の割合はシンプルな指定しか出来ませんが、これが補完曲線と呼ばれる奴になります。具体的には制御点4つをもったベジェ曲線ですな。このうち2点を自由に配置して任意の曲線を作ることになります。この曲線に沿って開始位置から終了位置まで値(位置や回転や視野角や距離)が変化していく、という訳です。シンプルっすな。
ちなみにサンプルとして、拙作(エフェクト抜き)を使用します。
2.補間曲線の種類
2つの制御点を自由に配置できる、とはいえ、実際に指定できる曲線は4種類に分類可能。「どのくらい曲線を曲げるか」で案配が変わるだけ。つーわけでそれを説明。
2-1.線形補間
(回転の指定になってるけど「すべて」同じ曲線が指定されてます)
コチラ、一番シンプルなデフォルトの補間曲線。(直線も曲線の仲間だよ!)
要は「開始位置から終了位置までの変化を、時間(間のフレーム数)で等分したものが1フレームの変化量」っちぅ指定。
3フレームかけてY軸0度→Y軸180度という指定をして線形補間を行うと、1フレームの変化量は180÷3=60度、ということになる。
まぁ難しく考えずに「スムーズにススーッと変化する」って覚えておけばOK。
メリットは「スパッ!」と変化すること。テンポやタイミングが重要なときに活躍!
デメリットの1つは目に厳しくなりやすい事。スパッと切り替わるので、時間あたりの変化量が大きい時にどこを見て良いか解らなくなる。もう1つの重要なデメリットがこの「視聴者が焦点を消失してしまう」事。上のGIFなんか特に「何を見せたいの?」って感じの絵になってると思う。こういう線形補間移動を繋げると「サッパリ分かんねぇ!!」っていう絵のできあがり。これだけは避けたいよね~。
2-2.S字型
(回転の指定になってるけど「すべて」同じ曲線が指定されてます)
カメラの補間曲線でググると大抵出てくるこの曲線。カメラの補間曲線の場合、線形補間とS字がベースになります。
GIFを見ると、最初と最後にタメができてるのが解ると思う。……解るよね?30フレームじゃ短いから解りづらいかもしれない('A`)ごめんよー
とりま結論から言うと、S字のカメラは前後の絵を印象づけながらカメラが移動する補間曲線って事。後ほど解説するけど、「タメを作らない線形移動」と「タメを作る非線形移動」がカメラワークの基本です。なので極論すると、この2つだけでカメラワークが作れちゃう、という事。
実際にはモーションやカメラの移動量でS字じゃ不足することがある。そんな時はS字カメラを分割して、後述のパターンを組み込むことになります。
2-3.ノの字型
S字型の前半部分に相当。最初にタメを作ってから「グワーッ!」と変化していくタイプ。
サンプルは時間が短いので効果がほとんどないけど、最初の絵を印象づけつつ大きく移動したい時に使います。キーフレーム間隔が短いと、サンプルみたいに無意味なカメラになっちゃうので、十分なタメを意識して使うべきだと思います(S字にも言えるけどね)。
2-4.逆ノの字型
S字型の後半部分に相当。「グワーッ!」と変化してきて最後にタメを作る。
これは時間が短くても効果が出やすい。サンプルだと靴に焦点があいやすいんじゃないかと思う。タメ時間が長ければ画面中央にある靴にさらに焦点が合いやすいと思う。
前述の「ノの字型」+「逆ノの字型」、そして間に線形補間型などを混ぜることで、S字型のカメラをカスタマイズする事が時々あります。
最初のうちは「この絵だけは確実にフレームに納めたい!」って時に使うと便利。慣れてくるとS字カメラでそれができるようになるけど、初心者の内は便利なテクです。
それ以外には、中間部分の回転方向や位置を任意に変化させる事でオモシロイカメラワークになったりするのだけれど、あんまり大きく変化させると「訳わかんねぇよ!」となるので多様や過信は禁物。「なーんかさっきから同じカメラワークだから変化付けたいな~」って時のアクセントとしてちょっとだけ使うのがいいんじゃないかな。
ノの字~線形補間(カメラ横ずらし)~逆ノの字サンプル
2-5.N字型(横S字型)
「5つ目じゃねぇか!( ゚Д゚)」
うん、すまない(´・ω・)
S字型を横にした奴。便宜上「N字」と呼んでおく。「グワ」っと変化してきて真ん中にタメを作ってから再度「グワーッ!」と変化する。
個人的には極希にしか使わない(前述の「逆ノの字」「線形」「ノの字」を組み合わせることはある)。これをそのまま使うのは難易度が高いと思う。サンプルの場合、キャラクターの頭部に視線が持って行かれる感じかな。これを意図してコントロールするのは結構難しい気がする。でもその辺は動画製作者の好みなので、「わしはこういうのが好きじゃーっ!」って人もいるかもしれない。
以上でカメラ補間曲線の基本形5パターンを紹介した訳だけど、これ以外は各々の応用パターンという事になる。つまり「特徴を極端にした物」になる。つーわけで上述5パターンさえ覚えておけば必要十分。使うときもほぼこの形になるんじゃなかろうか。やり過ぎると目にツライ(焦点がどっかいく)カメラになりやすいので注意。
3.そもそもカメラの補間曲線の意味って何さ? という話
「被写体(及びその動き)を、どのように見せたいのか」っつー事です。いわゆる視線誘導に繋がります。
動いていく被写体を追いかけたり、焦点(この場合は「見せたい被写体」の具体的な部位)を切り替えるのには主に線形補間を使います。……ハイソコ、異論は後で聞きます( ゚Д゚)
「この絵(フレーム)からカメラを移動させてこの絵(フレーム)にしたい!」って時はまず線形補間でキーフレーム打ちます。
そうやってキーを打って再生してみると「……最初と最後の絵(フレーム)がほとんど表示されない('A`)」って事がよくあります。
もっかい前述のGIFを見るとよく分かるけど、線形補間の方は0フレーム目と30フレーム目の絵の表示時間が1/30秒なのでまったく印象に残りません。……残らないよね?
線形補間
S字
つまり、カメラの移動前後(時には移動中)の絵にタメを作って、印象づけたい時に使うのがカメラの補間曲線になります。
タメを作る、という事は視聴者の視点をコントロールしやすくなります。
つまり、動画製作者が「ココ! ココを見て!」とアピールするための手段。これを意識してれば習得は難しくないと思う。単純にズームして画面全部キャラの顔にすればいいって物じゃないのですよ!( ゚Д゚)
まぁ私は逆にアップが苦手なんですけどね(´・ω・)
5.視線誘導
極論すると、「カメラ-ワーク=視線誘導」だと思ってます。「別に視聴者が好きな所を見たらええやん?」って思うなら固定カメラで良いわけです。
つまり「わしが見せたいのはココなんだよ!」というパッションを視聴者に分かりやすく伝える。
動画なので、見せたい絵、というのは連続した時間軸に連なってます。それを視聴者の負担を少なくしつつ「ココだよココ!( ゚Д゚)っビシッ」ってやるのがカメラワーク。この辺は異論がある人もいるかもしれないけど、持論はコレ。
視聴者の視点が滑らかに移動できれば「見やすいカメラ」、ヘタっぴだと「見辛いカメラ」って感じ。「見辛いカメラ」ってのは、要はどこを見たらいいか解らなくて、目があっちこっち動くから疲れるって事。こういうのはなるだけ避けたいよねー。複数人がガンガン入れ替わって踊るタイプのモーションだと諦めることが多いけどね。
あとすっげーカメラが動いて「見てた場所が動きすぎて辛ぇ('A`)」ってのも見辛いカメラ。
見やすいカメラにするには製作者が見せたい物に注視させ(この時、極力視点を動かさせない)て、その視線を次に見せたい物に滑らかにつなぐ。コレが視線誘導。
そして、見てる位置の変化量が少ないほど目の負担が少なく、見やすいカメラになる。「次に見せたいもの」を「見てたもの」の近くに置いてやって次に繋げる。なにげに結構大事なこと言ってるかもしれない。バトンリレーみたいな物ですな。
例えばこんなモーション(フレーム数222)があるとして
これだとどっちを、どこを見たらいいのか、視聴者には伝わらない。だから視聴者は好きな方を見る。でもそうすると動画製作者が仮定する「見てる方」と、視聴者が「実際に見てる方」が異なった場合に「見づれぇ!」って感想になる。そりゃそうだ。
とりあえず左側を見せたい! と思ったとする。一番簡単な方法は「見せたくないものを画面外に追い出すこと」。ということで左側のバストアップだけを見せることにします。
……目的は達成したけど単調すぎてつまんない!( ゚Д゚)
というわけでカメラを動かして画面に変化を起こします。このとき、下手に欲を掻いて顔や手のアップとかを入れちゃうと「動きすぎて見辛い!」となるので、当初の目的(左側のバストアップ)のみを考えることにします。
今回は私が良くやる、左右にS字で往復させる&カメラのフォーカス(距離0の場所・カメラ原点)も左右に振ります。
(補足:往復時の反転フレームに決めポーズを入れるとかっちょよくなります)
なんと言うことでしょう!(誇大広告)
左側のキャラクターに視線を誘導しつつ、その場でターンするだけのモーションが、まるでキャラクターが左右に大きく動いてるように見えますね。その上で最後に右側のキャラクターを画面中央手前に持ってくることで、次の視線誘導まで果たしてます。こういうのがカメラワークだと思います。
今回は視野角10で遠近感を潰しつつ、背景が大きく動く事を狙って……るように見えましたか?
偶然の産物だ( ゚Д゚)スマン、いつもテキトーなんだ
まぁ視野角はこういう使い方もあるよ、ということですね~。普段はなんも考えず「こんな絵が欲しい」「ここはこういう絵でつなぎたい」ってテキトーぶっこいて1時間ほどでカメラ付けてます。が! それでも視線誘導に関してだけは意識してます。自分がダメージ負うようなカメラを付けると後悔するからね!(頭痛になる)
6.まとめ
今回は一番簡単な「画面外に邪魔者を追い出せ!」「見ていたものの近くに次のターゲットを置け」という手段を執りましたが、他にもいくつか視線を誘導する方法がありまして。
- 人間は動くものを目で追う。
- 画面中央に大きく表示される物は目立つ=注視されやすい。
- 視聴者が予測した動きを裏切らない。
- 照明でアピール
などがあります。例えモーションが移動してなくても、カメラを動かす事で相対的に動いてるように見せる(前項で実際に錯覚させた奴)など、色々なやり方がありますな。
逆を言えば「見せたくない物は動かすな」とも言える。カメラワークは加減がめんどくさいかもしれない。背景も動きすぎたら目が疲れちゃうしね。
2番目は当然っちゃー当然。ただしこれは絵における消失点みたいなもので、構図などで画面隅を注視させちゃえばそこが画面中央みたいなもんです。ど真ん中の方が大きく表示できるから目立ちやすいってだけで、ど真ん中に拘る必要はないです。
3番目はかなり大事。「右に向かって動いてるんだから次の瞬間も右だろう」って予測=期待はなるだけ裏切らない。裏切っちゃうと視聴者は一瞬フォーカスを見失っちゃうので混乱=見辛いカメラになる。
なので予測できるように兆候を画面に出してあげる。S字のタメは「ここから方向転換しますよ」ってアピールにも使える。
あるいはダンスモーションの場合、振り付けに合わせて動きを変える。まぁこれは初めて見た人には意味がないんだけどね。それでも体の動きで「次はこう動く」ってのが予測できる場合、それに合わせてカメラ(焦点)の軌道が変化してもあんまり混乱しないと思う。さらにこれを応用すると「腕の振りに合わせてカメラがスパッと移動する」とかの演出になる。
4番目は演劇の常套手段。見て欲しくないものは照明外に、注視して欲しい人にはスポットライト。明るい物ほど目立って注視されやすいって事なのかな~?
この辺はどっかで識者が解説してくれてるんじゃないかな~。私は図解で示した程度の説明ぐらいしかできないや(´ω`)
私がどれくらい持論を実践できてるかは、前述の動画などを見て判断してくださいな。自分じゃこういうのはよくわからんからなー_(:3」∠)_
と、まぁ需要が一名確認できたのでカメラ補間曲線解説改め、カメラワークについての解説を記してみました。
最初は補間曲線だけ説明しようと思ったのだけど、結局「なんのための補間曲線か」を述べないと意味がないのでトータルなお話しになっちゃった。まぁサンプルGIFと投稿動画があるからなんとか分かってもらえるんじゃないかと思う。思いたい。
もしも、これを読んで役に立ったらコメントに残してくれると嬉しいなぁ(´ω`)
7.おまけ
基本的には無心でカメラを付けてる私が心がけてる、数少ない原則。
- 画面は変化させろ!(全く動かない画面は退屈だ)
- カメラは動かしすぎるな!(目が疲れる)
- 焦点の変更をする場合、視点を動かさなくても済むようにしろ!(目が疲れる)
※カット切り替えする時に意識するとかなり見やすくなるよ。
「こっちの絵の方が良い!」って思ったら自分の感性を信じた方が良い結果を生むことが多いと思う。あくまでもディレクターとしての心がけ、みたいな。脳内カメラマンが言うことを聞く聞かないはそのとき次第。Don't think, Feeeel!