diff options
author | Robert Adams | 2013-04-01 11:10:05 -0700 |
---|---|---|
committer | Robert Adams | 2013-04-01 18:03:11 -0700 |
commit | 17aef1c883aa81edba9a272e0a6897ad9a3a3983 (patch) | |
tree | a95cf076a3d62a64a8d4e8d4998b8af638e77e3a /OpenSim/Region/Physics/BulletSPlugin/BSApiTemplate.cs | |
parent | BulletSim: rearrange mega-region terrain code to make the thread flow (diff) | |
download | opensim-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.cs | 17 |
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)] | ||
196 | public 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 |
196 | public enum ActivationState : uint | 211 | public enum ActivationState : uint |
@@ -308,7 +323,7 @@ public abstract BulletShape CreateMeshShape(BulletWorld world, | |||
308 | public abstract BulletShape CreateHullShape(BulletWorld world, | 323 | public abstract BulletShape CreateHullShape(BulletWorld world, |
309 | int hullCount, float[] hulls); | 324 | int hullCount, float[] hulls); |
310 | 325 | ||
311 | public abstract BulletShape BuildHullShapeFromMesh(BulletWorld world, BulletShape meshShape); | 326 | public abstract BulletShape BuildHullShapeFromMesh(BulletWorld world, BulletShape meshShape, HACDParams parms); |
312 | 327 | ||
313 | public abstract BulletShape BuildNativeShape(BulletWorld world, ShapeData shapeData); | 328 | public abstract BulletShape BuildNativeShape(BulletWorld world, ShapeData shapeData); |
314 | 329 | ||