Q. 3Dモデルの軽量化方法を知りたい
A. 描画負荷を軽減させる方法はいくつかありますが、要素別に以下に軽量化方法をまとめました。
iPadやHoloLens 2アプリ、Webアプリで3Dモデルを表示する際、要素が多く複雑な3Dモデルの場合描画負荷がかかりスムーズに表示できない場合があります。以下の方法を参考に3Dモデルの軽量化をお試しください。
ケース1:オブジェクト数が多い
1万個を超えるような膨大な数のオブジェクトで構成されていると、負荷が高まってしまう傾向があります。
対処法:
・オブジェクトを一体化する
(同じマテリアルが設定されているオブジェクト単位での一体化をおすすめします)
例)
以下はRevitよりTwinmotionのエクスポーターを利用してFBXを作成した例です。
[ 融合する ] の項目で [ マテリアルごと ] を選択する事で、マテリアル単位でオブジェクトが一体化されます。
これにより描画負荷が軽減されます。
以下はCinema4Dを使用して[ガラス]マテリアルが使われているオブジェクトを一体化した例です。
ケース2:ポリゴン数が多い
30万ポリゴンを超えるようなハイポリゴンモデルの場合、負荷が高まる傾向があります。
対処法:
・円筒形状を六角柱の様なポリゴン数が少なくなる形状に置き換える
(配管や手すりのような滑らかな円筒で構成されたオブジェクトはポリゴン数が増加する傾向があるのでこれを置き換えます)
例)
建築モデルの場合、数多く使用されている配管や手すりを置き換えることで効果的にポリゴン数を削減出来ます。
ケース3:マテリアル数が多い
1,000を超えるような膨大な数のマテリアルが使用されていると、負荷が高まる傾向があります。
対処法:
・設定内容が同じ重複するマテリアルを一つにまとめる
・近似したマテリアルを一つにまとめる
例)
[ 未使用マテリアルを削除 ]や[ 重複マテリアルを消去 ]機能を使用しマテリアル数を削減した。(Cinema4Dの例)
ケース4:テクスチャ数が多い / テクスチャサイズが大きい
・テクスチャが大量に使用されている
・8kサイズを超えるような大きなサイズのテクスチャが使用されている
対処法:
・使用するテクスチャの数を削減する
・テクスチャのサイズを小さくする
ケース5:その他の対策方法
・確認したい範囲に絞ったモデルを用意する
3Dモデルを確認したい範囲のみに切り出す事で描画要素が削減されますので負荷の軽減が可能です。
建物外観のみを確認する場合は建物内部のオブジェクトを除外する方法も有効です。
mixpaceチャンネルにてRevitを使用した際の軽量化方法を紹介してますのでこちらも参照ください。