unity动态加载(1)Resources加载方法

在开发过程中我们很可能需要使用到动态加载
这样一方面可以节省性能 另一方面使我们的开发过程更加便捷
我之前写过一篇游戏中音效控制器 可以很方便的播放音效 就是用Resources
传送门

大家如果有兴趣可以参考

然后这篇博客实现以下使用Resources.load来动态加载预制体
以及给我们的Image或者是RawImage或真实SpriteRenderer来赋值

首先创建一个文件夹Resources(名字一定一定不要写错)
然后我们首先实现Image等的赋值

实现Image RawImage SpriteRenderer等的赋值

我们在上边创建的文件夹中导入一张图片
这里的格式我们可以换也可以不换(换了以供Image和SpriteRenderer的使用,不换的话只能RawImage的使用)
Image和RawImage的区别

在这里插入图片描述
然后在代码中使用语句来动态赋值了

 public RawImage a;
    public Image b;
    public SpriteRenderer c;
    private void Start()
    {
        a.GetComponent<RawImage>().texture = Resources.Load<Texture>("picture");//给RawImage赋值
        b.GetComponent<Image>().sprite = Resources.Load<Sprite>("picture");//给Image赋值
        c.GetComponent<SpriteRenderer>().sprite= Resources.Load<Sprite>("picture");//SpriteRenderer赋值
    }

在这里我提一下如果想要给Image和SpriteRenderer赋值
文件夹下面的格式必须改为Sprite(2D andUI)否则没有反应(不会报错)
在这里插入图片描述

上边的语句都是我亲自测试过的 大家可以放心采用

动态添加预制体

首先我们在Resources文件夹下创建一个预制体
然后在代码中可以实例化出来(实现动态添加)

 Object cs = Resources.Load("Cube", typeof(Object));
        Object t = Instantiate(cs) as Object; 

上边两句在Start里边写
场景中会自动加载出一个物体(Cube)

好了 这篇博客就介绍到这了 主要介绍了一下Resources的简单的使用
希望对大家有帮助、
不出意外我还会更新下一篇关于动态加载的博客
如果你也喜欢游戏开发 欢迎关注我 我会在这里持续更新我的学习过程

猜你喜欢

转载自blog.csdn.net/weixin_44302602/article/details/107457192
今日推荐