diff options
author | Robert Adams | 2013-02-05 16:51:02 -0800 |
---|---|---|
committer | Robert Adams | 2013-02-05 16:56:33 -0800 |
commit | dce9e323f4f0fdccd2f34266e870de9cbcebd2f0 (patch) | |
tree | e8e5e245d6b2e18b709e297b60875c16f7a78225 /OpenSim/Region/Physics/BulletSPlugin/BSParam.cs | |
parent | BulletSim: add debugging looking for doorway sculpty problems (diff) | |
download | opensim-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-x | OpenSim/Region/Physics/BulletSPlugin/BSParam.cs | 18 |
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); }, |