Реагировать на сброс компонента Unity - PullRequest
0 голосов
/ 21 октября 2019

Я написал сценарий, который заменяет материал объекта другим. Всякий раз, когда компонент уничтожается или отключается, исходный материал помещается обратно. Однако всякий раз, когда я использую кнопку сброса, она ломает систему, поскольку сохраненный исходный материал теряется.

Есть ли способ отреагировать на этот сброс, сначала как-то поместив оригинальный материал обратно?

Спасибо!

Ответы [ 2 ]

0 голосов
/ 21 октября 2019

Если вы просто хотите, чтобы кнопка изменила материал на оригинальный, вы можете использовать атрибут контекстного меню:

using UnityEngine;

public class MaterialSwitcher : MonoBehaviour
{
    private Material _originalMaterial

    [ContextMenu("restore to original material")]
    void RestoreOriginalMaterial()
    {
        GetComponent<Renderer>().material = _originalMaterial
    }
}
0 голосов
/ 21 октября 2019

Вы можете определить собственный метод Reset () для вашего MonoBehaviour. Сброс в MonoBehaviour

Просто установите исходный материал этим методом.

...