如何用另一个精灵替换一个精灵?

问题描述 投票:0回答:2

好吧,所以我一直在制作一个2d的平台游戏,并为我的播放器制作了一个可怕的图像/精灵。现在我有一个更好的,并希望只是替换图像,但保持所有相同的值和数据/脚本等。

我一直试图弄清楚它一段时间但无济于事。谢谢你的帮助

unity3d
2个回答
0
投票

一种方法,不确定它是最好的方法,但它的工作原理是: - 导入你的新Sprite(让我们称之为SpriteB) - 选择你一直在使用你的第一个精灵(SpriteA)的GameObject - 在“ Sprite Renderer“所选GameObject的组件,用你的新精灵替换”Sprite = SpriteA“,以便”Sprite = SpriteB“

显然,您必须为每个使用SpriteA的GameObject重复操作。


0
投票

如果要永久更改预制件/对象上的子画面,可以将新的子画面从资源文件夹拖动到要更改的对象的“Sprite Renderer”组件中,替换sprite框中当前的内容。看看这个图像,看看你想要拖动精灵的确切位置:

enter image description here

你可以使用公共变量通过脚本更改它:

public class ChangeSprite: MonoBehaviour
{
    public Sprite newSprite;

    private void ChangeSprite(){
        gameObject.GetComponent<SpriteRenderer>().sprite == newSprite;
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.