diff options
Diffstat (limited to 'OpenSim/Region/Physics')
-rw-r--r-- | OpenSim/Region/Physics/Meshing/Meshmerizer.cs | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/OpenSim/Region/Physics/Meshing/Meshmerizer.cs b/OpenSim/Region/Physics/Meshing/Meshmerizer.cs index 21f922f..6832507 100644 --- a/OpenSim/Region/Physics/Meshing/Meshmerizer.cs +++ b/OpenSim/Region/Physics/Meshing/Meshmerizer.cs | |||
@@ -71,6 +71,7 @@ namespace OpenSim.Region.Physics.Meshing | |||
71 | private const string baseDir = null; //"rawFiles"; | 71 | private const string baseDir = null; //"rawFiles"; |
72 | #endif | 72 | #endif |
73 | 73 | ||
74 | private bool cacheSculptMaps = false; | ||
74 | private string decodedScultMapPath = "j2kDecodeCache"; | 75 | private string decodedScultMapPath = "j2kDecodeCache"; |
75 | 76 | ||
76 | private float minSizeForComplexMesh = 0.2f; // prims with all dimensions smaller than this will have a bounding box mesh | 77 | private float minSizeForComplexMesh = 0.2f; // prims with all dimensions smaller than this will have a bounding box mesh |
@@ -186,7 +187,7 @@ namespace OpenSim.Region.Physics.Meshing | |||
186 | if (primShape.SculptData.Length == 0) | 187 | if (primShape.SculptData.Length == 0) |
187 | return null; | 188 | return null; |
188 | 189 | ||
189 | if (primShape.SculptTexture != null) | 190 | if (cacheSculptMaps && primShape.SculptTexture != null) |
190 | { | 191 | { |
191 | decodedSculptFileName = System.IO.Path.Combine(decodedScultMapPath, "smap_" + primShape.SculptTexture.ToString()); | 192 | decodedSculptFileName = System.IO.Path.Combine(decodedScultMapPath, "smap_" + primShape.SculptTexture.ToString()); |
192 | try | 193 | try |
@@ -199,7 +200,7 @@ namespace OpenSim.Region.Physics.Meshing | |||
199 | catch (Exception e) | 200 | catch (Exception e) |
200 | { | 201 | { |
201 | m_log.Error("[SCULPT]: unable to load cached sculpt map " + decodedSculptFileName + " " + e.Message); | 202 | m_log.Error("[SCULPT]: unable to load cached sculpt map " + decodedSculptFileName + " " + e.Message); |
202 | 203 | ||
203 | } | 204 | } |
204 | if (idata != null) | 205 | if (idata != null) |
205 | m_log.Debug("[SCULPT]: loaded cached map asset for map ID: " + primShape.SculptTexture.ToString()); | 206 | m_log.Debug("[SCULPT]: loaded cached map asset for map ID: " + primShape.SculptTexture.ToString()); |
@@ -212,9 +213,11 @@ namespace OpenSim.Region.Physics.Meshing | |||
212 | ManagedImage managedImage; // we never use this | 213 | ManagedImage managedImage; // we never use this |
213 | OpenJPEG.DecodeToImage(primShape.SculptData, out managedImage, out idata); | 214 | OpenJPEG.DecodeToImage(primShape.SculptData, out managedImage, out idata); |
214 | 215 | ||
215 | //if (File.Exists(System.IO.Path.GetDirectoryName(decodedScultMapPath))) | 216 | if (cacheSculptMaps) |
216 | try { idata.Save(decodedSculptFileName, ImageFormat.MemoryBmp); } | 217 | { |
217 | catch (Exception e) { m_log.Error("[SCULPT]: unable to cache sculpt map " + decodedSculptFileName + " " + e.Message); } | 218 | try { idata.Save(decodedSculptFileName, ImageFormat.MemoryBmp); } |
219 | catch (Exception e) { m_log.Error("[SCULPT]: unable to cache sculpt map " + decodedSculptFileName + " " + e.Message); } | ||
220 | } | ||
218 | } | 221 | } |
219 | catch (DllNotFoundException) | 222 | catch (DllNotFoundException) |
220 | { | 223 | { |