Я пытаюсь установить FileSystemWatcher в единицу, где мне нужно изменить цвет объекта при обновлении файла.
В коде нет ошибки, но результат не действует. Я могу изменить цвет объекта, если я использовал void Start (). но мне нужно запускать код, только если изменения произошли в нужном месте.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.IO;
public class ObjColorScript : MonoBehaviour
{
public Color myColor;
public MeshRenderer myRenderer;
// Start is called before the first frame update
void Start()
{
string path = @"B:\";
MonitorDirectory(path);
///// New Added
var fileSystemWatcher = new FileSystemWatcher();
fileSystemWatcher.Path = @"B:\";
fileSystemWatcher.Changed += FileSystemWatcher_Changed;
fileSystemWatcher.EnableRaisingEvents = true;
}
///// New Added
void FileSystemWatcher_Changed(object sender, FileSystemEventArgs e)
{
myRenderer = GetComponent<MeshRenderer>();
myRenderer.material.color = Color.green;
}
// Update is called once per frame
void Update()
{
//myRenderer = GetComponent<MeshRenderer>();
//myRenderer.material.color = Color.green;
}
}