aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/BulletSPlugin/BSCharacter.cs
diff options
context:
space:
mode:
authorJustin Clark-Casey (justincc)2014-11-20 21:28:12 +0000
committerJustin Clark-Casey (justincc)2014-11-25 23:23:11 +0000
commit124be38f745b884fac5dbdb6ef963387235f6108 (patch)
treebe6cb021609e02330fb4477fd819522481066ae4 /OpenSim/Region/Physics/BulletSPlugin/BSCharacter.cs
parentFix compile error from previous 1d56029848e96016b5809f596619e32d0ebcc995 (diff)
downloadopensim-SC_OLD-124be38f745b884fac5dbdb6ef963387235f6108.zip
opensim-SC_OLD-124be38f745b884fac5dbdb6ef963387235f6108.tar.gz
opensim-SC_OLD-124be38f745b884fac5dbdb6ef963387235f6108.tar.bz2
opensim-SC_OLD-124be38f745b884fac5dbdb6ef963387235f6108.tar.xz
Add [BulletSim] option AvatarToAvatarCollisionsByDefault to control whether avatars collide. This is true by default.
This is implemented with a new collision type (PhantomToOthersAvatar) to potentially allow colliding and non-colliding avatars to be present in the same scene. So there is no provision yet for giving avatars different collision types. This commit replaces the temporary change in commit f3eaa6d8 where avatars would never collide when using BulletSim This is equivalent to the av_av_collisions_off option in ODE.
Diffstat (limited to '')
-rw-r--r--OpenSim/Region/Physics/BulletSPlugin/BSCharacter.cs8
1 files changed, 6 insertions, 2 deletions
diff --git a/OpenSim/Region/Physics/BulletSPlugin/BSCharacter.cs b/OpenSim/Region/Physics/BulletSPlugin/BSCharacter.cs
index a303972..4c54f9f 100644
--- a/OpenSim/Region/Physics/BulletSPlugin/BSCharacter.cs
+++ b/OpenSim/Region/Physics/BulletSPlugin/BSCharacter.cs
@@ -174,15 +174,19 @@ public sealed class BSCharacter : BSPhysObject
174 PhysScene.PE.UpdateSingleAabb(PhysScene.World, PhysBody); 174 PhysScene.PE.UpdateSingleAabb(PhysScene.World, PhysBody);
175 175
176 // Do this after the object has been added to the world 176 // Do this after the object has been added to the world
177 PhysBody.collisionType = CollisionType.Avatar; 177 if (BSParam.AvatarToAvatarCollisionsByDefault)
178 PhysBody.collisionType = CollisionType.Avatar;
179 else
180 PhysBody.collisionType = CollisionType.PhantomToOthersAvatar;
181
178 PhysBody.ApplyCollisionMask(PhysScene); 182 PhysBody.ApplyCollisionMask(PhysScene);
179 } 183 }
180 184
181
182 public override void RequestPhysicsterseUpdate() 185 public override void RequestPhysicsterseUpdate()
183 { 186 {
184 base.RequestPhysicsterseUpdate(); 187 base.RequestPhysicsterseUpdate();
185 } 188 }
189
186 // No one calls this method so I don't know what it could possibly mean 190 // No one calls this method so I don't know what it could possibly mean
187 public override bool Stopped { get { return false; } } 191 public override bool Stopped { get { return false; } }
188 192