调整数据大小¶
使用图像、纹理和着色器的正确数据大小时,可以减少内存需求。调整数据大小以反映应用程序的需求:
如果目标设备的屏幕分辨率较低,确保纹理的纹素与目标屏幕的像素匹配。例如,当您在一个320 x 200像素的屏幕上有一个50 x 40像素的纹理按钮时,返回最佳质量的纹理的最佳尺寸是50 x 40像素的纹理。您可以将图像缩小与图像压缩结合使用。尝试在所需的视觉质量和应用程序性能之间找到折衷。请参阅 压缩纹理。
您必须有充分的理由才能使用大于 1024 像素的纹理。如果纹理宽或高为 1024 像素并包含重复图案,请提取最小的重复图案,并在纹理中将 Wrap Mode 设置为 Repeat。
纹理所需的内存直接对应于您使用的纹理格式。例如,8 位灰度纹理每个像素需要 8 位,而 RGBA8 需要四个 8 位通道(每个像素 32 位)。
确保环境纹理贴图的所有面使用相同大小和格式的图像。当环境纹理贴图中的图像大小和格式不匹配时,Kanzi 使用默认环境纹理贴图。
例如,对于环境纹理贴图的所有面,使用 256×256 像素的 8 位灰度图像。
当环境纹理贴图中图像的大小和格式不匹配时,Kanzi Studio 使用红色标记此类纹理。
使用 mipmaps 从大纹理创建一组缩小的子级。Mipmaps 会将 GPU 内存使用量增加三分之一,但在不需要采样完整纹理时可以提高性能。每当缩放纹理节点时,使用 mipmaps 以提高性能。
请参阅 使用 mipmap。
避免从非常大的图像创建纹理。例如,不要直接从数码相机照片创建纹理。相反,应从预处理和适当细化的图形中创建纹理。- 确保将您用于创建和转换图像的工具创建尽可能小的图像。例如,如果您使用的是 PNG 图像,请使用 pngcheck 和 Pngcrush 等工具,以确保图像类型正确且不包含任何不必要的数据。