UltKit

PNG 轉 VTF 轉換器

把 PNG 製作成 Valve Texture Format 檔案,用於 Source 引擎遊戲的自訂噴漆、武器外觀或地圖材質。先將 PNG 調整為 2 的次方尺寸,在這裡轉換,引擎就能載入轉換結果。

圖片轉換器

或將JPG, JPEG, JPE … 檔案拖曳到這裡 ·

每個檔案最大 95 MB· 最多 20 個檔案· 30 分鐘後刪除

輸出

檔案會在我們的伺服器上處理,並於 30 分鐘後刪除。

使用方式

  1. 1

    上傳 2 的次方尺寸的 PNG

    最多可加入 20 張 PNG,每張不超過 95 MB。Source 引擎需要 256 × 256 或 512 × 256 px 這類尺寸,透明區域也沒有問題。

  2. 2

    檢查尺寸設定

    調整輸出圖片尺寸預設為保持原始大小。若 PNG 是需要調整的正方形圖片,請選擇設定寬度,並輸入 256、512 或 1024。

  3. 3

    按下「轉換為 VTF」

    下載 .vtf 檔案,遊戲需要時再加上 VMT,然後複製到遊戲的 materials 資料夾。上傳的檔案會在 30 分鐘後刪除。

Source 引擎遊戲只能載入 VTF 格式的貼圖,而且要求圖片的兩邊都是 2 的次方。

為什麼 Source 遊戲需要 VTF 而不是 PNG

VTF 是 Valve 為 Source 引擎打造的格式。Source 引擎隨 2004 年的 Half-Life 2 推出,至今仍用於 Garry's Mod、Team Fortress 2、Counter-Strike: Source、Left 4 Dead 2 和許多模組。引擎在執行時不會解碼 PNG 或 JPG,而是需要已經為顯示卡排好的貼圖資料,通常是 DXT 壓縮,並附有一串較小的縮圖副本(mipmap)供遠處表面使用,VTF 就是存放這些內容的容器。

2 的次方規則也來自同樣的設計。Mipmap 每一層都將圖片縮小一半,而 GPU 壓縮格式以 4 × 4 像素為區塊運作,所以 512 或 1024 這類尺寸可以一路整除到底。500 × 500 px 的 PNG 會打破這個規律,工具不是拒絕處理,就是把它拉伸到下一個有效尺寸,造成細節模糊。

PNG 轉 VTF:噴漆、外觀與材質的尺寸

1:1

128 × 128 px

小型噴漆

適用於有嚴格大小限制的伺服器

1:1

256 × 256 px

標準噴漆

最常見的噴漆尺寸

2:1

512 × 256 px

寬幅貼花或招牌

兩邊可以不同

1:1

1024 × 1024 px

武器或道具外觀

與原始貼圖的尺寸一致

1:1

2048 × 2048 px

高細節場景貼圖

檔案較大,請酌量使用

PNG

Portable Network Graphics

PNG 是 1996 年由 PNG Development Group 發布的無損點陣圖格式,後來由 W3C 與 ISO 納入標準。它會完整保留每一個像素,支援完整的 Alpha 透明度,處理文字、銳利邊緣和純色區塊時不會產生瑕疵。這樣的精確度使它非常適合螢幕截圖、標誌、圖示和介面圖形。代價是檔案大小:存成 PNG 的相片,往往比同一張相片存成 JPEG 或 WebP 大上好幾倍。所有瀏覽器、作業系統和編輯軟體都能開啟 PNG 檔案。

壓縮方式
無損
透明度
支援
動畫
不支援
推出年份
1996 · PNG Development Group
PNG 轉檔工具

VTF

Valve 貼圖格式(VTF)

VTF 是 Valve 的 Source 引擎所使用的貼圖格式,用於 Half-Life 2、Counter-Strike: Source、Team Fortress 2 和 Garry's Mod 等遊戲。它可包含 mipmap、Alpha 透明度,以及動態貼圖的多個影格,可用 GPU 格式壓縮或以未壓縮方式儲存。模組製作者用 VTF 製作噴漆、外觀和地圖材質。除了 Source 工具和外掛之外,幾乎沒有軟體能開啟它。

壓縮方式
有損或無損
透明度
支援
動畫
支援
推出年份
2004 · Valve
VTF 轉檔工具

當完成的圖稿要做成 Source 引擎遊戲可載入的噴漆、外觀或地圖貼圖時,就需要把 PNG 轉換成 VTF;VTF 轉 PNG 則是把遊戲現有的貼圖取出,以便檢視或編輯。

如何把 VTF 放進遊戲

  1. 準備 PNG

    裁切成最終的形狀,並把兩邊都調整為 2 的次方。

  2. 轉換為 VTF

    在此上傳並按下轉換為 VTF,透明度會保留。

  3. 放入 materials

    把 VTF 和 VMT 複製到對應的資料夾,或將它匯入為噴漆。

製作噴漆時,多數 Source 多人遊戲在選項選單的「多人遊戲」分頁有匯入按鈕,VMT 會由遊戲替您寫好。噴漆請不要太大:較舊的 Source 版本會拒絕大約 120 KB 以上的噴漆檔案,所以 256 × 256 px 的設計是常見的選擇,伺服器也可能另有規則。

要重製外觀時,先用 VTF 轉 PNG 開啟遊戲的原始貼圖,以相同尺寸在上面繪製,這樣才能繼續對應模型的 UV 貼圖,再回到這裡把 PNG 轉回 VTF。如果來源是寬幅照片,請先用裁切圖片裁成正方形再調整大小,因為調整輸出圖片尺寸會保持長寬比,無法自行把 1920 × 1080 變成兩個 2 的次方。如果您的專案是 DirectX 遊戲,可以用 PNG 轉 DDS 製作對應的貼圖檔。

PNG 轉 VTF 常見問題

PNG 轉 VTF 之前應該是什麼尺寸?

兩邊都必須是 2 的次方:64、128、256、512、1024 或 2048 px。兩邊不必相同,所以 512 × 256 也是有效的尺寸。製作噴漆時,多數社群教學建議使用 256 × 256 px,因為較舊的 Source 遊戲會限制噴漆檔案大小。

PNG 的透明度轉成 VTF 後會保留嗎?

可以,Alpha 色版會一併寫入 VTF。以噴漆來說,設計圖案以外的區域在牆上會保持透明,不會出現一個有顏色的方框。

除了 VTF,還需要 VMT 檔案嗎?

地圖貼圖、模型和貼花都需要 VMT。VMT 是一個簡短的文字檔,用來指定著色器,並透過 $basetexture 指向貼圖。從遊戲選項選單匯入的噴漆,其 VMT 會由遊戲自動產生。

這裡可以選擇 DXT1 或 DXT5 壓縮嗎?

本頁沒有壓縮格式的選項。如果遊戲或伺服器要求特定格式,例如為了讓噴漆檔案較小而使用 DXT1,請用 VTFEdit 開啟 VTF,並以所需的格式和 mipmap 設定重新儲存。

為什麼自訂材質顯示成紫黑相間的棋盤格?

這個圖樣是 Source 的貼圖遺失標記。表示引擎在 VMT 指定的路徑找不到 VTF,或是缺少 VMT。請檢查 materials 底下的資料夾,以及 $basetexture 的拼寫,其中不需要寫 .vtf 副檔名。

可以用 PNG 檔案製作動態噴漆嗎?

動態 VTF 會在同一個檔案中存放多個影格,需要能組合影格的工具,例如 VTFEdit 匯入編號圖片序列的功能。本頁會把每張 PNG 轉換成單一影格的 VTF。