From 0d6e7cba4da935917d49f4b7bcfc9eaa55a4e43d Mon Sep 17 00:00:00 2001 From: Madpeterz <57852827+Madpeterz@users.noreply.github.com> Date: Tue, 16 Feb 2021 07:52:27 +0000 Subject: [PATCH] Update BakeLayer.cs --- LibreMetaverse/Imaging/BakeLayer.cs | 27 ++++++++++++++++++--------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/LibreMetaverse/Imaging/BakeLayer.cs b/LibreMetaverse/Imaging/BakeLayer.cs index a845b37..243c02c 100644 --- a/LibreMetaverse/Imaging/BakeLayer.cs +++ b/LibreMetaverse/Imaging/BakeLayer.cs @@ -30,7 +30,6 @@ using System.Collections.Generic; using System.IO; using System.Drawing; using OpenMetaverse.Assets; -using log4net; namespace OpenMetaverse.Imaging { @@ -329,9 +328,9 @@ namespace OpenMetaverse.Imaging DrawLayer(texture, false); } } - } - - // Apply any alpha wearable textures to make parts of the avatar disappear + } + + // Apply any alpha wearable textures to make parts of the avatar disappear Logger.Log("[XBakes]: Number of alpha wearable textures: " + alphaWearableTextures.Count.ToString(), Helpers.LogLevel.Debug); foreach (ManagedImage img in alphaWearableTextures) AddAlpha(bakedTexture.Image, img); @@ -462,6 +461,8 @@ namespace OpenMetaverse.Imaging { for (int x = 0; x < bakeWidth; x++) { + alpha = 0; + alphaInv = 0; if (sourceHasAlpha) { if (sourceAlpha.Length > i) @@ -486,14 +487,22 @@ namespace OpenMetaverse.Imaging if (addSourceAlpha) { - if (sourceAlpha[i] < bakedAlpha[i]) - { - bakedAlpha[i] = sourceAlpha[i]; + if ((sourceAlpha.Length > i) && (bakedAlpha.Length > i)) + { + if (sourceAlpha[i] < bakedAlpha[i]) + { + bakedAlpha[i] = sourceAlpha[i]; + } } } - if (sourceHasBump) - bakedBump[i] = sourceBump[i]; + if (sourceHasBump) + { + if (sourceBump.Length > i) + { + bakedBump[i] = sourceBump[i]; + } + } ++i; }