aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/Meshing/Meshmerizer.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Physics/Meshing/Meshmerizer.cs')
-rw-r--r--OpenSim/Region/Physics/Meshing/Meshmerizer.cs10
1 files changed, 10 insertions, 0 deletions
diff --git a/OpenSim/Region/Physics/Meshing/Meshmerizer.cs b/OpenSim/Region/Physics/Meshing/Meshmerizer.cs
index be4ee41..38b9112 100644
--- a/OpenSim/Region/Physics/Meshing/Meshmerizer.cs
+++ b/OpenSim/Region/Physics/Meshing/Meshmerizer.cs
@@ -366,6 +366,8 @@ namespace OpenSim.Region.Physics.Meshing
366 // physics_shape is an array of OSDMaps, one for each submesh 366 // physics_shape is an array of OSDMaps, one for each submesh
367 if (decodedMeshOsd is OSDArray) 367 if (decodedMeshOsd is OSDArray)
368 { 368 {
369// Console.WriteLine("decodedMeshOsd for {0} - {1}", primName, Util.GetFormattedXml(decodedMeshOsd));
370
369 decodedMeshOsdArray = (OSDArray)decodedMeshOsd; 371 decodedMeshOsdArray = (OSDArray)decodedMeshOsd;
370 foreach (OSD subMeshOsd in decodedMeshOsdArray) 372 foreach (OSD subMeshOsd in decodedMeshOsdArray)
371 { 373 {
@@ -373,6 +375,14 @@ namespace OpenSim.Region.Physics.Meshing
373 { 375 {
374 OSDMap subMeshMap = (OSDMap)subMeshOsd; 376 OSDMap subMeshMap = (OSDMap)subMeshOsd;
375 377
378// Console.WriteLine("subMeshMap for {0} - {1}", primName, Util.GetFormattedXml((OSD)subMeshMap));
379
380 // As per http://wiki.secondlife.com/wiki/Mesh/Mesh_Asset_Format, some Mesh Level
381 // of Detail Blocks (maps) contain just a NoGeometry key to signal there is no
382 // geometry for this submesh.
383 if (subMeshMap.ContainsKey("NoGeometry") && ((OSDBoolean)subMeshMap["NoGeometry"]))
384 continue;
385
376 OpenMetaverse.Vector3 posMax = ((OSDMap)subMeshMap["PositionDomain"])["Max"].AsVector3(); 386 OpenMetaverse.Vector3 posMax = ((OSDMap)subMeshMap["PositionDomain"])["Max"].AsVector3();
377 OpenMetaverse.Vector3 posMin = ((OSDMap)subMeshMap["PositionDomain"])["Min"].AsVector3(); 387 OpenMetaverse.Vector3 posMin = ((OSDMap)subMeshMap["PositionDomain"])["Min"].AsVector3();
378 ushort faceIndexOffset = (ushort)coords.Count; 388 ushort faceIndexOffset = (ushort)coords.Count;