GLTF 頂點壓縮

簡化並編碼 GLTF 幾何,下載優化 GLB。

工作區

加載中...

請稍候

關於此工具

接受 .gltf(含 .bin/貼圖)。網格簡化 + Meshopt(推薦)或 Draco。輸出優化 GLB。不改貼圖。全程本地。

使用技巧

  • 1請一併上傳 .bin 與貼圖
  • 2Meshopt 與 Draco 互斥
  • 3幾何簡化 + 容器編碼

配置選項說明

頂點 / 幾何體

網格簡化

預設值50%

範圍0% – 100% · step 5%

使用網格簡化演算法減少面數與頂點數。預設中等強度;提高強度可進一步縮小體積,但可能損失曲面細節。僅改變幾何密度,不改變檔案容器格式。

Meshopt 壓縮

預設值

對 glTF/GLB 套用 EXT_meshopt_compression,壓縮幾何緩衝而不改面數。預設開啟,適合執行時期載入。與 Draco 互斥,不可同時開啟。STL/OBJ/FBX 等非 glTF 輸出不會使用此項。

推薦

預設。啟用 Meshopt 容器壓縮。

不寫 Meshopt 擴充。

Meshopt 等級

預設值

控制 Meshopt 編碼策略。預設「高」:體積通常更小並啟用屬性 filter,適合大多數 Web 場景。「中」對更多屬性做均勻量化,部分工具鏈較保守。

推薦

預設。更激進壓縮與 filter,體積通常更小。

更均勻的量化,壓縮率通常略低。

Draco 壓縮

預設值

對 glTF/GLB 套用 KHR_draco_mesh_compression。體積常優於 Meshopt,但解碼開銷更大。預設關閉;與 Meshopt 互斥。非 glTF 輸出不會使用。

推薦

預設。不寫 Draco 擴充。

啟用 Draco(會關閉 Meshopt)。

壓縮力度

預設值6

範圍1 – 10

Draco 編碼/解碼速度權衡,範圍 1, 10。數值越高越偏向體積、編碼越慢。預設 6,適合大多數模型。

編碼方法

預設值Edgebreaker

Draco 拓樸編碼方式。預設 Edgebreaker,三角網格壓縮率通常更好。Sequential 在部分條帶/點序場景更合適。

Edgebreaker推薦

預設。適合常見三角網格。

Sequential

適合有序條帶等特殊拓樸。

Quantization bits (advanced)

Shown under Advanced settings in the UI. Vertex attribute precision when Meshopt or Draco writes glTF. Defaults: position 14, normal 10, UV 12. Lower bits shrink files more but raise crack, shading, or UV artifact risk.

位置位數

預設值14

範圍8 – 16

POSITION 屬性量化位數(8, 16)。預設 14:體積與破面風險較均衡。過低可能導致縫隙或抖動。

法線位數

預設值10

範圍8 – 16

NORMAL 屬性量化位數(8, 16)。預設 10。過低易出現明暗斑駁。

UV 位數

預設值12

範圍8 – 16

TEXCOORD 屬性量化位數(8, 16)。預設 12。過低可能導致貼圖爬梯或抖動。

格式說明

輸入格式

副檔名:
gltf, glb
全名:
GL Transmission Format (glTF 2.0)
類型:
3D Scene
格式:
GLTF
常用工具:
Three.jsBabylon.jsBlender
說明:
glTF 是 Khronos 制定的開放標準 3D 格式,被稱作 3D 界的 JPEG:它以 JSON 描述場景結構,幾何資料存放於獨立的 .bin 檔案,紋理單獨引用,方便增量載入與串流傳輸。glTF 2.0 已成為 Web、行動端與遊戲引擎間交換 3D 內容的主流格式。 與 GLB 相比,glTF 由多個檔案組成,適合 CDN 按需載入和資源重用,但也更容易因檔案分散而丟失引用。交付單一檔案場景、或需要方便分享時,用 GLB 更穩妥;需要精細控制載入過程或頻繁更新部分資源時,glTF 更靈活。

備註:

  • 外部資源(.bin、紋理)需保持在同一目錄
  • 處理 CAD 工作流程可能需要額外工具

支援特性:

  • 常見的 3D 格式

輸出格式

副檔名:
glb
全名:
GL Transmission Format Binary (Compressed)
類型:
3D Model
格式:
Binary (glTF 2.0) with Draco/Texture Compression
常用工具:
Three.jsBabylon.js
說明:
此壓縮GLB格式輸出採用Draco幾何壓縮及/或紋理最佳化技術,能在維持視覺品質的前提下,大幅降低檔案大小,顯著提升傳輸與儲存效率,是一種高效的3D壓縮方案。

備註:

  • Draco 編碼模型需要 Draco 解碼器才能渲染
  • 根據設定,檔案大小可減少 50-90%

支援特性:

  • Draco 幾何壓縮(減少高達 90%)
  • WebP/JPEG 紋理格式轉換
  • 可配置強度的網格簡化
  • 保留原始 PBR 材質與場景層級

使用方法

1

上傳模型

拖曳 .gltf 及其引用的資源至此

2

設定參數

簡化網格,並選擇 Meshopt 或 Draco 編碼

3

壓縮並下載

下載最佳化後的 GLB 檔案

Q

為什麼不能直接下載 .gltf?

A

壓縮後的 glTF 以單一最佳化 GLB 檔案交付,便於攜帶且引擎支援度更佳:一個二進位檔案內嵌編碼後的幾何資料。GLB 比帶外部 .bin 和貼圖的 .gltf 載入更快,也更易於託管。

Q

Meshopt 與 Draco 哪個解碼更快?

A

Meshopt 專為網頁與行動裝置上的快速解碼設計,是載入效能的推薦預設。Draco 通常能產生更小的檔案,但代價是更長的解碼時間。同一幾何體上只能啟用其中一種。

Q

貼圖會保留嗎?

A

會。本工具只處理幾何緩衝區;貼圖會以來源中的原樣內嵌到輸出的 GLB,沒有任何品質損失。

Q

可以只簡化、不用 Meshopt/Draco 嗎?

A

可以。關閉容器編碼後,工具只做網格簡化;輸出仍是帶縮減幾何的最佳化 GLB。當你只想減少多邊形、不想重新編碼緩衝區時,這會很有用。

Q

什麼是 Draco 編碼?

A

Draco 是 Google 的開源函式庫,用於壓縮 3D 幾何與點雲。它可以將網格緩衝區縮小最高 90%,且幾乎看不出差異。Meshopt 是另一個選擇,通常解碼更快,偶爾體積稍大。

Q

壓縮後的模型能在 Three.js 中使用嗎?

A

可以。Three.js 原生載入 GLB/GLTF,並同時支援 Draco(透過 DRACOLoader)與 Meshopt(透過 MeshoptDecoder)。請在專案中包含對應的解碼器:Meshopt 的解碼器隨 three 的 examples 資料夾提供。