导入图像
支持的图像格式
Godot 可以导入以下图像格式:
BMP (
.bmp
) - 不支持每像素16位的图像.只支持每像素1位、4位、8位、24位和32位图像.DirectDraw Surface(
.dds
) -如果纹理中存在mipmap,则直接加载.可以使用自定义mipmap制作特效.OpenEXR (
.exr
) - 支持HDR (强烈推荐使用在全景天空上).光辉HDR(
.hdr
) - 支持HDR (强烈推荐使用在全景天空上).JPEG (
.jpg
,.jpeg
) - 不支持每个格式的限制透明度.PNG(
.png
) - 导入时精度限制为每个通道8位(无HDR图像).Truevision Targa (
.tga
)SVG (
.svg
,.svgz
) - SVG在导入时使用 NanoSVG 进行栅格化.支持并不完善,复杂向量可能无法正确渲染.对于复杂的向量,使用Inkscape将其渲染成PNGs往往是更好的解决方案.这个操作可以通过Inkscape的 命令行界面 来自动完成.WebP (
.webp
)
注解
如果你从源代码编译Godot编辑器时禁用了特定的模块,某些格式可能无法使用.
导入纹理
Godot 中的默认操作是将图像导入为纹理.纹理存储在显存中,不能直接访问.这就是使得绘制它们变得高效的原因.
导入选项非常多:
检测3D
这个选项让 Godot 知道在 3D 中何时使用纹理(默认情况下导入为 2D).如果开启这个选项,设置会发生改变,所以纹理标记对 3D 更友好(贴图(mipmap)
、过滤器(filter)
和 重复(repeat)
变为启用,``压缩(compression)`` 变为 显存(VRAM)
).纹理也自动重新导入.
压缩
图像是游戏中最大的素材之一.为了有效地处理它们,它们被需要压缩.Godot根据使用情况提供了几种压缩方法.
压缩模式
VRAM压缩: 这是3D素材最常见的压缩方式.可以减小磁盘文件的大小,同时大大减少显存使用量(通常是4到6倍).但 2D 素材应该避免使用此模式,因为它会出现明显的失真.
无损压缩: 这是 2D 素材最常用的压缩方式.显示的素材不会失真,并且磁盘压缩率也不错.但是,它占用的显存比VRAM压缩多得多.这是像素画的推荐设置.
有损压缩: 对于比较大的 2D 素材是一个好的选择.只是会有一些失真,但比 VRAM 压缩少,文件大小比无损或未压缩低好几倍. 此模式不会降低视频内存使用量,它与无损压缩或未压缩相同.
未压缩:仅适用于无法压缩的格式(例如 raw float 图片).
在这张表中,四个选项中的每一个都描述了它们的优缺点( = 最好的, = 最差的):
未压缩 | 无损压缩(PNG) | 有损压缩(WebP) | VRAM压缩 | |
---|---|---|---|---|
描述 | 存储为原始像素 | 存储为 PNG | 存储为 WebP | 根据平台不同,存储为S3TC/BC或PVRTC/ETC |
磁盘占用 | 巨大 | 小 | 非常小 | 小 |
内存占用 | 巨大 | 巨大 | 巨大 | 小 |
性能 | 普通 | 普通 | 普通 | 快 |
质量损失 | 无 | 无 | 轻微 | 中等 |
加载时间 | 普通 | 慢 | 慢 | 快 |
HDR 模式
Godot支持高动态范围纹理(如 .HDR
或 .EXR
).这些在高动态范围等矩形全景天空中很有用(如果您要搜索,则互联网上有很多),它代替了Godot 2.x中的立方体贴图.现代个人电脑支持 BC6H VRAM 格式,但仍有很多电脑不支持.
如果您希望 Godot 确保完全兼容各种纹理,请启用 强制 RGBE
选项.
法线贴图
将纹理用作法线贴图时,仅需要红色和绿色通道.鉴于常规纹理压缩算法产生的失真在法线贴图中看起来不太好,RGTC 压缩格式最适合这种数据.将此选项强制为 已启用
将使Godot导入 RGTC 压缩的图像.默认情况下,它被设置为 Detect
,这意味着如果纹理一旦被用作法线贴图,则会将其更改为 Enabled
并自动重新导入.
请注意,RGTC压缩会影响生成的法线贴图图像.您必须在调整使用法线贴图的自定义着色器时,考虑到这一点.
注解
Godot需要法线贴图使用X +,Y-和Z +坐标.换言之,如果你导入了用于其他引擎的材质,就需要转换法线贴图,将它的Y轴翻转过来.否则,法线贴图显示的Y轴方向会相反.
可以在 这里 找到关于法线贴图(包括常见引擎的坐标顺序表)的更多信息.
标志
根据使用情况,很多设置在将图像作为纹理导入时,可以被切换.
重复
此设置最常用于3D,因此通常在2D中被禁用.它将超出 0,0 -1,1 范围的UV坐标设置为 循环
.
可以选择将重复设置为镜像模式.
过滤器
当像素大于屏幕像素时,此选项可为它们启用线性插值.结果是更平滑的(更少块状)纹理.此设置通常可用于2D和3D,但在制作像素完美游戏时通常会禁用此设置.
Mipmaps
当像素变得比屏幕小时,``mipmap`` 会启用.这有助于减少纹理收缩时的颗粒感效应.请记住,在较旧的硬件(GLES2,主要是移动设备)中,使用 mipmap
需要满足一些要求:
纹理宽度和高度必须是2的幂
必须启用
Repeat
在制作手机游戏和应用程序时,希望完全兼容并使用 mipmap
,请牢记以上内容.
在 3D 模式下,应该打开 mipmap
,因为这也会提高性能(更小大小的纹理用于更远的对象).
各向异性
当纹理几乎与视图平行时(如地板),该选项通过减少模糊程度使它们具有更多细节.
SRGB
渲染 3D 图像时,Godot使用线性色彩空间.映射到 albedo
(反射率)或细节通道的纹理需要打开此选项,才能使颜色看起来正确.当设置为 Detect
模式时,纹理当在反照率通道中使用时,将被标记为 SRGB .
过程
当作为纹理导入时,某些特殊过程可以应用于图像.
修复 Alpha 边界
这样会使周围颜色相同的像素从透明过渡到非透明.从Photoshop等导出图像时,它有助于减轻轮廓效果.
除非需要特定的值,否则最好在保持默认值.
预乘Alpha
修复深色边界的替代方法是使用预乘alpha.通过启用此选项,纹理将被转换为此格式.请记住,在画布物体上使用预乘 ALPHA 混合模式需要创建一个材质.请记住,在画布上的使用PREMULT ALPHA混合模式的项目,需要创建一个材质,而该材质需要它.
HDR 转为 SRGB
一些HDR文件已损坏,并包含sRGB颜色数据.建议不要使用它们,但是在最坏的情况下,启用此选项会使它们看起来正确.
反转颜色
反转图像的颜色.例如,将外部程序生成的高度图转换为深度图以用于 空间材质,将非常有用.
Svg
Scale(大小)
该选项仅适用于 SVG 文件.它控制 SVG 图像的缩放.默认比例 (1.0) 表示使导入的 SVG 保持原始设计大小.