VTuberや3D映画、ゲームなどで、まるで実際に人間が動いているかのように3Dキャラクターがなめらかに動いているのを不思議に思ったことはありませんか?

これはモーションキャプチャの技術を使って体(骨)の動きをデータ化し、さらにキャラクター側でも同様に骨(ボーン)と呼ばれるモーションキャプチャの動きを連携する部分の設定をすれば実現可能です。さらにBlenderを利用すれば、自分で作ったオリジナルのキャラクターを動かすことができます。

今回はこのように3Dキャラが動く仕組みから、Blenderでオリジナルの3Dキャラを作成する方法、実際に動かせるアプリケーションまで紹介します!

Blenderとは? Blenderでできること

Blenderとは、3Dモデリングやアニメーションの制作が可能なオープンソースのアプリケーションです。オープンソースのため、利用の規約を守れば誰でも無料で利用可能です。

Blenderの機能はとても充実しており、3Dキャラクターのモデリングだけでなく3D映画の制作もできます。
Blenderのアニメーション機能でも十分キャラクターを動かせるのですが、Blenderでモデリングしたキャラクターを他のアプリケーションと連携することによって、体の動きに合わせて動かしたりゲームに利用したりでき制作の幅が広がります。

またBlenderを使用するために推奨するパソコンのスペックがあるので気になる方は前回の記事をご覧ください。
【2023年版】Blender向けクリエイターPCの選び方 推奨スペックから考える

3Dキャラが動く仕組み

体の動きに合わせて動く仕組み

3Dキャラが動く仕組み図解

モーションキャプチャの技術を使って体(骨)の動きをデータ化し、さらにキャラクター側でも同様に骨(ボーン)と呼ばれるモーションキャプチャの動きを連携する部分の設定をして、双方の動きを連携することで3Dキャラが動きます。これは、骨(ボーン)の名前を一致させることで連携が可能です。

3DキャラのファイルはBlender側で出力し、このファイルとモーションキャプチャで取得したデータを連携するのが後述するアプリケーションです。

モーションキャプチャの方式と機器

モーションキャプチャには「光学式」「慣性式」「ビデオ式」などの方式があります。
複数台のカメラを利用する方法や体にセンサーを装着する方法などがあり、それぞれの方式でメリットとデメリットがあります。
モーションキャプチャの詳細はこちらの記事が参考になります。
モーションキャプチャとは?原理や活用シーンを種類別にわかりやすく解説

モーションキャプチャ専用の機器も販売されており、対応アプリケーションなどが記載されているので自分が利用したいアプリケーションに合わせて購入しましょう。
また、アプリケーションを利用するために必ずしも機器の購入が必要というわけではないので、アプリケーション側でどういった機器が必要か事前に確認しておく必要があります。

Blenderで出力するファイル形式

Blender側でモデリングした3Dキャラのファイルを出力する際はVRMと呼ばれるファイル形式で出力します。VRMファイルとは、2018年に発表された人型キャラクター・アバター専用の3Dモデルデータを取り扱うファイルフォーマットです。VRMが発表されるまでのファイルフォーマットでは、アプリケーションごとに合わせて修正を加える必要がありましたが、VRMを利用することで互換性をもたせることができ、他のアプリケーションで修正の必要なく同じファイルを利用することが可能になりました。(参考:「VRM」って何?どんなことができる?

Blenderではアドオンを利用することでVRMファイルの出力が可能になります。アドオンは無料で簡単に導入可能です。

3Dキャラを動かすためにBlenderで必要な作業

3Dキャラが動く仕組みが分かったところで、Blender側でオリジナル3Dキャラを作成するために具体的にどういった作業が必要になるのかをみていきましょう。

1.キャラクター作成(モデリング)

まずはキャラクターのモデリングを行います。
モデリングで特に意識すべきなのがポリゴン(3Dオブジェクトを構成する面)の数です。ポリゴン数が多い方が角のない滑らかなキャラクターになる反面、描画処理をはじめとした、さまざまな処理に時間がかかってしまいます。これにより、他のアプリケーション内での動作に影響を及ぼしてしまうため、アプリケーションごとに目安や上限の指定があります。
使いたいアプリケーションでどういった指定があるのか事前に調査して、自身の表現したいキャラクターとアプリケーション側でバランスの取れたポリゴン数で作成することを心がけましょう。

ポリゴン数比較画像
左「ポリゴン数:少ない」、右「ポリゴン数:多い」

2.色付け(テクスチャ、マテリアル)

キャラクターのモデリングが完了したらキャラクターに色をつけます。
単色のマテリアルの場合は必要ありませんが、髪色や服の色を装飾したいという場合は、UV展開をして色を付ける必要があります。
UV展開とは図の左側のように立体を平面にすることです。UV展開を行うことで3Dキャラに絵を書くように色が塗れます。

UV展開の画像

3.ボーンとキャラクターの連動(リギング、スキニング)

ボーンとキャラクターを連動させることをリギングといいます。
VRMアドオンで用意されたボーンを利用し、キャラクターの形にボーンを合わせていきます。

VRMアドオンで用意されているボーン
オレンジのワイヤーがVRMアドオンで用意されているボーン

キャラクターにボーンを合わせたら、ボーンの動きにキャラクターがついてくるよう調整していきます。これがリギングの仕上げとなるスキニングと呼ばれる作業です。

ウェイトペイントモードでの修正画面
足の動きに連動して上着がめくれてしまっているのでウェイトペイントモードで修正

またスカートや髪などの揺れものの設定を行いたい場合は、別途ボーンを追加する必要があります。

4.顔の表情設定(シェイプキー)

顔の表情もVRMファイルフォーマットで組み込むことができます。
母音やまばたきや怒りなどの設定項目があるので、3Dキャラを変形して表情を登録していきます。

シェイプキー設定画面
シェイプキー設定箇所

5.VRMファイル出力設定

VRMファイルを出力するために、スカートや衣服の揺れなどを表現する揺れものの設定、動いたときに髪の毛などが体を貫通するのを防いで不自然な表現を是正する衝突設定などを行います。

設定が完了したら、VRMファイルをエクスポートすれば完了です。

VRMファイルエクスポート画面

Blenderのオリジナル3Dキャラを動かせるアプリケーション

続いてBlenderで作成したオリジナル3Dキャラを動かせるアプリケーションについて紹介します。

先述したように、VRMファイルが利用できるアプリケーションであればBlenderのオリジナル3Dキャラを動かすことが可能です。またVRMに対応していないアプリケーションでもBlenderではFBXなどの3Dファイルフォーマットにも対応しているので利用できるアプリケーションの幅は広いです。
ここではVRMファイルに対応した有名なアプリケーションの一例を取り上げます。

動画配信『3tene』

動画配信アプリケーションに3teneなどがあります。
こういったアプリケーションを利用することで、体の動きに合わせてリアルタイムでオリジナル3Dキャラを動かすことができVTuber活動もできます。

ゲーム制作『Unity』

Unityを利用すればオリジナル3Dキャラを使ってゲームを制作できます。

メタバース『VRChat』『Cluster』

有名なメタバースプラットフォームにVRChatClusterがあります。
メタ空間で交流を深めたり、企業や団体のイベントを開催したりできます。


こちらで取り上げたもの以外でも多くのアプリケーションでVRMファイルの利用が可能です。
その他利用できるアプリケーション一覧は以下のサイトに記載されています。
VRMファイルが使えるアプリケーションは?

Blenderのオリジナル3Dキャラを動かしてみる!

今回は揺れもの設定なし、シェイプキー設定なし、マテリアル単色の最小構成のオリジナル3Dキャラを作成して動かしてみました!
動かすアプリケーションは3teneです。3teneは3teneFreeとして無料版が用意されており、ウェブカメラやパソコン内蔵カメラがあれば、顔や上半身の傾きが3Dモデルに反映されるフェイストラッキング機能が利用できます。それ以外にデフォルトで用意されているモーション機能もあるので、今回はこちらを使用して動かしてみます。

3teneFreeをインストールして、BlenderでエクスポートしたVRMファイルをインポートします。
+ボタンをクリックしてファイルを選択するだけでインポート完了です。

3teneのVRMファイルインポート画面

前回の記事でも登場した弊社出版書籍キャラクター、コンテナおじさんにモーション機能でダンスを踊らせてみました。

コンテナおじさんが躍る画像

キレッキレに踊っていました。ただ頭が大きいので腕が貫通してしまいます。
髪や服の貫通設定はできますが、腕と頭の衝突はどうしようもないので頭の大きいキャラクターを作成するときは要注意です…汗

おわりに

オリジナル3Dキャラクターが実際に動かせるなんてワクワクしますよね!
Blenderを使えばオリジナルのアバターやキャラクターを3D空間で使用できるようになり、イベントや動画配信に利用できるなど活動の幅が広がりそうです。
さらに一度オリジナル3Dキャラを作成してしまえば、さまざまなアプリケーションで使いまわせるのも魅力です。

また初心者の方は、一度コンテナおじさんのような最低限必要な設定で出力して動かしてみると流れが分かって作りこみやすくなると感じました!