VRChatでworld製作
もくじ
TUKIKAGEカフェ
VRChatにてworldを製作・公開しました。川原由美子のコミック作品『TUKIKAGEカフェ』に登場する喫茶店の再現・二次創作worldです。このworld製作についての四方山話・感想をまとめておきます。
TUKIKAGEカフェ -Moonlight Cafe- by 藤あさや TouAsaya
SF系集会イベ会場を作りたかった
当初、作るつもりでいたのはSF(Sci-Fi)について雑談集会のできるworldで、クラークの『白鹿亭綺譚』をモデルにするつもりでした。ところが白鹿亭は英語版の表紙こそ巨大タコが絡んでいたりしますがぱっと見の建物としてはありふれたバーという設定で特徴を出すのが難しそうです。そこで方針転換。私にとってのSFジャンルのビジュアルならば加藤直之、佐藤道明、そして川原由美子です。VRChat内の漫画紹介イベントで『TUKIKAGEカフェ』を紹介したりfriendに推して良い手応えが得られていたところでもありました。
ならば、『TUKIKAGEカフェ』をSF集会の会場にしてしまおう! となりました。
原作再現ポイント
二次創作として再現してみたポイントは以下の通り。
- ながいながい下り階段
- 「アイスクリームみたいな」月を象った建物
- 階段に踊り場があること
- カフェ室内は東洋の香り漂わせたい
- 背景でイメージ的に登場した蝶・花をどこかに盛り込む(天の月の影)
原作にはない要素は、
- 月の見える天窓(原作には窓がないと明記されている)
イベント会場として
一方でイベント会場としての機能も必要です。
- ひとつの輪になってトークンを渡しながら会話
- 進行している話題リスト表示
- 自身の姿を確認する鏡
- 筆談具
- イベント中負荷が軽いこと
こんな要件を満たせれば良いと思ったのでした。
実製作
二次創作worldとはいっても原作『TUKIKAGEカフェ』はデテールは細かに描かれる部分と少女漫画的、あるいは中国絵画のように幻想的なイメージに寄せて描かれている部分とに大きく分かれ、3D構造物化では自由度の大きな作品です。というわけで
ビルとビルとビルビル
ばっかりの谷間に
アイスクリーム
みたいなカフェ
ながいながい
階段をくだって
たどりつく山頂川原由美子『TUKIKAGEカフェ1』朝日新聞出版社p.6-7より
のような描写や印象的なカットを頼りに、具体的な形は想像で補い作ることにしました。
また、VRChatのworld製作は実質的に初めてです。技術的な課題を決めて取り組むことにしました。
- blenderを使いたい
- unityの一般的なworld要素は一通り使ってみよう
- アニメーションやインタラクションする機能は外部アセットに頼ろう
を基本に据えました。具体的には
- 月を象った球形の建物のアセットなどないので自作
- Light Map、Light Probe、Reflection Probe等の動作の軽量化&ライティング要素を一通り使おう
- worldペン、鏡、テレポーター、椅子といったSF集会イベ用の機能を揃えよう
- ボリュームライトがかっちょいいのでひとつは使おう
- 自作小説も置きたい
がTo Doとなりました。
world作りに当たっては、VRC哲学カフェのworld自作&イベ運営されているまさきさんの『設計からUnityまで はじめてのワールド作り』やtiwaさん主催の『World Creator's Cafe』イベントが大きな力になってくれました。またunity公式のマニュアルも日本語化されていて使いやすいです。具体的な調べ物はほぼ公式マニュアルで片付きます。
課題詳細
blender作業
モデリング自体はコミPo!用にmetasequoiaをいじっていたり、VRChat用にアバターを自作していたこともあって作業量と造形センスの不足くらいしか問題がなかったです。blenderこねこね、楽しいです。
基本のライティング
まずはライティングを調整しておかなければ始まりません。worldの見た目の大半が決まるライティングは説明しづらいですが、現実で写真を撮る時のライティングと近いです。大雑把に作業手順を並べると、
- とりあえずメインになるdirectional lightを置く
- 一番暗くなる影となる場所の明るさをskybox、environment lightingで決める
- ダイナミックなdirectional lightは一個は置く(おまじない)
- point lightやspot lightを配置して明るく照らす場所を決める
暗い場所の明るさを最初に決め、明るい場所を作ってグラデーションやコントラストを調節する感じです。
Light Map
unityのライトマップ機能はworld制作では必須に近い機能です。動的なライティングを最小にして、静的(static)なライティングをメインにすることでworldの描画負荷を下げることができます。陰影をあらかじめ焼き付け――ベイクする機能です。ライトマップはパラメーターも多く、初めてunityで扱うとなれば手探りになります。「ライトマップってなんなの?」というところから呑み込まないといけないのでけっこう面倒くさかったです。
Light Probe
ライトプローブは「ライティングを静的にしちゃったらアバターの照明がどこでも一様で雰囲気できない」を解決する機能です。worldに設置した静的な照明をアバターを始めとした動的(dynamic)な物体に反映させるためのもの。屋外と屋内で明るさに差があるようなworld、全体が薄暗くて点々と照明が存在するようなworldに効果的なようです。目的がわかっていれば作業は簡単。
Reflection Probe
これは製作するworldによって要不要が大きく分かれます。ツヤテカの金属や映り込みの欲しいガラスがあるならばぜひ設置しましょう。ツヤテカの部分に周囲の景色を写し込むための機能です。pick upできるワイングラスなんかは周りの景色が映り込むとすっごく格好良くなります。公式マニュアルにとても役立つことが書いてあります。
自作小説・青空文庫システム
これは別記事『VRChatの青空文庫システムで自作小説をworldに置こう!』にて細かく説明しています。テキストファイル相当の容量+8MBで、自worldに縦書き日本語電子書籍が置き放題になるアセットです。イラストや横書きは不可。本来は青空文庫の16000以上の作品を置くためのものです。
oculus quest版
今回のworldはquest版も製作しました。といっても作業は、
- ボリュームライティングの削除
- 画像データの低解像度化&ASTC圧縮化→参照:VRChat Questのテクスチャ形式はASTCにしよう - おめが?日記_(2) (hatenadiary.jp)
- シェーダをquest推奨VRChat純正シェーダに
- 青空文庫システムの画像データ圧縮形式再指定
だけです。
To Do
- パーティクルを使った演出
- 屋外の低い場所に霧を這わせたい
- オブジェクト数が100近いのを数個にまとめ、テクスチャもアトラス化したい→MeshBakerのセール待ち
- 楕円軌道リングのアニメーション解説モデルの仕込み
使用アセット一覧
まとめ
最初にworldをprivate登録したのが2021年の1月。当時はまだ白鹿亭を作るつもりでした。具体的な作業に入ったのは6月。機能は新造せず既存のものを利用し、見た目を整える範囲の作業だけしたこともあって楽しめましたし、unityの機能を調べるのも面白かったです。
| 固定リンク