CGのキャラを今より本物っぽく見せるために必要なこと

もう皆考えてるかやってることだと思うけど、結論から書くと、

  1. 重さの表現(慣性の表現)
  2. 実際のカメラで撮影したようなエフェクト
  3. 非CGのキャラや物体との整合性

とりあえずこれらが必要だ。以下、説明を試みる。

1.重さの表現

人間の目は実に簡単に騙されるが、意外と正確な面もある。

たとえば人の目は、物体の動きから重さ(や固さ)を推定することができる。具体的には、重〜い荷物を本当に運んでいる人と、軽い荷物を重そうに演技して運んでいる人を見分けることができるということ。

んで、見た目は重そうなのに、重量感が感じられないフワフワな動きをしている物体を見ると「なぁんだ、ハリボテか」とか「偽物か」とすぐに判ってしまう。

現代のCG映像は十分緻密(ハイデフ?)になった。それでも未だに違和感がある原因の一つは、この『重量感の欠如』にある。巨大な物体になればなるほど、重量感の欠如が致命的な偽物感として表れる*1。また人間程度の大きさの物体でも、走る、飛ぶ、踊るなど、何らかのアクションをした瞬間に違和感が生まれてしまう。

解決策は、CGの物体の動きはすべて物理演算で表現すること。

これだけで「そこに実際に物があって動いてる感」がもの凄く増す。はず。

2.実際のカメラで撮影したようなエフェクト

世の中に流布する『実写映像』は、基本的にカメラで撮影されたものである。

なので、CGの動画を作る際にも、本当にカメラで撮影したときと同じようなエフェクトを擬似的にかけることで、現実感が増すことになる。はず。

振動、ピンボケ、光線の表現、CGの物体とカメラの距離に応じた空気分子の影響などなど。具体的には、CGのキャラを撮影したカメラが飛行機に搭載されている…という想定ならば、飛行機の運動に応じた振動(手ブレ)の表現を入れる*2。また、CGの物体が巨大で遠くにある想定なら、若干霞がかかったようにする、など。

3.非CGのキャラや物体との整合性

全部CGで作る場合は特に考慮しなくてもOK。

問題はCGではないものとCGを合成する場合。CGの物体の位置や運動と、想定されるカメラの位置や運動を綺麗に一致させる必要がある。これは最近ではそんなに難しくないのかも。アメフトやゴルフの中継では、CGの線がリアルタイムで実写映像に重ねられてるし、ARの領域では特徴点抽出の精度も上がってるみたいだし。

また特殊なケースとして、手描きのアニメとCGのキャラを合成する場合は、CGの更新頻度を、手描きの絵のコマ数と同じに揃えた方が違和感が減じるのではないかと思う。秒間10コマなら、CGも10コマに落とす。

ついでに、CGキャラの各部位の動きの量を直前のコマと比較&計算して、変位量に応じて(=速く動いてる部位には)ゴーストやブレなどの絵的表現を足してやる。と、ここまですれば、たとえアニメと合成してもかなり違和感の少ないCGのキャラクターや物体ができると思う。

まとめ

CGのキャラを今より本物っぽく見せるためには、

  1. 物理演算する
  2. 実際にカメラで撮ってるつもりで映像を加工する
  3. CG以外の周りの環境に合わせる

映画でもゲームでもアニメでも、CGは今よりもっとリアルになれるはず。

*1:映画ロー○・オブ・ザ・リングの巨大な怪物とか酷く軽そうだったな…

*2:これは映画スカイ・クロラがなかなか上手かった気がする