public Texture2DOverrideData(Texture2D originalTexture2D, string texturepath, Texture2D overrideTexture2D) { if (texturepath != null) { this.texturepath = texturepath; } else { this.texturepath = string.Empty; } if (originalTexture2D != null) { this.instanceID = originalTexture2D.GetInstanceID(); this.originalname = originalTexture2D.name; } else { this.instanceID = 0; this.originalname = string.Empty; } this.originalTexture2D = originalTexture2D; if (overrideTexture2D != null) { this.overrideID = overrideTexture2D.GetInstanceID(); } else { this.overrideID = 0; } this.overrideTexture2D = overrideTexture2D; this.cacheID = 0; this.overrideTextureCache = null; }
protected void Swap(ref Texture value) { if (base.GetType() == typeof(Material)) { try { if (value == null) { if (this.overrideData.OriginalTexture2D != null) { Texture2DOverride.UnloadTexture2D(ref this.overrideData); } } else { Texture2D textured = value as Texture2D; if (textured != null) { if (this.overrideData.OriginalTexture2D != null) { int instanceID = textured.GetInstanceID(); if ((this.overrideData.InstanceID == instanceID) || (this.overrideData.OverrideID == instanceID)) { value = this.overrideData.OverrideTexture2D; return; } Texture2DOverride.UnloadTexture2D(ref this.overrideData); } Texture2DOverride.LoadTexture2D(((Material)this).name, textured, out this.overrideData); if (this.overrideData.OverrideTexture2D != null) { value = this.overrideData.OverrideTexture2D; } } } } catch (Exception exception) { IniSettings.Error("MaterialOverride:\n" + exception.ToString()); } } }
private void SetOurOverrideTexture(ref U::UnityEngine.Texture value) { if (base.GetType() == typeof(RawImage)) { try { if (value == null) { if (this.overrideData.OriginalTexture2D != null) { Texture2DOverride.UnloadTexture2D(ref this.overrideData); } } else { U::UnityEngine.Texture2D textured = value as U::UnityEngine.Texture2D; if (textured != null) { if (this.overrideData.OriginalTexture2D != null) { int instanceID = textured.GetInstanceID(); if ((this.overrideData.InstanceID == instanceID) || (this.overrideData.OverrideID == instanceID)) { value = this.overrideData.OverrideTexture2D; return; } Texture2DOverride.UnloadTexture2D(ref this.overrideData); } Texture2DOverride.LoadTexture2D(((RawImage)this).name, textured, out this.overrideData); if (this.overrideData.OverrideTexture2D != null) { value = this.overrideData.OverrideTexture2D; } } } } catch (Exception exception) { IniSettings.Error("RawImageOverride:\n" + exception.ToString()); } } }
protected static void Swap(ref Texture2D texture) { try { if (texture == null) { if (overrideData.OriginalTexture2D != null) { Texture2DOverride.UnloadTexture2D(ref overrideData); } } else { if (overrideData.OriginalTexture2D != null) { int instanceID = texture.GetInstanceID(); if (overrideData.InstanceID == instanceID) { texture = overrideData.OverrideTextureCache; return; } Texture2DOverride.UnloadTexture2D(ref overrideData); } Texture2DOverride.LoadTexture2D(texture.name, texture, out overrideData); if (overrideData.OverrideTexture2D != null) { if ((texture.width != overrideData.OverrideTexture2D.width) || (texture.height != overrideData.OverrideTexture2D.height)) { texture.Resize(overrideData.OverrideTexture2D.width, overrideData.OverrideTexture2D.height); } texture.SetPixels32(overrideData.OverrideTexture2D.GetPixels32()); texture.Apply(); overrideData.OverrideTextureCache = texture; } } } catch (Exception exception) { IniSettings.Error("CursorOverride:\n" + exception.ToString()); } }