diff options
author | Melanie | 2013-01-23 21:03:24 +0000 |
---|---|---|
committer | Melanie | 2013-01-23 21:03:24 +0000 |
commit | c1795ed399c187ba739bc271c6837e26b9bfdf3d (patch) | |
tree | 07b8c0a82aaba88d79766bbb610b525449077e3b /OpenSim/Region/Physics/Manager/PhysicsScene.cs | |
parent | Remove the return value from llGiveMoney and add llTransferLindenDollars. Also (diff) | |
download | opensim-SC_OLD-c1795ed399c187ba739bc271c6837e26b9bfdf3d.zip opensim-SC_OLD-c1795ed399c187ba739bc271c6837e26b9bfdf3d.tar.gz opensim-SC_OLD-c1795ed399c187ba739bc271c6837e26b9bfdf3d.tar.bz2 opensim-SC_OLD-c1795ed399c187ba739bc271c6837e26b9bfdf3d.tar.xz |
Add the Avination physics raycast glue so Core Physics can implement raycast
Diffstat (limited to 'OpenSim/Region/Physics/Manager/PhysicsScene.cs')
-rw-r--r-- | OpenSim/Region/Physics/Manager/PhysicsScene.cs | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/OpenSim/Region/Physics/Manager/PhysicsScene.cs b/OpenSim/Region/Physics/Manager/PhysicsScene.cs index 201007b..96a9ff7 100644 --- a/OpenSim/Region/Physics/Manager/PhysicsScene.cs +++ b/OpenSim/Region/Physics/Manager/PhysicsScene.cs | |||
@@ -43,6 +43,35 @@ namespace OpenSim.Region.Physics.Manager | |||
43 | public delegate void JointDeactivated(PhysicsJoint joint); | 43 | public delegate void JointDeactivated(PhysicsJoint joint); |
44 | public delegate void JointErrorMessage(PhysicsJoint joint, string message); // this refers to an "error message due to a problem", not "amount of joint constraint violation" | 44 | public delegate void JointErrorMessage(PhysicsJoint joint, string message); // this refers to an "error message due to a problem", not "amount of joint constraint violation" |
45 | 45 | ||
46 | public enum RayFilterFlags:ushort | ||
47 | { | ||
48 | // the flags | ||
49 | water = 0x01, | ||
50 | land = 0x02, | ||
51 | agent = 0x04, | ||
52 | nonphysical = 0x08, | ||
53 | physical = 0x10, | ||
54 | phantom = 0x20, | ||
55 | volumedtc = 0x40, | ||
56 | |||
57 | // ray cast colision control (may only work for meshs) | ||
58 | ContactsUnImportant = 0x2000, | ||
59 | BackFaceCull = 0x4000, | ||
60 | ClosestHit = 0x8000, | ||
61 | |||
62 | // some combinations | ||
63 | LSLPhanton = phantom | volumedtc, | ||
64 | PrimsNonPhantom = nonphysical | physical, | ||
65 | PrimsNonPhantomAgents = nonphysical | physical | agent, | ||
66 | |||
67 | AllPrims = nonphysical | phantom | volumedtc | physical, | ||
68 | AllButLand = agent | nonphysical | physical | phantom | volumedtc, | ||
69 | |||
70 | ClosestAndBackCull = ClosestHit | BackFaceCull, | ||
71 | |||
72 | All = 0x3f | ||
73 | } | ||
74 | |||
46 | public delegate void RequestAssetDelegate(UUID assetID, AssetReceivedDelegate callback); | 75 | public delegate void RequestAssetDelegate(UUID assetID, AssetReceivedDelegate callback); |
47 | public delegate void AssetReceivedDelegate(AssetBase asset); | 76 | public delegate void AssetReceivedDelegate(AssetBase asset); |
48 | 77 | ||
@@ -286,5 +315,15 @@ namespace OpenSim.Region.Physics.Manager | |||
286 | { | 315 | { |
287 | return new List<ContactResult>(); | 316 | return new List<ContactResult>(); |
288 | } | 317 | } |
318 | |||
319 | public virtual object RaycastWorld(Vector3 position, Vector3 direction, float length, int Count, RayFilterFlags filter) | ||
320 | { | ||
321 | return null; | ||
322 | } | ||
323 | |||
324 | public virtual bool SupportsRaycastWorldFiltered() | ||
325 | { | ||
326 | return false; | ||
327 | } | ||
289 | } | 328 | } |
290 | } | 329 | } |