用精灵替换材料

时间:2017-05-17 11:25:10

标签: c# unity3d sprite material

如何使用脚本向玩家素材添加精灵。我有一个播放器的商店菜单,当我喜欢选择一个精灵时,我想添加到播放器材料,但我不知道如何做到这一点。我有我的代码但是我不知道如何添加。这是我的代码,我这样做,但是没有工作,有人可以告诉我如何将playersprite添加到playermaterial

public Material playerMaterial; // --> (player Material)          
public Sprite[] playerSprite;  // --> (Sprite i wish to add to the player)   
GameManager.Instance.playerMaterial = GameManager.Instance.playerSprite[index];

private void SetSprite(int index)
{
    activeSpriteIndex = index;
    GameManager.Instance.state.activeSprite = index;
    GameManager.Instance.playerMaterial = GameManager.Instance.playerSprite[index];
    spriteBuySetText.text = "Current";
    GameManager.Instance.Save();
}

1 个答案:

答案 0 :(得分:0)

Unity3d材质不仅仅是一个纹理,因此您需要通过SetTexture()方法或mainTexture属性设置材质。我假设它是您想要更改的主要纹理,而不是凹凸或光照贴图。

public Material playerMaterial; // --> (player Material)          
public Sprite[] playerSprite;  // --> (Sprite i wish to add to the player)   

private void SetSprite(int index)
{
    activeSpriteIndex = index;
    GameManager.Instance.state.activeSprite = index;
    GameManager.Instance.playerMaterial.mainTexture = GameManager.Instance.playerSprite[index].texture;
    spriteBuySetText.text = "Current";
    GameManager.Instance.Save();
}