aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/BulletSPlugin/BSApiTemplate.cs
diff options
context:
space:
mode:
authorRobert Adams2013-04-01 11:10:05 -0700
committerRobert Adams2013-04-01 18:03:11 -0700
commit17aef1c883aa81edba9a272e0a6897ad9a3a3983 (patch)
treea95cf076a3d62a64a8d4e8d4998b8af638e77e3a /OpenSim/Region/Physics/BulletSPlugin/BSApiTemplate.cs
parentBulletSim: rearrange mega-region terrain code to make the thread flow (diff)
downloadopensim-SC-17aef1c883aa81edba9a272e0a6897ad9a3a3983.zip
opensim-SC-17aef1c883aa81edba9a272e0a6897ad9a3a3983.tar.gz
opensim-SC-17aef1c883aa81edba9a272e0a6897ad9a3a3983.tar.bz2
opensim-SC-17aef1c883aa81edba9a272e0a6897ad9a3a3983.tar.xz
BulletSim: update unmanaged API for HACD parameter passing. Bullet HACD
mesh to hull conversion calls in place but code not working. Update BulletSim DLLs and SOs for new API and HACD code.
Diffstat (limited to 'OpenSim/Region/Physics/BulletSPlugin/BSApiTemplate.cs')
-rw-r--r--OpenSim/Region/Physics/BulletSPlugin/BSApiTemplate.cs17
1 files changed, 16 insertions, 1 deletions
diff --git a/OpenSim/Region/Physics/BulletSPlugin/BSApiTemplate.cs b/OpenSim/Region/Physics/BulletSPlugin/BSApiTemplate.cs
index 5765b0d..d0d9f34 100644
--- a/OpenSim/Region/Physics/BulletSPlugin/BSApiTemplate.cs
+++ b/OpenSim/Region/Physics/BulletSPlugin/BSApiTemplate.cs
@@ -191,6 +191,21 @@ public struct ConfigurationParameters
191 public const float numericFalse = 0f; 191 public const float numericFalse = 0f;
192} 192}
193 193
194// Parameters passed for the conversion of a mesh to a hull using Bullet's HACD library.
195[StructLayout(LayoutKind.Sequential)]
196public struct HACDParams
197{
198 // usual default values
199 public float maxVerticesPerHull; // 100
200 public float minClusters; // 2
201 public float compacityWeight; // 0.1
202 public float volumeWeight; // 0.0
203 public float concavity; // 100
204 public float addExtraDistPoints; // false
205 public float addNeighboursDistPoints; // false
206 public float addFacesPoints; // false
207 public float shouldAdjustCollisionMargin; // false
208}
194 209
195// The states a bullet collision object can have 210// The states a bullet collision object can have
196public enum ActivationState : uint 211public enum ActivationState : uint
@@ -308,7 +323,7 @@ public abstract BulletShape CreateMeshShape(BulletWorld world,
308public abstract BulletShape CreateHullShape(BulletWorld world, 323public abstract BulletShape CreateHullShape(BulletWorld world,
309 int hullCount, float[] hulls); 324 int hullCount, float[] hulls);
310 325
311public abstract BulletShape BuildHullShapeFromMesh(BulletWorld world, BulletShape meshShape); 326public abstract BulletShape BuildHullShapeFromMesh(BulletWorld world, BulletShape meshShape, HACDParams parms);
312 327
313public abstract BulletShape BuildNativeShape(BulletWorld world, ShapeData shapeData); 328public abstract BulletShape BuildNativeShape(BulletWorld world, ShapeData shapeData);
314 329