!!! サイト改修中のため表示が乱れる場合があります(1月末頃まで) !!!
3Dモデル / 3DCG

7-28. glTF形式データ容量の内訳を確認してみた

はじめに

glTFは3Dモデルのファイルフォーマットの一つです。
何も考えずに3Dモデルを作っていると、気づかないうちにデータ容量が大変なことになっていることがあるため、データ容量がどのような要素の影響を受けるのか把握したいと思います。

今回検討する要素は下記の5点です。

  • 頂点数
  • モデルの形状
  • シェーディング
  • マテリアルの有無
  • テクスチャ画像の有無・種類

頂点数

頂点数の異なる3つの球を作成し、それぞれをglTF形式で保存し、データ容量を比較しました。
マテリアル情報はありません。

結果は次のようになりました。
きれいな比例ではないものの、頂点数の増加に伴ってデータ容量も増えました(当たり前)。

データ名頂点数glTFデータ容量[KB]頂点1個当たりのデータ容量[KB]
球11230.25
球24290.21
球3162330.20

モデルの形状

頂点数が同じで形状の異なる3つの3Dモデル(立方体、球、円柱)を作成し、それぞれをglTF形式で保存し、データ容量を比較しました。
マテリアル情報はありません。

データ容量は立方体<円柱<球となりました。
頂点数は同じでも、面の向き(法線の方向)のばらつきが大きいほどデータ容量は大きくなるのでしょうか。

データ名頂点数glTFデータ容量[KB]頂点1個当たりのデータ容量[KB]
立方体4240.10
4290.21
円柱4260.14

シェーディング

同じ頂点数の球で、シェーディングの方法(フラット、スムーズ)のみ異なる2つの3Dモデルを作成し、それぞれをglTF形式で保存し、データ容量を比較しました。
マテリアル情報はありません。

データ容量は、スムーズシェードがフラットシェードの約半分になりました。
フラットシェードは面それぞれに法線情報が必要なのに対して、スムーズシェードはより効率的な方法で法線情報を保持している、ということでしょうか。

データ名頂点数glTFデータ容量[KB]頂点1個当たりのデータ容量[KB]
フラットシェード4290.21
スムーズシェード4240.10

マテリアル

頂点数が同じ球で、マテリアルのみ異なる3つの3Dモデルを作成し、それぞれをglTF形式で保存し、データ容量を比較しました。

データ容量は、マテリアル1種類につき約1KB増加しました。

データ名頂点数glTFデータ容量[KB]
マテリアルなし429
マテリアル1種類4210
マテリアル2種類4211

テクスチャ画像の有無・種類

頂点数が同じ球で、テクスチャなし、カラーマップのみ、ラフネスマップのみ、ノーマルマップのみの4つの3Dモデルを作成し、それぞれをglTF形式で保存し、データ容量を比較しました。

カラーマップのみ、ノーマルマップのみの場合、単純に画像データの容量が3Dモデルの容量に加算されるようです。
ラフネスマップは、画像データと3Dモデルの容量の他に300KBほどデータ容量が増えました。

データ名頂点数テクスチャデータ容量[KB]glTFデータ容量[KB]
テクスチャなし4209
カラーマップ42645654
ラフネスマップ429331245
ノーマルマップ42911920

まとめ

ざっくりまとめると、

glTFデータ容量[KB] = 約0.2[KB]×頂点数 + テクスチャ画像データ容量[KB]

スムーズシェードをうまく使えば、データ容量がかなり節約できそうです。

リアクションのお願い

「参考になった!」「刺激された!」と思ったらぜひリアクションをしましょう。エンジニアの世界はGive and Takeによって成り立っています。これからも無料で良質な情報にアクセスできるよう、Giveする人への感謝をリアクションで示しましょう!

この記事をシェアする

自身のブログ等で使用する場合は引用を忘れずに!

また、寄付も受け付けています。コーヒー1杯でとても喜びます(*˘︶˘*)

 Amazonでギフト券(アマギフ)を贈る

こちらのリンク から金額を指定してお贈りください。(デフォルトで10000円になっているのでご変更ください)

配送:Eメール
受取人:staffあっとvigne-cla.com
贈り主:あなたのお名前やニックネーム
メッセージ:◯◯の記事が参考になりました。など

のようにご入力ください。見返りはありませんのでご了承ください。

 Amazonで食事券(すかいらーく優待券)を贈る

500円 1000円 2000円 5000円 からお贈りください。

配送:Eメール
受取人:staffあっとvigne-cla.com
贈り主:あなたのお名前やニックネーム
メッセージ:◯◯の記事が参考になりました。など

のようにご入力ください。見返りはありませんのでご了承ください。

 その他、ギフト券やクーポン券をメールで贈る

デジタルのギフト券/クーポン券はメールアドレス(staffあっとvigne-cla.com)までお送りください。受領の返信をいたします。
紙のギフト券/クーポン券は 「郵便物はこちらへ」の住所 まで送付してください。名刺やメールアドレスを同封していただければ受領の連絡をいたします。
余った株主優待券等の処理におすすめです。
いずれも見返りはありませんのでご了承ください。

不明点はSNSでお気軽にご連絡ください

ビネクラのTwitter・Youtubeでコメントをください!


Slack・Discordの場合はこちらの公開グループに参加してShoya YasudaまでDMをください!


※当ブログに関することは何でもご相談・ご依頼可能です。

この記事を書いた人
Nakamura

専門は機械設計と3Dモデル。英国で義足の研究開発、国内で機械設計に従事。シューフィッター(プライマリー)、ファッション3Dモデリスト検定2級。週2で食べ放題。

タイトルとURLをコピーしました