本日はUnityArtEngineの調査枠です。
〇UnityArtEngineとは?
[Unity ArtEngine]はUnityが提供するアーティストやグラフィックエンジニアのためのツールです。
ArtEngineはUnityによって提供されているUnityStationのYoutube動画で概要に関して解説がされています。
以下は筆者のまとめです。
近年のハードウェア側の進化に合わせて3DCGはより高質に、リアルになっていきましたが、それに合わせてグラフィックエンジニアの作業工数や時間は膨大になっているという問題があります。
UnityArtEngineではディープラーニングを用いて、膨大なパラメータで素材を編集する従来のプロシージャルなツールではなく素材に合わせ手法を変化させ最適な処理を行うツールとして生まれました。
導入に関しては過去の記事を参考にしてください。
〇写真からマテリアルを作成する。
前回は[Seam Remover]ノードを使用してシームレスなテクスチャを作成しました。
今回はさらに高度な使用を行います。
①UnityArtEngineを起動します。
②ArtEngineに素材となる写真をインポートします。
今回は近所の公園で撮影した地面の写真を使用します。
③ワークスペースに配置します。
当然といえば当然ですが、処理前の状態ではシームがはっきりしてしまっています。
④[Hue/Saturation]ノードおよび[Crop]ノードを追加し、接続します。
[Hue/Saturation]ノードで色相を合わせ、[Crop]ノードで画像のゆがみを解消します。
⑤[Gradient Removal]ノードを追加します。
このノードでは画像全体のグラデーションを削除し、画像同士がタイリングされた場合滑らかに見えるように処理します。
⑥[Seam Removal]ノードを追加し、シームを削除します。
この処理によってシームが削除されますが、画像を事前処理していることもあり、よりタイリングした際に滑らかになるようにテクスチャが生成されます。
⑦[Mutation]ノードを追加します。また[Compose Material]ノードをつなぎマテリアルを構成します。
[Mutation]ノードはテクスチャの特徴からオリジナルの特徴を残しつつrandomな画像を生成します。
⑧[Solid Color]を[Compose Material]ノードの[Metalness]および[Roughness]つなぎます。[Roughness]には[Invert]で逆数をつなぎます。
最後に[Material Generation]ノードをつなぎマテリアルを生成します。
⑨これで処理が完了します。[Output]ノードをつなぎ画像を書き出します。
今回は次のようなテクスチャが完成しました。
以上で写真からUnityで使用できるマテリアルが完成しました。
Untiyで実際に使用すると次のようになります。
タイリングの値を10にしていますが全くタイリングされているとわからない見た目になりました。