zoukankan      html  css  js  c++  java
  • http://blog.csdn.net/daiguangda/article/details/7837919

    转自:http://blog.csdn.net/daiguangda/article/details/7837919

    NGUI:UIAtlas

    UIAtlas是一个容器,他包含了许多sprite的坐标信息。如果你对这个概念不是很熟悉,你可以这样理解:与使用很多小的贴图来渲染UI相比,使用一张包含了所有小贴图的大贴图的效率要高许多。这些小的贴图就被叫做sprite,这个大的贴图就被叫做atlas。

    在使用NGUI渲染任何东西之前,首先需要创建一个atlas(或者使用一个现成的)。如果你是一个美术,那你可能已经熟悉了相关的流程。如果没有,你可以直接使用NGUI内置的Atlas Maker工具。

    当然,你可以在任何地方使用UITexture,但是这个做的效率不是很高。

    最后还是看你自己。

    参数

    Material 指向当前atals正在使用的材质。在材质中最好使用NGUI提供的一些unlit shader,例如Unlit-Transparent Colored

    TP Import 让你可以导入完整的使用texture packer程序制作的sprite定义表。只需要把导出来的txt文件拖动进去,所有的sprite会自动导入。如果你使用内置的atlas maker来创建atlas,你可以放心的忽略这个参数

    New Sprite 按钮让你可以创建一个新的sprite。它会自动克隆当前选中的sprite的所有参数

    Delete 按钮让你删除一个不再使用的sprite。会弹出一个确认框

    Sprite 下拉列表让你选择当前需要的sprite

    Edit Name 区域让你可以将sprite重命名

    Dimensions 是用来标示你的sprite的起始位置和大小

    Border 允许你标示sprite的哪一部分不能被缩放,或者只能在一个方向缩放。Sliced sprite会使用这个参数

    Padding 是4个边缘的边框宽度。可以用来调整中心点位置,同时在对sprite进行微调的时候也非常重要

    Show 区域让你测试你的sprite和它在atlas中的位置

    提示

    1. 你可以使用多个atlas来对sprite进行分组。只要atlas使用的是同一个材质,他们就只需要消耗一个draw call

    2. 为了最好的结果,材质使用的贴图的混合模式最好选择Clamp,并且格式选择Truecolor

    3. 将相似的texture组合在一起组成一个atlas是一个不错的选择, 但是最好将同时使用的atlas的数量降低到最小

    4. 如果你使用texture packer创建atlas,在导出的时候选择Unity3D

    5. 如果你使用photoshop来创建atlas,你可以使用selection工具和信息版来确认sprite的位置和大小

  • 相关阅读:
    微软同步框架入门之八使用WCF同步远程元数据
    使用Silverlight Toolkit TreeView树形控件
    使用Silverlight Toolkit绘制图表(上)柱状图
    Hello F#
    值类型和引用类型在hashtable里面性能比较分析1 GetHashCode()
    Fedora Core 6 完整下载信息
    IT从业者真的成了民工,悲哀呀
    俺也用一下mandriva,恩,KDE的效果的确不错
    我们的何时能赶上MS的脚步
    获得汉字字符串的首个拼音字母的缩写
  • 原文地址:https://www.cnblogs.com/zjw520/p/3046642.html
Copyright © 2011-2022 走看看