diff --git a/Assets/uDesktopDuplication/Scripts/Texture.cs b/Assets/uDesktopDuplication/Scripts/Texture.cs index 7860bec..498a3fe 100644 --- a/Assets/uDesktopDuplication/Scripts/Texture.cs +++ b/Assets/uDesktopDuplication/Scripts/Texture.cs @@ -116,11 +116,12 @@ public class Texture : MonoBehaviour if (monitor == null) { monitor = Manager.primary; } + Manager.onReinitialized += Reinitialize; } void OnDisable() { - Destroy(material); + Manager.onReinitialized -= Reinitialize; } void Update() @@ -129,6 +130,12 @@ public class Texture : MonoBehaviour UpdateMaterial(); } + void Reinitialize() + { + // Monitor instance is released here when initialized. + monitor = Manager.GetMonitor(monitor.id); + } + void UpdateMaterial() { Invert();