Unity UI系统-NGUI-AtlasMaker

一,AtlasMaker制作图集:
1,Atlas:图集,图片的一个集合,或者说打包格式,NGUI中的UISprite组件显示图片,需要用到图集,就和UIlabel显示需要用到字体是一样的道理,

2,什么是AtlasMaker
AtlasMaker :图集制作器,NGUI提供的打包Atlas的工具

3,制作图集的步骤:
点击NGUI下的Open下的AtlasMaker工具,弹出窗口点击“New”按钮:
将需要打包成Atlas的图片选中;
点击“Create”按钮,给新图集命名并且保存,,,

4,Atlas结构分析:
每个Atlas都是由三个文件组成的:
xxx.png :贴图文件,小图片拼成的大图片(随着图集的更改而自动变化)
xxx.mat :材质球文件,使用xxx.png为素材制作的图集文件
xxx.prefab:图集文件,使用xxx.mat为素材制作的图集文件
依赖关系:png --> mat --> prefab
二,图集的常用修改和操作
往图集中增加新的图片:
1,打开AtlasMaker,选中需要修改的图集,
2,选中需要添加的图片,AtlasMaker面板会自动添加
3,最后点击面板上的“Add/Update”按钮,新的图集会自动保存
从图集中删除图片;
1,打开AtlasMaker,选中需要修改的图集;
2,选中要删除的图片后面的“X”按钮,然后点击Delete;

UISprite面板控制:
1,UISprite 显示图片
a,创建UISprite组件,步骤:NGUI --> Create --> Sprite;
b,选择图集,选中要显示的图片;
c,widget中点击“Snap” 按钮,让图片原始按原始大小显示;
d,widget中“Aspect选中Based On Width”,便于等比例调整图片的大小,

2,UISprite面板属性
a,Type(类型/模式)
simple:简单模式,展示默认效果
Sliced :九宫模式 ,选中后点击Sprite后面的Edit属性面板会改变,然后调整Sprite Details下的Border属性值,将图片分为九宫格,然后点击Hierarchy面板即可,,,此属性设置完成后在改变widget下的size就只是中间的格子在变化,其余的八个不会改变
Tiked:平铺模式:使用该图片平铺于widget中的size区域,一般用来做背景图片
Filled:进度模式 最复杂的一种图片模式
FillDir 填充方向
Fill Amount 填充量
invertFill 翻转填充
实例:

代码动态创建UISprite:
1思路和我们可是化操作是一样的:
2动态控制UISprite的属性:
获取到UISprite对象,以“.”的形式调出属性进行复制,属性的名称和Inspecctor面板上组件属性名保持一致
代码如下:
using UnityEngine;

/// <summary>
/// 使用代码动态创建UISprite
/// </summary>
public class UIlabel : MonoBehaviour {
    UILabel goldNum;
    Transform tran;
	// Use this for initialization
	void Start () {
        //获取父级物体的世界坐标
        tran = this.GetComponent<Transform>();
        //动态创建一个Go对象,命名为UIGo
        GameObject uiSprite = new GameObject("UIGo");
        //将uiSprite设置为UIRoot的子物体
        uiSprite.GetComponent<Transform>().SetParent(tran);
        //重置Scale
        uiSprite.GetComponent<Transform>().localScale = Vector3.one;
        //动态添加组件
        UISprite sprite = uiSprite.AddComponent<UISprite>();
        //读取图集,Resources是Unity特定的加载文件夹
        UIAtlas atlas = Resources.Load<UIAtlas>("MyAtlas");
        //给组件指定图集
        sprite.atlas = atlas;
        //给组件指定图片“图片名称”
        sprite.spriteName = "11000414";
	}   
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陈言必行

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值