输入颜色变化

时间:2017-10-09 18:18:50

标签: c# visual-studio unity3d

使用visual studio,我有3个错误,所有相同的(this.renderer.material.color)课程老师正在使用mono develop并且它对他来说非常合适..

public Color changedColor = Color.white;
private Color originalColor = Color.white;

void Awake()
{
    originalColor = this.renderer.material.color;
}

void Update()
{
    if (Input.GetKeyDown(KeyCode.G))
    {
        this.renderer.material.color = changedColor;
    }
    else if (Input.GetKeyUp(KeyCode.G))
    {
        this.renderer.material.color = originalColor;
    }
}
}

1 个答案:

答案 0 :(得分:2)

由于MonoBehaviour.renderer在几个Unity版本之前已被弃用,以及collideraudio等其他属性,因此您收到此错误。

Visual Studio提示您使用GetComponent<T>,因为这是基于组件的游戏Unity所关注的内容,您可以附加和删除对象中的组件以更改其外观和行为。< / p>

例如,在您的情况下,您想要修改color的{​​{1}}。要更改它,首先从GameObject中检索renderer的实例。

Renderer

然后,您可以访问渲染器的属性,例如Renderer r = this.GetComponent<Renderer>();

color