PNG转VTF转换器
用PNG制作Valve纹理格式(VTF)文件,可用于Source引擎游戏中的自定义喷漆、武器皮肤或地图贴图。先把PNG调整为2的幂次方尺寸,在这里转换,引擎即可加载生成的文件。
图片格式转换
或将JPG, JPEG, JPE … 文件拖放到此处 ·
单个文件最大 95 MB· 最多 20 个文件· 30 分钟后删除
文件在我们的服务器上处理,并在 30 分钟后删除。
85 可使照片在视觉上与原图无差别。只有在需要更小的文件时才调低。
JPG、BMP 和 EPS 不支持透明。透明像素会用此颜色填充。
用于透明像素底色的十六进制颜色,例如 #FFFFFF。
此格式只能保存单张图像。如需保留动画,请选择输出 GIF 或 WebP。
多尺寸图标在一个文件中包含多种分辨率,浏览器和操作系统会选用所需的尺寸。
保持原始尺寸,或输入一边的数值,自动保持宽高比。
上面所选边的像素值。
相对于原始尺寸的百分比。
屏幕和网页使用 sRGB 即可。印刷流程请保持原样;灰度会丢弃颜色。
仅写入元数据,0 表示保留原值。打印机和部分网站会读取此数值,它不会改变像素尺寸。
使用方法
- 1
上传尺寸为2的幂次方的PNG
最多添加 20 张 PNG,每张不超过 95 MB。Source 引擎需要 256 × 256 或 512 × 256 px 这类尺寸,透明区域可以保留。
- 2
检查尺寸设置
调整输出图片尺寸默认为保持原始尺寸。如果方形 PNG 需要调整,请选择设置宽度并输入 256、512 或 1024。
- 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尺寸
128 × 128 px
小喷漆
适合有严格大小限制的服务器
256 × 256 px
标准喷漆
最常见的喷漆尺寸
512 × 256 px
宽幅贴花或标牌
两边可以不同
1024 × 1024 px
武器或道具皮肤
与原贴图尺寸保持一致
2048 × 2048 px
精细的场景贴图
文件较大,请少量使用
PNG
便携式网络图形(PNG)
PNG 是 PNG 开发组于 1996 年发布的无损位图格式,后来由 W3C 和 ISO 标准化。它精确保留每个像素,支持完整的 Alpha 透明度,处理文字、锐利边缘和纯色块时不会产生伪影。这种精确度使它非常适合截图、徽标、图标和界面图形。代价是体积:保存为 PNG 的照片往往比同一张照片的 JPEG 或 WebP 大好几倍。所有浏览器、操作系统和编辑器都能打开 PNG 文件。
- 压缩方式
- 无损
- 透明度
- 支持
- 动画
- 不支持
- 发布年份
- 1996 · PNG Development Group
VTF
Valve 贴图格式
VTF 是 Valve 的 Source 引擎的贴图格式,用于《半条命 2》《反恐精英:起源》《军团要塞 2》和《Garry's Mod》等游戏。它可包含 mipmap、Alpha 透明和动画贴图的多帧,可用 GPU 格式压缩或未压缩保存。模组作者用 VTF 制作喷漆、皮肤和地图材质。除 Source 工具和插件外,几乎没有软件能打开它。
- 压缩方式
- 有损或无损
- 透明度
- 支持
- 动画
- 支持
- 发布年份
- 2004 · Valve
当成品图需要变成 Source 引擎游戏可加载的喷漆、皮肤或地图贴图时,就要把 PNG 转换为 VTF;VTF 转 PNG 则是把游戏中现有的贴图提取出来,用于查看或编辑。
如何把VTF放进游戏
准备 PNG
裁剪成最终形状,并把两边尺寸都调整为 2 的幂。
转换为 VTF
在此上传并点击转换为 VTF,透明度会保留。
放入 materials
把 VTF 及其 VMT 复制到对应的文件夹,或者将其作为喷漆导入。
制作喷漆时,大多数 Source 多人游戏在选项菜单的“多人游戏”标签页中有导入按钮,游戏会自动为你生成 VMT。喷漆不宜过大:较旧的 Source 版本会拒绝大约 120 KB 以上的喷漆文件,所以通常选择 256 × 256 px 的设计,服务器还可能另有自己的规定。
如果要重绘贴图,先用 VTF 转 PNG 打开游戏的原始贴图,以相同尺寸在上面绘制,这样仍能对应模型的 UV 贴图,然后再回到这里把 PNG 转换回去。如果原图是宽幅照片,请先用图片裁剪裁成方形再调整尺寸,因为调整输出图片尺寸会保持宽高比,无法把 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。