首页 > 编程语言 > 详细

Unity之SpriteAtlas

时间:2021-07-02 23:10:50      阅读:26      评论:0      收藏:0      [点我收藏+]

一 , 制作一个SpriteAtlas对象

? ? ? ?1, 将所有要打入目标图集的图片设置为 "Sprite (2D and UI)" , 如下图所示

技术分享图片

? 2, 新建一个SpriteAtlas对象

? ? ?技术分享图片

3, 在Objects for Packing 添加小图片 (注意是sprite类型的), 如下图

技术分享图片

4, 制作成功,如下图所示

技术分享图片

二, 使用图集

1, 代码 , 先上

using UnityEditor;
using UnityEngine;
using UnityEngine.U2D;
using UnityEngine.UI;
/// <summary>
/// 对于Unity图集的测试
/// </summary>
public class AtlasDemo : MonoBehaviour
{
    [SerializeReference]
    private SpriteRenderer starRender;//sprite的渲染
    [SerializeReference]
    private Image imgPopularity;//Image的渲染
    // Start is called before the first frame update
    void Start()
    {
        SpriteAtlas atlas = AssetDatabase.LoadAssetAtPath<SpriteAtlas>("Assets/Res/OffPrintComeback/OffPrintComeback.spriteatlas");
        #region 关于2D的Sprite
        Sprite sprite = atlas.GetSprite("star");
        this.starRender.sprite = sprite;
        #endregion

        #region 关于UI的Image
        Sprite img = atlas.GetSprite("人气");
        this.imgPopularity.sprite = img;
        this.imgPopularity.SetNativeSize();
        #endregion
    }

    // Update is called once per frame
    void Update()
    {
        
    }
}

?

2, scene介绍

技术分享图片

代码既是分别对Sp 和 Image 赋值图集中的纹理

?

三 , 运行结果

技术分享图片

Unity之SpriteAtlas

原文:https://blog.51cto.com/aonaufly/2972079

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!