aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/BulletSPlugin/BSParam.cs
diff options
context:
space:
mode:
authorRobert Adams2013-02-05 16:51:02 -0800
committerRobert Adams2013-02-05 16:56:33 -0800
commitdce9e323f4f0fdccd2f34266e870de9cbcebd2f0 (patch)
treee8e5e245d6b2e18b709e297b60875c16f7a78225 /OpenSim/Region/Physics/BulletSPlugin/BSParam.cs
parentBulletSim: add debugging looking for doorway sculpty problems (diff)
downloadopensim-SC_OLD-dce9e323f4f0fdccd2f34266e870de9cbcebd2f0.zip
opensim-SC_OLD-dce9e323f4f0fdccd2f34266e870de9cbcebd2f0.tar.gz
opensim-SC_OLD-dce9e323f4f0fdccd2f34266e870de9cbcebd2f0.tar.bz2
opensim-SC_OLD-dce9e323f4f0fdccd2f34266e870de9cbcebd2f0.tar.xz
BulletSim: remove degenerate triangles from meshes. This fixes the
invisible barriers in sculptie doorways (Mantis 6529). Bump up level-of-detail for physical meshes to 32 (the max). This fixes the invisible barriers that showed up in prim cut arches. NOTE: the default LOD values are removed from OpenSimDefaults.ini. If you don't change your OpenSimDefaults.ini, you will continue to see the arch problem.
Diffstat (limited to 'OpenSim/Region/Physics/BulletSPlugin/BSParam.cs')
-rwxr-xr-xOpenSim/Region/Physics/BulletSPlugin/BSParam.cs18
1 files changed, 12 insertions, 6 deletions
diff --git a/OpenSim/Region/Physics/BulletSPlugin/BSParam.cs b/OpenSim/Region/Physics/BulletSPlugin/BSParam.cs
index fbef7e7..bdd9ce4 100755
--- a/OpenSim/Region/Physics/BulletSPlugin/BSParam.cs
+++ b/OpenSim/Region/Physics/BulletSPlugin/BSParam.cs
@@ -39,6 +39,7 @@ public static class BSParam
39{ 39{
40 // Level of Detail values kept as float because that's what the Meshmerizer wants 40 // Level of Detail values kept as float because that's what the Meshmerizer wants
41 public static float MeshLOD { get; private set; } 41 public static float MeshLOD { get; private set; }
42 public static float MeshCircularLOD { get; private set; }
42 public static float MeshMegaPrimLOD { get; private set; } 43 public static float MeshMegaPrimLOD { get; private set; }
43 public static float MeshMegaPrimThreshold { get; private set; } 44 public static float MeshMegaPrimThreshold { get; private set; }
44 public static float SculptLOD { get; private set; } 45 public static float SculptLOD { get; private set; }
@@ -219,20 +220,25 @@ public static class BSParam
219 (s,p,l,v) => { ShouldUseHullsForPhysicalObjects = BSParam.BoolNumeric(v); } ), 220 (s,p,l,v) => { ShouldUseHullsForPhysicalObjects = BSParam.BoolNumeric(v); } ),
220 221
221 new ParameterDefn("MeshLevelOfDetail", "Level of detail to render meshes (32, 16, 8 or 4. 32=most detailed)", 222 new ParameterDefn("MeshLevelOfDetail", "Level of detail to render meshes (32, 16, 8 or 4. 32=most detailed)",
222 8f, 223 32f,
223 (s,cf,p,v) => { MeshLOD = (float)cf.GetInt(p, (int)v); }, 224 (s,cf,p,v) => { MeshLOD = (float)cf.GetInt(p, (int)v); },
224 (s) => { return MeshLOD; }, 225 (s) => { return MeshLOD; },
225 (s,p,l,v) => { MeshLOD = v; } ), 226 (s,p,l,v) => { MeshLOD = v; } ),
226 new ParameterDefn("MeshLevelOfDetailMegaPrim", "Level of detail to render meshes larger than threshold meters", 227 new ParameterDefn("MeshLevelOfDetailCircular", "Level of detail for prims with circular cuts or shapes",
227 16f, 228 32f,
228 (s,cf,p,v) => { MeshMegaPrimLOD = (float)cf.GetInt(p, (int)v); }, 229 (s,cf,p,v) => { MeshCircularLOD = (float)cf.GetInt(p, (int)v); },
229 (s) => { return MeshMegaPrimLOD; }, 230 (s) => { return MeshCircularLOD; },
230 (s,p,l,v) => { MeshMegaPrimLOD = v; } ), 231 (s,p,l,v) => { MeshCircularLOD = v; } ),
231 new ParameterDefn("MeshLevelOfDetailMegaPrimThreshold", "Size (in meters) of a mesh before using MeshMegaPrimLOD", 232 new ParameterDefn("MeshLevelOfDetailMegaPrimThreshold", "Size (in meters) of a mesh before using MeshMegaPrimLOD",
232 10f, 233 10f,
233 (s,cf,p,v) => { MeshMegaPrimThreshold = (float)cf.GetInt(p, (int)v); }, 234 (s,cf,p,v) => { MeshMegaPrimThreshold = (float)cf.GetInt(p, (int)v); },
234 (s) => { return MeshMegaPrimThreshold; }, 235 (s) => { return MeshMegaPrimThreshold; },
235 (s,p,l,v) => { MeshMegaPrimThreshold = v; } ), 236 (s,p,l,v) => { MeshMegaPrimThreshold = v; } ),
237 new ParameterDefn("MeshLevelOfDetailMegaPrim", "Level of detail to render meshes larger than threshold meters",
238 32f,
239 (s,cf,p,v) => { MeshMegaPrimLOD = (float)cf.GetInt(p, (int)v); },
240 (s) => { return MeshMegaPrimLOD; },
241 (s,p,l,v) => { MeshMegaPrimLOD = v; } ),
236 new ParameterDefn("SculptLevelOfDetail", "Level of detail to render sculpties (32, 16, 8 or 4. 32=most detailed)", 242 new ParameterDefn("SculptLevelOfDetail", "Level of detail to render sculpties (32, 16, 8 or 4. 32=most detailed)",
237 32f, 243 32f,
238 (s,cf,p,v) => { SculptLOD = (float)cf.GetInt(p, (int)v); }, 244 (s,cf,p,v) => { SculptLOD = (float)cf.GetInt(p, (int)v); },