disable sculpt map caching until a better method of avoiding asset requests can be found
parent
9493de7f4e
commit
1609e7eac0
|
@ -2967,10 +2967,10 @@ namespace OpenSim.Region.Framework.Scenes
|
|||
{
|
||||
if (part.Shape.SculptEntry && part.Shape.SculptTexture != UUID.Zero)
|
||||
{
|
||||
// check if a previously decoded sculpt map has been cached
|
||||
if (File.Exists(System.IO.Path.Combine("j2kDecodeCache", "smap_" + part.Shape.SculptTexture.ToString())))
|
||||
part.SculptTextureCallback(part.Shape.SculptTexture, null);
|
||||
else
|
||||
//// check if a previously decoded sculpt map has been cached
|
||||
//if (File.Exists(System.IO.Path.Combine("j2kDecodeCache", "smap_" + part.Shape.SculptTexture.ToString())))
|
||||
// part.SculptTextureCallback(part.Shape.SculptTexture, null);
|
||||
//else
|
||||
m_scene.AssetService.Get(
|
||||
part.Shape.SculptTexture.ToString(), part, AssetReceived);
|
||||
}
|
||||
|
|
|
@ -2268,8 +2268,10 @@ if (m_shape != null) {
|
|||
{
|
||||
if (m_shape.SculptEntry)
|
||||
{
|
||||
{
|
||||
// commented out for sculpt map caching test - null could mean a cached sculpt map has been found
|
||||
if (texture != null)
|
||||
{
|
||||
//if (texture != null)
|
||||
m_shape.SculptData = texture.Data;
|
||||
|
||||
if (PhysActor != null)
|
||||
|
|
|
@ -71,6 +71,7 @@ namespace OpenSim.Region.Physics.Meshing
|
|||
private const string baseDir = null; //"rawFiles";
|
||||
#endif
|
||||
|
||||
private bool cacheSculptMaps = false;
|
||||
private string decodedScultMapPath = "j2kDecodeCache";
|
||||
|
||||
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
|
|||
if (primShape.SculptData.Length == 0)
|
||||
return null;
|
||||
|
||||
if (primShape.SculptTexture != null)
|
||||
if (cacheSculptMaps && primShape.SculptTexture != null)
|
||||
{
|
||||
decodedSculptFileName = System.IO.Path.Combine(decodedScultMapPath, "smap_" + primShape.SculptTexture.ToString());
|
||||
try
|
||||
|
@ -212,10 +213,12 @@ namespace OpenSim.Region.Physics.Meshing
|
|||
ManagedImage managedImage; // we never use this
|
||||
OpenJPEG.DecodeToImage(primShape.SculptData, out managedImage, out idata);
|
||||
|
||||
//if (File.Exists(System.IO.Path.GetDirectoryName(decodedScultMapPath)))
|
||||
if (cacheSculptMaps)
|
||||
{
|
||||
try { idata.Save(decodedSculptFileName, ImageFormat.MemoryBmp); }
|
||||
catch (Exception e) { m_log.Error("[SCULPT]: unable to cache sculpt map " + decodedSculptFileName + " " + e.Message); }
|
||||
}
|
||||
}
|
||||
catch (DllNotFoundException)
|
||||
{
|
||||
m_log.Error("[PHYSICS]: OpenJpeg is not installed correctly on this system. Physics Proxy generation failed. Often times this is because of an old version of GLIBC. You must have version 2.4 or above!");
|
||||
|
|
Loading…
Reference in New Issue