見出し画像

TiltBrushに動きを付けてUnityのワールドに登場させる

はじめまして。clusterワールドクリエイターYamamori_Kimchiです。
普段はグラフィックデザイナーとして活動しており、プログラミングやソフトウェアに特別強いわけでもなく、日々勉強して頑張っております。Unity歴1年もないので色々間違えているかも?

この記事ではTiltBrushデータをclusterにアップロードすることはできている方向けに説明を行います。また、現時点でわたしが確認している制作方法ですのでもっとスマートなやり方があるかもしれません。ご一報いただければ追記したいと思います。わたしが利用したウェブサービスも併せてご紹介しますがご利用は各自の責任の範囲でお願いします。

TiltBruhで制作したキャラクターを
生き生きと動かしたい

建物など環境物、いわゆる静物を制作する分には公式案内(https://creator.cluster.mu/2021/06/17/tilt-brush/)の内容で十分楽しめますが、あなたがロボットやキャラクターなどを描いた場合そのキャラクターを動かしたい…そう思うのが自然かと思います。わたしが実際に行った手順を公開しますので是非試してみてください。

【TiltBrushパート】

あなたがいつも描いているように制作してください。実験はしてませんが、グループ化などはあまり関係ないかもしれません。

Tポーズで描く

お好きなペンで手を広げている状態のキャラクターのみを描いてください。背景などを入れてしまうと認識しません。背景などは別ファイルで描き、Unity上で合成することになります。

向きや大きさは厳密でなくても大丈夫

大きさはUnityで配置する際に変えることが出来ますのであまり気にせず。この後、描いたキャラクターに骨付けを行う関係から、キャラクターの向きは床の■に対して真っすぐになるようにしてください。どの辺に向かっていても大丈夫ですが角に向いているとうまく骨付けできないかもしれません。

いつも通りにエクスポート

エクスポート機能により、glbファイルで書き出してください。

【mixamoパート】

Adobe mixamo(https://www.mixamo.com/)を利用して「自動骨付け」と「ポーズ付け(アニメーション)」を行います。Adobeにメールアドレスを登録していれば無料会員でも利用できるサービスです。ブラウザ上で完結しますのでインストールなどは不要です。魔法のような時代です。開発者に感謝。

GLBをOBJに変換

ところが困りました。glb形式そのままではインポートが出来ません。mixamoが対応している形式にファイルを変換しましょう。わたしは検索から出てきたこちらのサービスを利用しました(GLBをOBJに変換する オンライン フリー - GLB OBJ 変換 (anyconv.com))。わたしの環境ではFBXではエラーが出てしまったためOBJへ変換しています。

モデルのインポート

変換ができたらmixamoにログインし「UPLOAD CHARACTER」からファイルをアップロードします。

後ろを向いている。←→をクリックして正面を向かせよう。

自動で骨付けを行う

自動で骨付けを行わせるために、写真を参考に各パーツを指定します。
※このモデルは、手の向きがよろしくなかった。手の平が地面に向くようにした方がよいでしょう…。

CHINは顎です

「Use Symmery」のチェックを外せば左右非対称に設定できます。またSkeleton LODのプルダウンから指の有無が選べます。
NEXTを押すと2分ほどで…キョロキョロ動き出します(感動!)

モデルに破綻する部分があった場合は再度パーツを指定しなおすとよいでしょう

あとはお気に入りのアニメーションをパネルから選び「DOWNLAOD」からFBXで保存しましょう。オプション選べますが、あまり変わらないような…念のためForUnityにしておきましょうか。

【Unityパート】

FBXになったモデルを、Unityのプロジェクトに追加します。ここら辺は場当たりに解決しています。自信はありません!なお、cluster CreatorKitやTiltBrush toolkitは導入済みの想定で進めます。

プロジェクトに追加

fbxをプロジェクトに追加したら、画像を参考にinspectorから設定をいじりましょう。

Legacyに変更することでマテリアルを分離させます。「Apply」で反映されます
もし配置して小さく表示されたりする場合は、ここのScaleを上げるとよいでしょう。「Apply」で反映されます
チェック入れておくとループします

ワールドに配置する

ワールドに配置します。アニメーションが反映されてないので、配置したキャラクターに「=▲」ファイルをドラッグアンドドロップしてぶつけます。

アニメーターファイルが生成されて、動くようになります。
キャラクターについているAnimatorコンポーネントのApply Root Motionにチェックを入れておくと、キャラクターのいる位置でアニメーションが再現されるので好きな位置に移動できます。
キャラクターのテクスチャは変更できる。TiltBrushテクスチャを複製して改変したり、色々試してみると面白いよ(名前付けやフォルダ分けなど整理整頓が大事/わたしはできてない)

これらの作業で、ご自分で描いたTiltBrushキャラクターが動くようになりました。表現の幅が広がって楽しいですね。
作品見本として、先ほどの羊たちを躍らせたワールドをご紹介します。
チョコ&ホイップ、羊のダンス。|メタバースプラットフォーム cluster(クラスター)

余談。
TiltBrush Toolkitを介さずに直接mixamoに入れているあたりに、改善点はありそうです。
発展として、mixamoを経由して制作したキャラクターにはHumanoidのボーンが設定されていますので少し手を加えればアバターにもなるかもしれません。意外となります。

それではよいclusterライフを!


この記事が気に入ったらサポートをしてみませんか?