調理道具の小物形状をアセットとしてモデリングします。ここでは、いくつかのモデリング手順を示しつつ、アセットとして管理したときの流れを記載します。アセットについて小物形状は1つ1つ別シーンでモデリングし、「アセット」として管理します。「アセット」は3Dのシーンを構築するときの素材(リソース)を指します。ここでは3Dモデルの形状自身をアセットとしていますが、テクスチャイメージや背景HDRI、音声などもアセットになります。概念的ではありますが、1つのシーンにとどまらず将来的に「資産」として利用するものになります。ここではShade3D内のモデリングで、Shade3Dのレンダリングが最終出力手段になりますが、アセットとしてリアルタイムエンジンのUnityに持って行ったり、VRやARで活用したり、幅広く再利用することを目的にしています。モデリングしたアセット今回のテーマのキッチンのシーンでは、たくさんのアセットをあらかじめモデリングしました。全部で43個分あります。保存容器(丸)保存容器(四角)1つの形状を1つのshdファイルで管理しています。モデリングの際に設けたルール1つの形状は、以下のルールを設けています。現実の寸法でモデリング原点を中心に接地した状態で配置すべての表面材質を「マスターマテリアル(マスターサーフェス)」にする極力PBRマテリアルを割り当てる表面材質の「継承」を使用しないテクスチャはUVマッピングを使用し、プロシージャルテクスチャ(ソリッドテクスチャ)を利用しないレンダリングブーリアンを使用しない省略できそうな箇所は省略し、個々のアセットはシンプルにするいくつかのルールは、他ツールに形状を渡しやすくする目的もあります。モデリング時には、原点が形状の接地位置の中心になるようにします。寸法は「メジャーツール」や形状情報ウィンドウのバウンディングボックスのサイズで確認します。Shade3Dのデフォルトの単位はミリメートルになります。他ツールへのエクスポートを想定しているのと、どの材質を割り当てたかというのをマスターマテリアルパートで一覧管理しやすくする目的があります。1つのシーンに複数のアセットをインポートする場合、同一マテリアルをまとめやすくなります。継承を使用してマテリアルが複雑化しないようにするためです。他ツールにエクスポートする際に極力そのまま形状やマテリアルを渡せるようにする目的があります。湯呑茶碗のモデリングアセットの皿についてはチュートリアルの「皿を作る」、フォークについてはチュートリアルの「フォークを作る」をご参照くださいませ。モデリング手順は同じになります。回転体を使用するものは、今までチュートリアルで書いた手順で比較的簡単にモデリングできるかと思います。ここでは手始めに、回転体では初歩的な「湯呑茶碗」をモデリングしてPBRマテリアルを割り当てる手順を記載します。回転体で形を作る「開いた線形状」を下画像のように正面図で配置します。これは湯呑茶碗の断面の線形状になります。正面図で見て、開始位置と終了位置がX=0になるようにします。ツールボックスの「編集」-「共通」-「立体化」-「回転体」を選択し、グリッドスナップをオンにして正面図でY=0の位置の下から上に向けてドラッグします。これで形状ができました。回転体をブラウザで選択し、統合パレットの表面材質を表示、「新規PBRマテリアル」を割り当てます。ShadeExplorerより、「テンプレート/UV」の「checker_color_512.png」をマッピングのテクスチャに割り当てます。これは、テクスチャがどのように貼られるのか確認する作業になります。この場合、テクスチャの下から中央までが外側、中央から上までが内側のマッピングがされています。中央が折り返しの箇所になっています。これは、回転体を作成したときのポイントの与え方により変わります。これを元に、ペイントツールで以下のようにテクスチャを描きました。-)これをShade3Dに読み込み、PBRマテリアルのマッピングで「イメージ/ベースカラー」で割り当てました。このとき合成モードを「通常」にし、「基本設定」の「ベースカラー」値の影響を受けないようにしています。これにより、テクスチャ自身の色がレンダリング時に反映されます。基本設定の「メタリック」は0.0、「ラフネス」は0.0、と初期設定のままとしました。表面材質をマスターマテリアルにし「YunomiCyawan」と名前を付けました。回転体の形状名を「湯呑茶碗」と変更しました。湯呑茶碗の形状を原点が底の中心になるように移動し、モデリング完了です。寸法が現実のサイズに合うように確認/調整するようにします。shdファイルを保存します。「湯呑茶碗.shd」というファイル名にしました。これを湯呑茶碗のアセットとします。ここではレンダリングは行いません。光源やカメラの割り当ても行いません。これは他のシーンにインポートする目的で使用するため、レンダリング確認は別シーンを用意して行います。-)ShadeExplorerより「プリセット/形状/00_New/Light_Room」の「hanako_light_3lamp.shd」を読み込みます。このファイルを「light_3lamp.shd」とリネームして保存します。これは、三点照明として3つの面光源が配置されたシーンになります。この中央(原点)位置に形状を読み込みレンダリングを行う「スタジオ」とします。スタジオシーンの調整キャラクタのポリゴンメッシュを削除し、スタジオだけにしておきます。そのままではリニアワークフローの指定がされていませんので、以下の調整を行います。イメージウィンドウのレンダリング設定を開き、「レンダリングスタイル」で「初期設定」を選択し、パラメータをクリアします。「出力カラースペース」が「sRGB」になっていることを確認します。「手法」を「パストレーシング」にし、「大域照明」タブで「大域照明」を「パストレーシング」にします。その他のパラメータは初期設定のまま使います。「色補正」ウィンドウを表示し、「ガンマ」を1.0にします。ブラウザで面光源を3つ選択し、形状情報ウィンドウの「光源属性」の「可視」チェックボックスをオンにします。PBR時はより物理的なレンダリングが行われるため、光沢の表現は映り込みで表します。面光源を映り込ませることで、鋭い光沢を表現することになります。ShadeExplorerより「プリセット/背景」の「Conference_room.shdbgr」を背景として読み込みます。背景ウィンドウで「光源としての明るさ」を0にします。これは、光源としては反映しないようにして鏡のような映り込み表現を行う効果があります。背景は、映り込みになりそうなものならどの背景でも問題ありません。スタジオシーンをファイル保存します。このスタジオシーンはすべてのアセットのレンダリングで使用する土台になります。-)スタジオシーンにモデリングした湯呑茶碗をインポートします。メインメニューの「ファイル」-「インポート」-「形状データ」を選択し、「湯呑茶碗.shd」を読み込みます。この際にファイルダイアログボックスで「原点を基準として読み込み」と「外部参照」を選択します。この指定により、原点を中心として外部参照として形状が読み込まれます。以下のように形状がスタジオシーンに読み込まれました。形状サイズが小さい/大きい場合は、カメラ位置を変えるか形状「リンク(湯呑茶碗.shd)」をリサイズしてレンダリングします。この工程は、あくまでも1つのアセットの形とマテリアルの確認になるため、リサイズは暫定処置になります。レンダリングすると以下のようになりました。これは、回転体の分割数が足りないために起きています。「<湯呑茶碗」とします。「<」を先頭につけると分割数が上がります。形状情報ウィンドウで「更新」ボタンを押すことで外部参照の変更が反映されます。レンダリングすると以下のようになりました。PBRマテリアルの調整が必要な場合は、この段階で修正するようにします。オリジナルの「湯呑茶碗.shd」でもこの変更を入れて再度保存します。このように、モデリングを行いアセットとして保存。スタジオシーンにshdファイルを外部参照としてインポートしてレンダリング、とすることで、レンダリング環境はすべてスタジオシーンに任せて作業を短縮できます。アセット自身はインポート時に光源やカメラなどの不要なデータも入らないためシンプルに管理できます。冒頭のアセット一覧は、すべてこのスタジオシーンでレンダリングしたものになります。今回は「湯呑茶碗」のアセットのモデリングからレンダリングまでの説明でした。すべてのアセットはこの工程を行うことになります。後は慣れではあるのですが、どの形状をどの手段(回転体や自由曲面を使うか、ポリゴンメッシュを使うか)でモデリングしたら制作時間を短縮できるか、というのを直感的に判断できるようになれば、かなりモデリングの腕が上達したことになりそうです。次回以降、モデリングの訓練としていくつかのアセットの作成手順を解説していく予定です。WordPressTranslate。