Version: 5.6
Android Player Settings
Gradle for Android

Android 2D 纹理覆盖

在为不同平台进行构建时,您需要考虑适合目标平台的纹理分辨率、大小和质量。可以设置默认选项,然后针对特定平台来覆盖默认值。

本页面将详细介绍 Android 特有的__纹理覆盖 (Texture Overrides)__。可在此处找到常规纹理覆盖的说明。

纹理格式 What internal representation is used for the texture. This is a tradeoff between size and quality. In the examples below we show the final size of a in-game texture of 256 by 256 pixels:
        RGB Compressed DXT1 Compressed RGB texture. Supported by Nvidia Tegra. 4 bits per pixel (32 KB for a 256x256 texture).
        RGBA Compressed DXT5 Compressed RGBA texture. Supported by Nvidia Tegra. 6 bits per pixel (64 KB for a 256x256 texture).
        RGB Compressed ETC 4 bits Compressed RGB texture. This is the default texture format for Android projects. ETC1 is part of OpenGL ES 2.0 and is supported by all OpenGL ES 2.0 GPUs. It does not support alpha. 4 bits per pixel (32 KB for a 256x256 texture)
        RGB Compressed PVRTC 2 bits Compressed RGB texture. Supported by Imagination PowerVR GPUs. 2 bits per pixel (16 KB for a 256x256 texture)
        RGBA Compressed PVRTC 2 bits Compressed RGBA texture. Supported by Imagination PowerVR GPUs. 2 bits per pixel (16 KB for a 256x256 texture)
        RGB Compressed PVRTC 4 bits Compressed RGB texture. Supported by Imagination PowerVR GPUs. 4 bits per pixel (32 KB for a 256x256 texture)
        RGBA Compressed PVRTC 4 bits Compressed RGBA texture. Supported by Imagination PowerVR GPUs. 4 bits per pixel (32 KB for a 256x256 texture)
        RGB Compressed ATC 4 bits Compressed RGB texture. Supported by Qualcomm Snapdragon. 4 bits per pixel (32 KB for a 256x256 texture).
        RGBA Compressed ATC 8 bits Compressed RGBA texture. Supported by Qualcomm Snapdragon. 6 bits per pixel (64 KB for a 256x256 texture).
        RGB 16 bit 65 thousand colors with no alpha. Uses more memory than the compressed formats, but could be more suitable for UI or crisp textures without gradients. 128 KB for a 256x256 texture.
        RGB 24 bit 真实色彩,但没有 Alpha。256x256 纹理为 192 KB。
        Alpha 8 bit 高质量 Alpha 通道,但没有任何颜色。256x256 纹理为 64 KB。
        RGBA 16 bit Low-quality truecolor. The default compression for the textures with alpha channel. 128 KB for a 256x256 texture.
        RGBA 32 bit Truecolor with alpha - this is the highest quality compression for the textures with alpha. 256 KB for a 256x256 texture.
Compression quality 选择 Fast 可获得最快的性能,选择 Best 可获得最佳图像质量,选择 Normal 可获得这两者之间的平衡。

Unless you’re targeting a specific hardware, like Tegra, we’d recommend using ETC1 compression. If needed you could store an external alpha channel and still benefit from lower texture footprint.

Unity can use ETC1 for textures with Alpha, provided they are placed on some Atlas (by specifying the packing tag) and the build is for Android. You can opt in for this by setting the “Compress using ETC1” checkbox for the texture. Under the hood Unity will split the resulting atlas into two textures, each without alpha and then combine them in the final parts of the render-pipeline.

If you absolutely want to store an alpha channel in a texture, RGBA16 bit is the compression supported by all hardware vendors.

Textures can be imported from DDS files but only DXT or uncompressed pixel formats are currently supported.

If your app utilizes an unsupported texture compression, the textures will be uncompressed to RGBA 32 and stored in memory along with the compressed ones. So in this case you lose time decompressing textures and lose memory storing them twice. It may also have a very negative impact on rendering performance.

Android Player Settings
Gradle for Android
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961