当前位置: 首页 > news >正文

[Unity]-[UI]-[Image] 关于UI精灵图资源导入设置的详细解释

Unity UI Sprite

  • UI资源导入详解
    • 图片导入项目
      • Texture Type
      • Texture Shape
      • Advanced Setting 高级设置
    • 图片设置案例
    • 常见细节问题
  • 知识点详解来源

UI资源导入详解

Unity中的UI资源有图片、矢量图、字体、预制体、图集、动画等等资源。

这其中图片是最重要以及最基础的资源组成,所以图片的资源管理是影响整个项目的重点。

图片导入项目

直接拖拽到项目的对应文件夹中,文件夹需要进行分配分类好,建议按照功能页面进行分文件夹,方便后期打图集。

导入后的配置

Texture Type

在这里插入图片描述

  1. 图片导入后的默认参数Default:
    通用的纹理类型,一般在Material上的材质图片参数使用,比如漫反射、法线贴图这些。
    在这里插入图片描述

  2. Normal Map 法线贴图参数
    专职用于法线贴图的格式,用于存储法线信息,模拟凹凸表面光照效果。
    使用在3D模型的专业法线贴图。有Unity提供的Api开关(勾选Creat From Grayscale)生成法线。
    在这里插入图片描述

  3. Editor GUI and Legacy GUI (编辑器 GUI 和旧版 GUI)
    如果要在任何 HUD 或 GUI 控件上使用纹理,请选择 Editor GUI and Legacy GUI。

  4. Cursor (光标)
    选择 Cursor 可将纹理用作自定义光标。

  5. Cookie (光照遮罩(饼干))
    用于灯光(如聚光灯)的投影遮罩纹理。
    ​​ 适用场景​​:模拟灯光透过窗户、树叶等效果。

  6. LightMap (光照贴图)
    存储预计算的光照信息。
    ​​ 适用场景​​:静态场景的烘焙光照。
    此选项允许将纹理编码为特定格式(RGBM 或 dLDR,具体取决于平台)并通过后期处理步骤对纹理数据进行处理(推拉式扩张通道)。

  7. Directional LightMap (方向光照贴图)
    方向

  8. ShadowMask (阴影遮罩)
    混合光照使用贴图。

  9. Single Channel (单通道)
    仅使用单通道(如R通道)存储数据。
    ​​适用场景​​:
    高度图(Heightmap)。
    遮罩纹理(如R通道控制金属度)。

Texture Shape

在这里插入图片描述
使用texture shape 可以选择和定义纹理的形状和结构。

  1. 2D 是用于所有纹理的最常用设置;它将图像文件定义为 2D 纹理。这些设置用于将纹理映射到 3D 网格和 GUI 元素以及其他项目元素。
  2. Cube 将纹理定义为立方体贴图。例如,可将其用于天空盒或反射探针。此类型仅可用于 Default、Normal Map 和 Single Channel 纹理类型。
  3. 2D Array 将纹理定义为 2D 数组纹理。这通常用作某些渲染技术的优化,其中会使用许多具有相同大小和格式的纹理。
  4. 3D 将纹理定义为 3D 纹理。某些渲染技术使用 3D 纹理表示体积数据。

Advanced Setting 高级设置

根据不同texture type有不同的Advanced setting.
这里说一些常用的设置:

  1. sRGB(Color texture)
    控制是否将纹理视为颜色空间数据(sRGB)。
    ​​开启:
    颜色纹理(如漫反射贴图、UI图片)。
    ​​关闭​​:
    非颜色数据(如法线贴图、金属度贴图)。
    启用此属性可指定将纹理存储在伽马空间中。对于非 HDR 颜色纹理(例如反照率和镜面反射颜色),应始终选中此复选框。如果纹理存储了有特定含义的信息,并且您需要着色器中的确切值(例如,平滑度或金属度),请禁用此属性。默认情况下会启用此属性。

  2. Alpha Source (透明度来源)
    在这里插入图片描述
    定义透明通道a的来源。

    None:无透明通道。无论输入纹理是否有 Alpha 通道,导入的纹理都没有 Alpha 通道。	
    Input Texture Alpha:使用原始图片的Alpha通道。如果提供了纹理,则使用输入纹理中的 Alpha。	
    From Gray Scale:根据灰度图生成Alpha通道。从输入纹理 RGB 值的平均值生成 Alpha。
    

    指定如何生成纹理的 Alpha 通道。

  3. Alpha Is Transparency (透明通道是否透明)
    ​​用途​​:将Alpha通道作为透明蒙版处理。
    ​​开启​​:
    带透明度的UI图片或精灵。
    ​​关闭​​:
    不需要透明度的贴图(如法线贴图)
    如果指定的 Alpha 通道为透明度 (Transparency),则启用此属性可扩充颜色并避免边缘上的过滤瑕疵。

  4. Non-Power of 2(非2次幂尺寸)​
    处理非2次幂(如513x513)的纹理

	None:保持原尺寸,可能导致性能问题。ToNearest:缩放到最近的2次幂(如512x512)。​​适用场景​​:移动端或低性能平台建议使用2次幂纹理。
  1. Generate Mip Maps(生成Mip Maps)​
    为纹理生成多级渐远纹理链,优化远距离显示效果。
    ​​开启:
    3D场景中的远距离物体贴图。
    ​​关闭​​:
    UI或2D精灵(避免模糊)。
    法线贴图(可能破坏法线数据)

  2. Wrap Mode(循环模式)​
    控制纹理在UV超出[0,1]范围时的显示方式。
    ​​选项​​:
    Repeat:平铺重复。
    Clamp:边缘像素拉伸。
    ​​适用场景​​:
    Repeat:地面、天空盒贴图。
    Clamp:UI背景或角色贴图。

  3. Filter Mode(过滤模式)​
    控制纹理缩放时的平滑处理方式。
    ​​选项​​:
    Point (no filter):点,无滤镜,像素化风格(适合像素游戏)。
    Bilinear:线性插值(中等平滑)。
    Trilinear:结合Mip Maps的平滑(最平滑)。
    ​​适用场景​​:
    Point:像素艺术或需要锐利边缘的UI。
    Bilinear/Trilinear:3D模型贴图或平滑渐变的UI。

  4. Compression(压缩格式)​
    优化纹理内存占用和加载速度。

	​​None​​:无压缩(最高质量,最大内存)。​​Low/High Quality​​:通用压缩(平衡质量与性能)。​​ASTC​​(移动端):高效压缩(如ASTC 6x6)。​​DXT/BCn​​(PC/主机):DirectX压缩格式(如DXT5支持Alpha)。​​ETC/ETC2​​(Android兼容格式)。​​适用场景​​:移动端优先选择ASTC或ETC2。PC端选择DXT5(带Alpha)或BC7(高质量)。
  1. Read/Write (读写)
    Read/Write Enable(是否启用读写) 开启读写可以访问Texture2D.SetPixels, Texture2D.GetPixels和其他Texture2D方法。开启会使Texture所需内存量增加一倍。因此默认情况下禁用此属性,并且仅在需要脚本访问权限时才启用它。

图片设置案例

  1. UI按钮图片​​
    ​​Texture Type​​:Sprite (2D and UI)
    ​​Sprite Mode​​:Single
    ​​Pixels Per Unit​​:100(与Canvas Scaler一致)
    ​​sRGB​​:开启
    ​​Generate Mip Maps​​:关闭
    ​​Compression​​:ASTC 6x6(移动端)或DXT5(PC)
    ​​Filter Mode​​:Bilinear

  2. 3D模型法线贴图​​
    ​​Texture Type​​:Normal map
    ​​sRGB​​:关闭
    ​​Create from Grayscale​​:开启(根据高度图生成法线)
    ​​Compression​​:BC5(PC)或ASTC 6x6(移动端)
    ​​Generate Mip Maps​​:开启
    ​​Wrap Mode​​:Repeat
    ​​

  3. 像素艺术角色​​
    ​​Texture Type​​:Sprite (2D and UI)
    ​​Filter Mode​​:Point (no filter)
    ​​Compression​​:None(避免压缩导致像素模糊)
    ​​Non-Power of 2​​:ToNearest(确保纹理尺寸为2次幂)

常见细节问题

  1. ​​图片模糊​​:
    检查Filter Mode是否为Bilinear(关闭Mip Maps)。
    确保Pixels Per Unit与Canvas Scaler的Reference Resolution匹配。
  2. ​​透明边缘黑边​​:
    开启Alpha Is Transparency,并检查原始图片的Alpha通道是否干净。
  3. ​​内存占用过高​​:
    使用合适的压缩格式(如ASTC/DXT5)。
    关闭不必要的Mip Maps。

知识点详解来源

  1. 纹理类型: 纹理类型
  2. 光照模式的定向贴图: Directional Lightmap :Directional Lightmap
  3. 混合光照概念:Shadowmask
  4. 混合光照详解
  5. 编辑器 GUI 和 旧版GUI
  6. Texture Import Settings - texture shape
  7. 部分补充设置

相关文章:

  • 【AI提示词】蝴蝶效应专家
  • 编译日志:关于编译opencv带有ffmpeg视频解码支持的若干办法
  • JWT原理及工作流程详解
  • 图像匹配导航定位技术 第 10 章
  • 单片机-STM32部分:10、串口UART
  • 虚拟文件系统
  • Rust 中的 Pin 和 Unpin:内存安全与异步编程的守护者
  • VS Code配置指南:打造高效的QMK开发环境
  • 操作系统的初步了解
  • YOLOv8目标检测性能优化:损失函数改进的深度剖析
  • STM32外设-串口UART
  • WORD压缩两个免费方法
  • leetcode - 双指针问题
  • 抖音 “碰一碰” 发视频:短视频社交的新玩法
  • Spring Boot 框架概述
  • 主题分析建模用法介绍
  • FPGA:如何提高RTL编码能力?
  • 第20篇:Linux设备驱动程序入门<七>
  • 虚拟专用服务器(VPS)完全指南:从入门到选型
  • 基于卷积神经网络和Pyqt5的猫狗识别小程序
  • 巴基斯坦称对印度发起军事行动
  • 西安机场回应航站楼“水帘洞”事件:屋面排水系统被冰雹堵塞
  • 壹基金发布2024年度报告,公益项目惠及937万人次
  • 海关总署统计分析司司长:4月进出口增速较一季度加快4.3个百分点
  • 新买宝马竟是“维修车”,男子发视频维权被4S店索赔100万
  • 我驻苏丹使馆建议在苏中国公民尽快撤离