diff options
author | Robert Adams | 2012-08-07 17:15:06 -0700 |
---|---|---|
committer | Robert Adams | 2012-08-07 17:15:06 -0700 |
commit | 19417fca41e59e931193ee99d3e4a12092488f1f (patch) | |
tree | 55e2853fb2f55b04d6ebad151b9921220d417b84 /OpenSim/Region/Physics/BulletSPlugin/BSScene.cs | |
parent | Release http-in URLs when llResetScript is called (diff) | |
download | opensim-SC-19417fca41e59e931193ee99d3e4a12092488f1f.zip opensim-SC-19417fca41e59e931193ee99d3e4a12092488f1f.tar.gz opensim-SC-19417fca41e59e931193ee99d3e4a12092488f1f.tar.bz2 opensim-SC-19417fca41e59e931193ee99d3e4a12092488f1f.tar.xz |
BulletSim: Added avatar capsule scaling for size of avatar.
This also fixes computation of avatar mass.
Added parameter MaxPersistantManifoldPoolSize.
Fixed a parameter setting bug which caused crashes of there were
more than 400 or so physical objects. I tested up to 5000.
Updated BulletSim DLLs and SOs.
Diffstat (limited to 'OpenSim/Region/Physics/BulletSPlugin/BSScene.cs')
-rw-r--r-- | OpenSim/Region/Physics/BulletSPlugin/BSScene.cs | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/OpenSim/Region/Physics/BulletSPlugin/BSScene.cs b/OpenSim/Region/Physics/BulletSPlugin/BSScene.cs index 7151908..0e257b6 100644 --- a/OpenSim/Region/Physics/BulletSPlugin/BSScene.cs +++ b/OpenSim/Region/Physics/BulletSPlugin/BSScene.cs | |||
@@ -1027,14 +1027,19 @@ public class BSScene : PhysicsScene, IPhysicsParameters | |||
1027 | (s,p,l,v) => { s.UpdateParameterAvatars(ref s.m_params[0].avatarContactProcessingThreshold, p, l, v); } ), | 1027 | (s,p,l,v) => { s.UpdateParameterAvatars(ref s.m_params[0].avatarContactProcessingThreshold, p, l, v); } ), |
1028 | 1028 | ||
1029 | 1029 | ||
1030 | new ParameterDefn("MaxPersistantManifoldPoolSize", "Number of manifolds pooled (0 means default)", | 1030 | new ParameterDefn("MaxPersistantManifoldPoolSize", "Number of manifolds pooled (0 means default of 4096)", |
1031 | 0f, // zero to disable | 1031 | 0f, // zero to disable |
1032 | (s,cf,p,v) => { s.m_params[0].maxPersistantManifoldPoolSize = cf.GetFloat(p, v); }, | 1032 | (s,cf,p,v) => { s.m_params[0].maxPersistantManifoldPoolSize = cf.GetFloat(p, v); }, |
1033 | (s) => { return s.m_params[0].maxPersistantManifoldPoolSize; }, | 1033 | (s) => { return s.m_params[0].maxPersistantManifoldPoolSize; }, |
1034 | (s,p,l,v) => { s.m_params[0].maxPersistantManifoldPoolSize = v; } ), | 1034 | (s,p,l,v) => { s.m_params[0].maxPersistantManifoldPoolSize = v; } ), |
1035 | new ParameterDefn("MaxCollisionAlgorithmPoolSize", "Number of collisions pooled (0 means default of 4096)", | ||
1036 | 0f, // zero to disable | ||
1037 | (s,cf,p,v) => { s.m_params[0].maxCollisionAlgorithmPoolSize = cf.GetFloat(p, v); }, | ||
1038 | (s) => { return s.m_params[0].maxCollisionAlgorithmPoolSize; }, | ||
1039 | (s,p,l,v) => { s.m_params[0].maxCollisionAlgorithmPoolSize = v; } ), | ||
1035 | new ParameterDefn("ShouldDisableContactPoolDynamicAllocation", "Enable to allow large changes in object count", | 1040 | new ParameterDefn("ShouldDisableContactPoolDynamicAllocation", "Enable to allow large changes in object count", |
1036 | ConfigurationParameters.numericTrue, | 1041 | ConfigurationParameters.numericFalse, |
1037 | (s,cf,p,v) => { s.m_params[0].maxPersistantManifoldPoolSize = s.NumericBool(cf.GetBoolean(p, s.BoolNumeric(v))); }, | 1042 | (s,cf,p,v) => { s.m_params[0].shouldDisableContactPoolDynamicAllocation = s.NumericBool(cf.GetBoolean(p, s.BoolNumeric(v))); }, |
1038 | (s) => { return s.m_params[0].shouldDisableContactPoolDynamicAllocation; }, | 1043 | (s) => { return s.m_params[0].shouldDisableContactPoolDynamicAllocation; }, |
1039 | (s,p,l,v) => { s.m_params[0].shouldDisableContactPoolDynamicAllocation = v; } ), | 1044 | (s,p,l,v) => { s.m_params[0].shouldDisableContactPoolDynamicAllocation = v; } ), |
1040 | new ParameterDefn("ShouldForceUpdateAllAabbs", "Enable to recomputer AABBs every simulator step", | 1045 | new ParameterDefn("ShouldForceUpdateAllAabbs", "Enable to recomputer AABBs every simulator step", |