背景アーティストのぶろぐ

UE4やら、Substanceやら、Zbrushやらいろんなソフトを触ったことについて色々書く。

図書館のインタビュー(日本語原文)

ここ数ヶ月かけて作成した図書館のシーンをアップしたところ、たくさんのリツートやいいねを頂きました。

たくさんの反響をいただけて嬉しいです。ありがとうございます。

 

更にうれしいことに80lvというアーティストのインタビュー記事を載せている海外のサイトから

図書館についてインタビューをして頂きました!!!

 

How to Build Oxford Library in UE4?

 

すごい方々もインタビューの中でワークフローを紹介しているのですが、

その中に混じって良いのですかと…。

結構やってることしょぼいですよ… という感じですが、なかなかない機会なのでお受けすることにしました。

 

サイトには英語で記載されていますので、

こちらには編集さんに送った記事の日本語を掲載したいと思います。

(ちょっと日本語固めなのは翻訳しやすいような感じで書いたため…)

 

【追記2016/.9/01】

Gumroadにてオックスフォード図書館のプロジェクトデータを$1+で販売しております。

簡単な技術解説もついてますので、興味ある方はどうぞ。

【Gumroad】Oxford Library - UE4 Project

 

f:id:sinocof:20170224234024p:plain

 

自己紹介

私は専門学校で1年間CGを学び、それからゲーム業界で10年ほど働いています。初めは制作プロダクションで外注として様々な仕事を5年間ほどおこないました。クライアントの企業に出向し、開発の中で制作する機会も多くあり、Street Fighter 4, Bayonetta, Vanquish, final fantasy 零式PSP版)などの背景を制作しました。その後サイバーコネクトツープラチナゲームズに入社し、ScaleBoundの開発初期段階に参加しました。今はフリーランスとして働いています。

 

サイバーコネクトツープラチナゲームズでは、背景アーティストでありながら、マネジメントや技術検証を行うことがおおく、ほとんど制作を行っていませんでした。しかし、開発の中でワークフローやパイプラインを構築する立場にいたので、これまでの知識を生かして自分の作品を作りたいと思いました。

 

図書館の背景について

私は会社で働いていた間にポートフォリオとして公開できる作品を作ることができなかったので、開発を通して得た知識を使って自分のアートワークを作成したいと作品の制作を開始しました。

 

制作の一番の目的はポートフォリオとして出せるものを作るということです。

また、SubstanceDesigner&Painterを使った最新のワークフローを自分の中で確立させることも目的としました。

 

アート的な部分で自分のスキルに自信がなかったので、友人であるコンセプトアーティストのYap Kun Rongに協力をお願いしました。彼とはプラチナゲームズで同じプロジェクトで働いていたので、彼をとても信頼していました。

彼は快くこの依頼を受けてくれたので、一緒にどのようなものを制作していくか考えました。

 

f:id:sinocof:20170224234126p:plain

f:id:sinocof:20170224234131p:plain

題材を決めるときに重要視したのが完成できる題材を選ぶことです。彼にコンセプトアートを描いてもらい作成することも考えましたが、オリジナルデザインより実在するものをベースに作成してく方が難易度は高くありません。彼には必要なものがあれば描いてもらうようにし、それ以外は写真をベースにイメージを固めていくことにしました。

 

シーンのモックについて話してください。なんのソフトを使用しましたか?シーンの要素を作成するのにどのようなアプローチをとりましたか?

図書館のシーンのレンダリングはUE4,

モデリングはMayaとZbrush,

テクスチャはSubstanceをメインで使用し、デザインなどを作成するときにPhotoshopを時々使用しています。


まずこの図書館のシーンはベースとなるイメージの写真があります。

f:id:sinocof:20170224234148p:plain

これはBodleian Libraries University of Oxfordの写真です。この写真を見たときにこの雰囲気をベースに制作しようと決めました。他にも様々な図書館の画像を集め、装飾や構造などを考えながらイメージをさらに固めていきました。

 

集めた資料を参考にMayaでホワイトボックスを作成していきました。モジュラーアセットを作成し、Maya上で配置して空間を制作していきます。この段階ではあまり細かくモジュラーアセットを分けずに柱、床、本棚程度の機能的な単位で分けて作成し、インスタンスで配置していきます。Mayaで組んだメッシュすべてを一つのFBXで書き出し、UE4へインポートしてから軽くライティングを当てて空間のサイズが妥当かどうか、ヒューマンスケールに対して適正かどうかの判断をしました。

f:id:sinocof:20170224234200p:plain

Mayaで作成したホワイトボックス


少し調整したら問題ないことが分かったので、パーツ事にUE4にインポートし、同様の空間をUE4で組んでいきました。この段階で配置しやすい単位にモジュラーアセットをさらに調整していきます。

そこからシーンに必要なプロップのブロックアウトを作成しさらにイメージを固めていきます。題材として図書館と決めていましたが、細かい時代設定などはまだ固まっていませんでした。モックがある程度出来上がった段階でYapと話し合い、このシーンは1950年代ごろに設定することにしました。この設定を決めたことで照明や机の上に配置してある小物などは焦点を絞って資料を探すことができました。

f:id:sinocof:20170224234210p:plain

UE4でのホワイトボックス


ホワイトボックスの段階ではディテールがあまりなく全体の情報密度のバランスがわかりにくかったので、グレイボックスの段階でメッシュにディテールを追加して全体の密度を上げていきました。柱やアーチ部分に凹凸が入ることで、そこに影が落ちるようになります。これでこのシーンの印象がよくなり、完成のイメージが見えてくるようになりました。


全体の雰囲気がこれで固まったと思ったのでアセットの制作を開始しました。

f:id:sinocof:20170224234221p:plain

グレイボックスの状態


このときに私は一つ失敗をしていました。グレイボックスの段階でメッシュにもう少し正確なテクスチャの色を割り当てておくべきだったと今は思います。画像を見てわかるようにほとんどのメッシュに茶色を割り当てていましたが、実際に作成したテクスチャの色はもっとダークです。UE4のライティングはBaseColorの色が大きく影響します。BaseColorが明るければ間接光の影響でシーンは明るく、暗ければシーンも暗くなります。私は早く制作がしたかったのでこの工程を適当にすましてしまいました。

その結果、テクスチャが入っていったときにシーンの印象が変わっていきました。グレイボックスの段階でもう少し正確なテクスチャの色を割り当てておく、もしくはSubstancePainterなどを使って簡易でもテクスチャを割り当てておくということをしておく方が安心して制作を進めることができます。また、より早い段階で完成の印象を確認することができるので必要な手順であったと思っています。

 

どのように3Dモデルを作成しましたか?いくつの要素を作らなければならなかったですか?どのようにアセットらを最適化したのですか?

種類を増やせばそれだけ雰囲気づくりをすることができますが、必要以上に制作をすることは避けたかったので必要な要素を洗い出すために特定の構図を決めて、それに合わせて必要なものを作成することにしました。

グレイボックスからある程度制作が進むと足りない要素が見えてきます。そこで完成に向けて必要な要素の洗い出しを行うことにしました。

 

この2枚の画像は洗い出しを行う数日前と後のショットです。

簡単に実装でき、絵を完成に近づける要素を先に追加しました(例えば金色の文字や、本をすべて本棚に入れる、天井に緑色のパネルを追加するなど)。それでも足りないものを追加のアセットとして制作しています。また、DirectionalLightの向きも少し調整しました。この一連の作業はYapと一緒にお互いに意見を言いながら行いました。彼からのアドバイスは非常に的確で、構図に合わせて絵のポイントとなるものを指示してくれました。

f:id:sinocof:20170224234235p:plain

f:id:sinocof:20170224234241p:plain

上:調整作業前の状態 下:調整作業後

 

次に動画用のカメラワークを決め、カメラに合わせてアセットの配置を行いました。
カメラからのアングルのみクオリティを上げていくことに専念することができるため、すべてを作りこむ必要はなくなりました。

このシーンはゲームとして作成していたものではないのでシーン全体を軽量化するような最適化はほとんど行いませんでしたが、効率的に制作できるように心がけていました。

マテリアルはマスターマテリアルを作成し、ほとんどのアセットで使用しています。

リフレクションに変化を与えるためにノーマルマップに雲模様のゆがみを追加したこと以外変わったことは何もしていません。

f:id:sinocof:20170224234301p:plain

使用したマスターマテリアルの処理

 

図書館なので書籍が大量に配置されているわけですが、本棚に配置されている本のメッシュデータは2種類のみです。本のデザインと色をマテリアルで変更できるようになっており、これでバリエーションがあるように見せています。また、配置に関しても本の厚みや位置、色をランダムに生成し、整頓した感じがなくなるようにしました。

f:id:sinocof:20170224234312p:plain

f:id:sinocof:20170224234330g:plain

 作成した本を配置するBlueprint


私はBlueprintを組む経験が浅く、作成するのに時間はかかりましたが、配置する作業コストは非常に少なく、簡単に様々なパターンで配置することが可能になりました。

ブループリント内ではInstanced Staticmeshを使用することでシーン内のドローコールを抑えることができ、エディタでの操作が重くなるという問題もなく大量の本を配置することができました。

ランダム感を出すために本の厚さ、配置の位置などがランダムになるようにしています。

本で使用しているマテリアルにメッシュの位置情報などから色のバリエーションを作成する処理を組んでいたので、ブループリントからパラメータをいじれるようにし、色のバリエーションをコントロールできるようにしています。これにより本の色だけではなく、1冊ごとの色の違い、本のデザインの切り替えが行えるようになっています。


※注釈

Instanced Staticmeshを設定してなかったときに本を配置したらエディタが激重になってめっちゃビビったのであった…。

f:id:sinocof:20170224234434p:plain

 

アセットについて

シーンを見てわかると思いますが、この図書館の中に複雑な構造を持つアセットはありません。そのため、ほとんどのアセットのハイモデルはMayaで完結することができました。細かいディテールはすべてSubstanceで追加することができるのでハイモデルは形状を制作するだけで済みました。 Mayaで作成するのが面倒なものは、Zbrushに持っていき必要な形状を作成しました。

f:id:sinocof:20170224234451p:plain

Mayaでベースを作成し、Zbrushで調整したハイモデル


SubstancePainterでメッシュデータのテクスチャをベイクし、それぞれの質感を作成しています。テクスチャを制作する時は多くの資料を見ながら行いました。特に気を付けていたのはどこにどのような汚れがはいるのかという点です。

f:id:sinocof:20170224234503p:plain

 

マテリアルについて

このシーンでは2種類の木のテクスチャを使用しています。

主に図書館の構造部分で使用しているものと机や椅子などの小物で使用しているものです。

構造部分で使用しているテクスチャは一番初めに作成したテクスチャであり、SubstanceDesignerを使ってどのようにテクスチャを作成していくか模索していた段階でした。手っ取り早く質感を入れたかったので、Bitmap2Materialで写真素材から木のテクスチャのBaseColor、Normal,Roughnessを作成し、これらの素材をSubstanceDesignerで調整してから使用することにしました。

f:id:sinocof:20170224234526p:plain

f:id:sinocof:20170224234531p:plain

Bitmap2Materialから作成したテクスチャをベースにSubstanceDesignerを調整した木の質感

 

プロップで使用しているのはSubstanceShareで配布されていたPlankWoodBase_Bという木のマテリアルです。私はこれに少しカスタマイズを加えて使用しています。このマテリアルには様々なパラメータがセットされているので、アセット事に質感のコントロールがしやすくなっています。

このシーンで使用したテクスチャの多くはすでにSubstanceに入っているものやSubstanceShareなどから得たものがほとんどです。それらを自分のイメージにあわせて調整したものを使っています。

 

ライティングについて

ライティングについては、UE4のマーケットプレイスにあるLightroom:Interior Day Lightを参考にしています。

このシーンでは窓の外に白い板を配置し、スポットライトで光を当て、反射光で室内をライティングしています。図書館も同じように、シーンにある4つの窓の外に強さや色を調整したライトと板を配置しています。これにより環境光による柔らかなライティングを表現することができました。

f:id:sinocof:20170224234600p:plain

反射光を利用したライティングのみの状態

 

DirectionalLightを有効にするとこのように窓からの夕日の直射光が追加されます。DirectionalLightだけではシーンに綺麗に間接光を入れることができなかったため、上記手法を取りました。

f:id:sinocof:20170224234618p:plain

DirectionalLightを追加した状態

 

更に、柱やアーチの部分にスペキュラを入れるためにスポットライトを当てています。CastShadowをつけるとDirectionalLight以外に不自然な影が入ってしまうため、Offにしてあります。その結果光が当たらなくて良い箇所にもあたってしまっていますが、その問題はそれほど重要ではなったので対処しなかった。


しかしこの問題はUE4.11から追加されたライティングチャンネルを使うことで回避することができます。

f:id:sinocof:20170224234632p:plain

スペキュラ用ライトを配置した状態

 

ライティングとあわせて気を付けていたのはリフレクションです。

シーンにはリフレクションキャプチャを多く配置しています。シーン全体が薄暗く、机や床など反射する素材の面積は非常に大きいので、各机にリフレクションキャプチャを配置しました。SSR(Screen Space Reflection)はあまり綺麗ではなく、リフレクションキャプチャを多く配置することできれいに反射を見せることができたので今回は使用していません。

 

このシーンはメッシュの形状がシンプルであるため、フラットなリフレクションによりCGぽさが出ていました。この問題を解決するためにノーマルマップに雲模様のノーマルマップを重ねてゆがみを加える処理をマスターマテリアルに追加しました。これによって広い面積にリフレクションの変化が生まれたことから自然な感じを出すことができたとおもいます。



※補足

本来この処理は軽くするなら各テクスチャのノーマルに入っていた方が処理が軽く済むのでよいかもしれませんが、後からゆがみを入れたいと思ったのでマスターマテリアルに追加する方法をとりました。

f:id:sinocof:20170224234653p:plain

 歪みノーマルマップなし

f:id:sinocof:20170224234705p:plain

歪みノーマルマップあり

 

アドバイス

より早く効率的にシーンを作成する方法として最も最適なのはホワイトボックス、グレイボックスに時間をかけることです。制作はじめのころは早くアセットをつくりたいのでこの工程を簡単にすましてしまいがちですが、じっくり取り組むことで無駄な工程の多くを省くことができたと思います。

 

私は2Dの絵を描かないのでコンセプトアートやスケッチなどを用意しませんでしたが、写真資料と堅実に作られたホワイトボックス、グレイボックスはそれ同等の価値があると感じました。今回は明確なゴールを示す写真がありましたが、それがないオリジナルのシーンであれば、簡単なスケッチを描いてから同じ手順でおこない、グレイボックスで完成イメージが見えるように作業を進めると思います。

f:id:sinocof:20170224234722p:plain

f:id:sinocof:20170224234740p:plain

また、恥ずかしい事ではありますが、この作品は私の個人作品として初めての背景でした。初めて何かを行うときは非常に時間がかかります。しかし、2回目からは工程やコツがわかっているので早く行うことができます。急いで作成することがすべてよいとは限りません。初めはじっくり取り組み、次から効率よく制作する方法を見つけていくと思えば気持ちは楽になります。

実際、私は制作中は焦りや不安など孤独感も強くありましたが、こう考えることで前に進むことができました。常によりよい方法はないかを模索しながら作業をしていくことで次第に効率やクオリティも上がっていくと思います。